{"title":"Lato","description":null,"products":[{"product_id":"womens-lightweight-polka-dot-jacket-with-adjustable-fit-viviana","title":"Lekka damska kurtka w kropki z regulacją dopasowania | Viviana","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eVivianę\u003c\/strong\u003e, lekką kurtkę w kropki z możliwością regulacji dopasowania od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eWysoki kołnierz lub stójka\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eSwobodny krój\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eWzór w kropki\u003c\/li\u003e\n\n\u003cli\u003eRegulowany sznurek ściągający\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz ją z prostym golfem i spodniami z prostymi nogawkami. Aby uzyskać bardziej elegancki wygląd, wybierz sukienkę midi, botki i prostą torebkę.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-lightweight-polka-dot-jacket-with-adjustable-fit-viviana\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\"],\"colors\":[\"White\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar startowy na podstawie wzrostu i wagi. To szacunek, a nie gwarancja dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu oraz własnego, typowego dopasowania jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Biały \/ XS","offer_id":55371613307217,"sku":"MS-9682-WOM-WHI","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371613339985,"sku":"MS-4663-WOM-WHI","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371613372753,"sku":"MS-8055-WOM-WHI","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371613405521,"sku":"MS-3393-WOM-WHI","price":64.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/white-front_1482acbf-fad9-469c-91a2-58a29c3fca84.png?v=1792459641"},{"product_id":"womens-leopard-print-button-front-knit-vest-rosa","title":"Damski dzianinowy kamizelka z guzikami z przodu i panterką | Rosa","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eRosę\u003c\/strong\u003e, dzianinowy kamizelkę z guzikami z przodu i panterką od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eModel bez rękawów\u003c\/li\u003e\n\n\u003cli\u003ePanterka\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw ją z elegancką koszulą i spodniami z wysokim stanem. Na bardziej swobodny dzień wybierz top z długim rękawem.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i krój\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz nosić pod spodem.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-leopard-print-button-front-knit-vest-rosa\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\"],\"colors\":[\"Animal Print\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eSprawdź szacunkowy rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eSprawdź orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. Jest to tylko szacunek, a nie gwarancja dopasowania. Sylwetka, warstwy i krój ubrania mogą wpłynąć na wybór najlepszego rozmiaru.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eWzór rozmiary\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz wzór\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiary damskie\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiary męskie\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary obecnie dostępne do zakupu. Twoje dane pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL. Jeśli wyszukiwarka rozmiarów jest niedostępna, skorzystaj z powyższych informacji o ubraniu i swoim zazwyczaj noszonym kroju jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Wzór zwierzęcy \/ S","offer_id":55371614323025,"sku":"MS-0859-LEO-ANI","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Wzór zwierzęcy \/ M","offer_id":55371614355793,"sku":"MS-2351-LEO-ANI","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Wzór zwierzęcy \/ L","offer_id":55371614388561,"sku":"MS-0321-LEO-ANI","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Wzór zwierzęcy \/ XL","offer_id":55371614421329,"sku":"MS-3092-LEO-ANI","price":64.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/Women_sVestCardiganPanther_1_137507df-abbd-44a0-bdde-546cf0cb045b.png?v=1792459647"},{"product_id":"womens-tailored-single-button-blazer-livia","title":"Damski dopasowany żakiet zapinany na jedną zapórkę | Livia","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eLivie\u003c\/strong\u003e, dopasowany żakiet z jednym guzikiem od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na jeden guzik\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż go na cienki golf lub klasyczną koszulę. Proste spodnie i mała torebka dopełnią stylizacji.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i krój\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz nosić pod spodem.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-tailored-single-button-blazer-livia\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Gray\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eSprawdź szacowany rozmiar na podstawie swojego wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eSprawdź orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to tylko szacunek, a nie gwarancja dopasowania. Budowa ciała, warstwy i krój ubrania mogą wpłynąć na wybór najlepszego rozmiaru.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eReferencja rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz referencję\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiar damski\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiar męski\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary obecnie dostępne do zakupu. Twoje dane pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL, 2XL. Jeśli kalkulator rozmiarów jest niedostępny, skorzystaj z powyższych informacji o ubraniu i swojego zazwyczaj noszonego kroju jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Szary \/ S","offer_id":55371615174993,"sku":"MS-8131-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371615207761,"sku":"MS-7578-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371615240529,"sku":"MS-4324-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371615273297,"sku":"MS-5932-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371615306065,"sku":"MS-7031-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/Blazer_front.png?v=1792459653"},{"product_id":"womens-long-tailored-office-blazer-daniela","title":"Damska długa taliowana marynarka biurowa | Daniela","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eDanielę\u003c\/strong\u003e, długi, taliowany żakiet biurowy od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eDłuższy fason żakietu\u003c\/li\u003e\n\n\u003cli\u003eTaliowany krój\u003c\/li\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\n\u003cli\u003eMinimalistyczne wykończenie\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go z dopasowanym topem i spodniami z szerokimi nogawkami. W luźniejszym wydaniu połącz go z dżinsami i prostymi sneakersami.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-long-tailored-office-blazer-daniela\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\"],\"colors\":[\"Off-White\",\"Black\",\"Gray\",\"Burgundy\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOkreśl rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj wstępną propozycję rozmiaru na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczny dobór.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eNarzędzie korzysta tylko z rozmiarów aktualnie dostępnych w sprzedaży. Twoje dane pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: XS, S, M, L. Jeśli kalkulator nie działa, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Off-White \/ XS","offer_id":55371626873169,"sku":"MS-4956-WOM-OFF","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Off-White \/ S","offer_id":55371626905937,"sku":"MS-8720-WOM-OFF","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Off-White \/ M","offer_id":55371626938705,"sku":"MS-6161-WOM-OFF","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Off-White \/ L","offer_id":55371626971473,"sku":"MS-9952-WOM-OFF","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XS","offer_id":55371627004241,"sku":"MS-6647-WOM-BLA","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371627037009,"sku":"MS-2078-WOM-BLA","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371627069777,"sku":"MS-5620-WOM-BLA","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371627102545,"sku":"MS-9525-WOM-BLA","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XS","offer_id":55371627135313,"sku":"MS-4890-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ S","offer_id":55371627168081,"sku":"MS-9765-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371627200849,"sku":"MS-9992-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371627233617,"sku":"MS-3241-WOM-GRE","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XS","offer_id":55371627266385,"sku":"MS-6445-WOM-BUR","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ S","offer_id":55371627299153,"sku":"MS-5369-WOM-BUR","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ M","offer_id":55371627331921,"sku":"MS-1324-WOM-BUR","price":79.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ L","offer_id":55371627364689,"sku":"MS-8438-WOM-BUR","price":79.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/off-white-front_7ce3d440-d821-432c-a3ab-4ac84ea4085e.png?v=1792459698"},{"product_id":"womens-cable-knit-v-neck-sweater-vest-georgia","title":"Damski sweter bez rękawów o splocie warkoczowym z dekoltem w serek | Georgia","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eGeorgię\u003c\/strong\u003e, dzianinową kamizelkę swetrową z dekoltem w serek od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eDzianinowa konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eSwobodny krój\u003c\/li\u003e\n\n\u003cli\u003eFason bez rękawów\u003c\/li\u003e\n\n\u003cli\u003eDekolt w serek\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż ją na gładki golf lub koszulę. Dobierz spodnie z prostymi nogawkami i odpowiednie do okazji obuwie, aby stworzyć codzienną stylizację.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i krój\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać ręcznie w niskiej temperaturze. Nie suszyć w suszarce bębnowej. Suszyć na płasko, nadając pierwotny kształt. Zawsze postępuj zgodnie z metką pielęgnacyjną.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-cable-knit-v-neck-sweater-vest-georgia\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\"],\"colors\":[],\"size_index\":0,\"color_index\":null,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj swój rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na to, co będzie najlepiej pasować.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (ft)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (in)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (lb)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eDotyczy tylko rozmiarów aktualnie dostępnych w sprzedaży. Twoje pomiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L, XL. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu oraz rozmiaru, który zwykle nosisz, jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"XS","offer_id":55371635523921,"sku":"AR-GEORGIA-TAN-XS","price":59.99,"currency_code":"USD","in_stock":true},{"title":"S","offer_id":55371635556689,"sku":"AR-GEORGIA-TAN-S","price":59.99,"currency_code":"USD","in_stock":true},{"title":"M","offer_id":55371635589457,"sku":"AR-GEORGIA-TAN-M","price":59.99,"currency_code":"USD","in_stock":true},{"title":"L","offer_id":55371635622225,"sku":"AR-GEORGIA-TAN-L","price":59.99,"currency_code":"USD","in_stock":true},{"title":"XL","offer_id":55371635654993,"sku":"AR-GEORGIA-TAN-XL","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/ar-fw26-shoot0209-v-neck-cable-knit-sweater-vest-tan-1.webp?v=1792459727"},{"product_id":"womens-classic-tailored-single-button-blazer-marie","title":"Klasyczna taliowana marynarka damska z jednym guzikiem | Marie","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eMarie\u003c\/strong\u003e, klasyczny, taliowany żakiet zapinany na jeden guzik od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na jeden guzik\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guzik\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż go na cienki golf lub klasyczną koszulę. Gładkie spodnie i mała torebka dopełnią stylizację.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C (86°F). Nie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Nadać kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcją na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-classic-tailored-single-button-blazer-marie\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"White\",\"Beige\",\"Dark Pink\",\"Light Brown\",\"Burgundy\",\"Blue\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj szacunkowy rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiarowe\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Biały \/ S","offer_id":55371648237905,"sku":"SM-65871288664413","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371648270673,"sku":"SM-65871288697181","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371648303441,"sku":"SM-65871288729949","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371648336209,"sku":"SM-65871288762717","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371648368977,"sku":"SM-65871288795485","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371648401745,"sku":"SM-65871288828253","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371648434513,"sku":"SM-65871288861021","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371648467281,"sku":"SM-65871288893789","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371648500049,"sku":"SM-65871288926557","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371648532817,"sku":"SM-65871288959325","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ S","offer_id":55371648565585,"sku":"SM-65871288992093","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ M","offer_id":55371648598353,"sku":"SM-65871289024861","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ L","offer_id":55371648631121,"sku":"SM-65871289057629","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ XL","offer_id":55371648663889,"sku":"SM-65871289090397","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ XXL","offer_id":55371648696657,"sku":"SM-65871289123165","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ S","offer_id":55371648729425,"sku":"SM-65871289155933","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ M","offer_id":55371648762193,"sku":"SM-65871289188701","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ L","offer_id":55371648794961,"sku":"SM-65871289221469","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ XL","offer_id":55371648827729,"sku":"SM-65871289254237","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ XXL","offer_id":55371648860497,"sku":"SM-65871289287005","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ S","offer_id":55371648893265,"sku":"SM-65871289319773","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ M","offer_id":55371648926033,"sku":"SM-65871289352541","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ L","offer_id":55371648958801,"sku":"SM-65871289385309","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XL","offer_id":55371648991569,"sku":"SM-65871289418077","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XXL","offer_id":55371649024337,"sku":"SM-65871289450845","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371649057105,"sku":"SM-65871289483613","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371649089873,"sku":"SM-65871289516381","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371649122641,"sku":"SM-65871289549149","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371649155409,"sku":"SM-65871289581917","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371649188177,"sku":"SM-65871289614685","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371649220945,"sku":"SM-65871289647453","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371649253713,"sku":"SM-65871289680221","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371649286481,"sku":"SM-65871289712989","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371649319249,"sku":"SM-65871289745757","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371649352017,"sku":"SM-65871289778525","price":39.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-klassischer-einknopf-blazer-tailliert-1.jpg?v=1792459768"},{"product_id":"womens-double-breasted-blazer-with-gold-tone-buttons-mia","title":"Damska dwurzędowa marynarka ze złotymi guzikami | Mia","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eMię\u003c\/strong\u003e, dwurzędowy żakiet ze złotymi guzikami od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie dwurzędowe\u003c\/li\u003e\n\n\u003cli\u003eOcieplana konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eZłote guziki\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go ze spodniami w kant i prostym topem. Do codziennych stylizacji wybierz dżinsy, proste obuwie i dyskretne dodatki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w temp. 30°C (86°F), stosując program do tkanin delikatnych. Nie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Po praniu nadać kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcjami na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-double-breasted-blazer-with-gold-tone-buttons-mia\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\"],\"colors\":[\"Black\",\"White\",\"Red\",\"Yellow\",\"Navy\",\"Pink\",\"Beige\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (ft)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (in)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (lb)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary obecnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL, 3XL. Jeśli estymator jest niedostępny, użyj powyższych szczegółów produktu oraz swojego standardowego rozmiaru jako punktu odniesienia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ S","offer_id":55371649384785,"sku":"SM-65871276802397","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371649417553,"sku":"SM-65871276835165","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371649450321,"sku":"SM-65871276867933","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371649483089,"sku":"SM-65871276900701","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371649515857,"sku":"SM-65871276933469","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371649548625,"sku":"SM-65871276966237","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371649581393,"sku":"SM-65871276999005","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371649614161,"sku":"SM-65871277031773","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371649646929,"sku":"SM-65871277064541","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371649679697,"sku":"SM-65871277097309","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371649712465,"sku":"SM-65871277130077","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 3XL","offer_id":55371649745233,"sku":"SM-65871277162845","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371649778001,"sku":"SM-65871277195613","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371649810769,"sku":"SM-65871277228381","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371649843537,"sku":"SM-65871277261149","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371649876305,"sku":"SM-65871277293917","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371649909073,"sku":"SM-65871277326685","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ 3XL","offer_id":55371649941841,"sku":"SM-65871277359453","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ S","offer_id":55371649974609,"sku":"SM-65871277392221","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ M","offer_id":55371650007377,"sku":"SM-65871277424989","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ L","offer_id":55371650040145,"sku":"SM-65871277457757","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XL","offer_id":55371650072913,"sku":"SM-65871277490525","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371650105681,"sku":"SM-65871277523293","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ 3XL","offer_id":55371650138449,"sku":"SM-65871277556061","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ S","offer_id":55371650171217,"sku":"SM-65871277588829","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371650203985,"sku":"SM-65871277621597","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371650236753,"sku":"SM-65871277654365","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371650269521,"sku":"SM-65871277687133","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371650302289,"sku":"SM-65871277719901","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ 3XL","offer_id":55371650335057,"sku":"SM-65871277752669","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371650367825,"sku":"SM-65871277785437","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371650400593,"sku":"SM-65871277818205","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371650433361,"sku":"SM-65871277850973","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371650466129,"sku":"SM-65871277883741","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371650498897,"sku":"SM-65871277916509","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 3XL","offer_id":55371650531665,"sku":"SM-65871277949277","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371650564433,"sku":"SM-65871277982045","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371650597201,"sku":"SM-65871278014813","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371650629969,"sku":"SM-65871278047581","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371650662737,"sku":"SM-65871278080349","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371650695505,"sku":"SM-65871278113117","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ 3XL","offer_id":55371650728273,"sku":"SM-65871278145885","price":54.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-zweireihiger-blazer-goldknpfe-strukturierte-schultern-1.jpg?v=1792459770"},{"product_id":"womens-lightweight-button-front-jacket-hanna","title":"Lekka damska kurtka zapinana na guziki | Hanna","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eHannę\u003c\/strong\u003e, lekką kurtkę zapinaną na guziki od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz ją z dzianinami w jednolitym kolorze i ulubionymi jeansami. Na wieczór wypróbuj prostą sukienkę i wyraziste obuwie.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój odzieży oraz warstwy, które planujesz nosić pod spodem.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-lightweight-button-front-jacket-hanna\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\"],\"colors\":[\"Light Blue\",\"Pink\",\"Khaki\",\"Blue\",\"Gray\",\"Black\",\"Light Gray\",\"Olive Green\",\"Yellow\",\"Crimson\",\"Green\",\"Navy\",\"Dark Gray\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Kształt ciała, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (ft)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (in)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (lb)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie do dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUżywa tylko rozmiarów aktualnie dostępnych w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL, 3XL. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu i swojego standardowego dopasowania jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Jasnoniebieski \/ S","offer_id":55371651023185,"sku":"SM-65871267496285","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ M","offer_id":55371651055953,"sku":"SM-65871267529053","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ L","offer_id":55371651088721,"sku":"SM-65871267561821","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XL","offer_id":55371651121489,"sku":"SM-65871267594589","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XXL","offer_id":55371651154257,"sku":"SM-65871267627357","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ 3XL","offer_id":55371651187025,"sku":"SM-65871267660125","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371651219793,"sku":"SM-65871267692893","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371651252561,"sku":"SM-65871267725661","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371651285329,"sku":"SM-65871267758429","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371651318097,"sku":"SM-65871267791197","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371651350865,"sku":"SM-65871267823965","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 3XL","offer_id":55371651383633,"sku":"SM-65871267856733","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ S","offer_id":55371651416401,"sku":"SM-65871267889501","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371651449169,"sku":"SM-65871267922269","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371651481937,"sku":"SM-65871267955037","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371651514705,"sku":"SM-65871267987805","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371651547473,"sku":"SM-65871268020573","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ 3XL","offer_id":55371651580241,"sku":"SM-65871268053341","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371651613009,"sku":"SM-65871268086109","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371651645777,"sku":"SM-65871268118877","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371651678545,"sku":"SM-65871268151645","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371651711313,"sku":"SM-65871268184413","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371651744081,"sku":"SM-65871268217181","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 3XL","offer_id":55371651776849,"sku":"SM-65871268249949","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ S","offer_id":55371651809617,"sku":"SM-65871268282717","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371651842385,"sku":"SM-65871268315485","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371651875153,"sku":"SM-65871268348253","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371651907921,"sku":"SM-65871268381021","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371651940689,"sku":"SM-65871268413789","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ 3XL","offer_id":55371651973457,"sku":"SM-65871268446557","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371652006225,"sku":"SM-65871268479325","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371652038993,"sku":"SM-65871268512093","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371652071761,"sku":"SM-65871268544861","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371652104529,"sku":"SM-65871268577629","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371652137297,"sku":"SM-65871268610397","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371652170065,"sku":"SM-65871268643165","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ S","offer_id":55371652202833,"sku":"SM-65871268675933","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ M","offer_id":55371652235601,"sku":"SM-65871268708701","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ L","offer_id":55371652268369,"sku":"SM-65871268741469","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ XL","offer_id":55371652301137,"sku":"SM-65871268774237","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ XXL","offer_id":55371652333905,"sku":"SM-65871268807005","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ 3XL","offer_id":55371652366673,"sku":"SM-65871268839773","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ S","offer_id":55371652399441,"sku":"SM-65871268872541","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ M","offer_id":55371652432209,"sku":"SM-65871268905309","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ L","offer_id":55371652464977,"sku":"SM-65871268938077","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ XL","offer_id":55371652497745,"sku":"SM-65871268970845","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ XXL","offer_id":55371652530513,"sku":"SM-65871269003613","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ 3XL","offer_id":55371652563281,"sku":"SM-65871269036381","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ S","offer_id":55371652596049,"sku":"SM-65871269069149","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ M","offer_id":55371652628817,"sku":"SM-65871269101917","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ L","offer_id":55371652661585,"sku":"SM-65871269134685","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XL","offer_id":55371652694353,"sku":"SM-65871269167453","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371652727121,"sku":"SM-65871269200221","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ 3XL","offer_id":55371652759889,"sku":"SM-65871269232989","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Karmazynowy \/ S","offer_id":55371652792657,"sku":"SM-65871269265757","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Karmazynowy \/ M","offer_id":55371652825425,"sku":"SM-65871269298525","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Karmazynowy \/ L","offer_id":55371652858193,"sku":"SM-65871269331293","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Karmazynowy \/ XL","offer_id":55371652890961,"sku":"SM-65871269364061","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Karmazynowy \/ XXL","offer_id":55371652923729,"sku":"SM-65871269396829","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Karmazynowy \/ 3XL","offer_id":55371652956497,"sku":"SM-65871269429597","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ S","offer_id":55371652989265,"sku":"SM-65871269462365","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ M","offer_id":55371653022033,"sku":"SM-65871269495133","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ L","offer_id":55371653054801,"sku":"SM-65871269527901","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XL","offer_id":55371653087569,"sku":"SM-65871269560669","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371653120337,"sku":"SM-65871269593437","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ 3XL","offer_id":55371653153105,"sku":"SM-65871269626205","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ S","offer_id":55371653185873,"sku":"SM-65871269658973","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371653218641,"sku":"SM-65871269691741","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371653251409,"sku":"SM-65871269724509","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371653284177,"sku":"SM-65871269757277","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371653316945,"sku":"SM-65871269790045","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ 3XL","offer_id":55371653349713,"sku":"SM-65871269822813","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ S","offer_id":55371653382481,"sku":"SM-65871269855581","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ M","offer_id":55371653415249,"sku":"SM-65871269888349","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ L","offer_id":55371653448017,"sku":"SM-65871269921117","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ XL","offer_id":55371653480785,"sku":"SM-65871269953885","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ XXL","offer_id":55371653513553,"sku":"SM-65871269986653","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ 3XL","offer_id":55371653546321,"sku":"SM-65871270019421","price":49.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/c84a7b37-5724-4207-954e-2cc1db82c35e_56701187-3a41-4dd5-8ada-3aed7a585f72_1.webp?v=1792459773"},{"product_id":"womens-linen-blend-blazer-with-3-4-sleeves-nora","title":"Damska marynarka z domieszką lnu i rękawem 3\/4 | Nora","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eNorę\u003c\/strong\u003e, marynarkę z domieszką lnu z rękawami 3\/4 od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eLekka mieszanka lnu\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eRękawy o długości 3\/4\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż ją na cienki golf lub klasyczną koszulę. Całość stylizacji dopełnią proste spodnie i niewielka torebka.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w niskiej temperaturze, w programie delikatnym. Nie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Po praniu nadać kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcją na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-linen-blend-blazer-with-3-4-sleeves-nora\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\"],\"colors\":[\"Pink\",\"White\",\"Beige\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj szacunkowy rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj wstępne dopasowanie rozmiaru na podstawie wzrostu i wagi. To szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczny wybór.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje dane pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Różowy \/ S","offer_id":55371653939537,"sku":"SM-65871242232157","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371653972305,"sku":"SM-65871242264925","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371654005073,"sku":"SM-65871242297693","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371654037841,"sku":"SM-65871242330461","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371654070609,"sku":"SM-65871242363229","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 3XL","offer_id":55371654103377,"sku":"SM-65871242395997","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371654136145,"sku":"SM-65871242428765","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371654168913,"sku":"SM-65871242461533","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371654201681,"sku":"SM-65871242494301","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371654234449,"sku":"SM-65871242527069","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371654267217,"sku":"SM-65871242559837","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 3XL","offer_id":55371654299985,"sku":"SM-65871242592605","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371654332753,"sku":"SM-65871242625373","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371654365521,"sku":"SM-65871242658141","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371654398289,"sku":"SM-65871242690909","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371654431057,"sku":"SM-65871242723677","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371654463825,"sku":"SM-65871242756445","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ 3XL","offer_id":55371654496593,"sku":"SM-65871242789213","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371654529361,"sku":"SM-65871242821981","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371654562129,"sku":"SM-65871242854749","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371654594897,"sku":"SM-65871242887517","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371654627665,"sku":"SM-65871242920285","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371654660433,"sku":"SM-65871242953053","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371654693201,"sku":"SM-65871242985821","price":84.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-dreiviertelarm-leinen-blazer-mit-einzelknopf-5.jpg?v=1792459775"},{"product_id":"womens-wide-leg-jumpsuit-with-lapels-amelie","title":"Damski kombinezon z szerokimi nogawkami i klapami | Amelie","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eAmelie\u003c\/strong\u003e, kombinezon z szerokimi nogawkami i klapami od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eKołnierz z klapami\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eSzerokie nogawki\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go z delikatną biżuterią, małą torebką i szpilkami. Wybierz proste płaskie buty na bardziej casualowe okazje.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003eNie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Nadać kształt i suszyć na płasko. Zawsze przestrzegaj zaleceń na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-wide-leg-jumpsuit-with-lapels-amelie\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Fuchsia Pink\",\"White\",\"Beige\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj szacunkowy rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na to, co będzie pasować najlepiej.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary obecnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu oraz rozmiarów, które zazwyczaj nosisz, jako punkt wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Fuksjowy Róż \/ S","offer_id":55371658625361,"sku":"SM-65870987034973","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Fuksjowy Róż \/ M","offer_id":55371658658129,"sku":"SM-65870987067741","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Fuksjowy Róż \/ L","offer_id":55371658690897,"sku":"SM-65870987100509","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Fuksjowy Róż \/ XL","offer_id":55371658723665,"sku":"SM-65870987133277","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Fuksjowy Róż \/ XXL","offer_id":55371658756433,"sku":"SM-65870987166045","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371658789201,"sku":"SM-65870987198813","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371658821969,"sku":"SM-65870987231581","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371658854737,"sku":"SM-65870987264349","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371658887505,"sku":"SM-65870987297117","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371658920273,"sku":"SM-65870987329885","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371658953041,"sku":"SM-65870987362653","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371658985809,"sku":"SM-65870987395421","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371659018577,"sku":"SM-65870987428189","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371659051345,"sku":"SM-65870987460957","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371659084113,"sku":"SM-65870987493725","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371659116881,"sku":"SM-65870987526493","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371659149649,"sku":"SM-65870987559261","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371659182417,"sku":"SM-65870987592029","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371659215185,"sku":"SM-65870987624797","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371659247953,"sku":"SM-65870987657565","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-weitbein-jumpsuit-blazerkragen-bindegrtel-1.jpg?v=1792459784"},{"product_id":"womens-fitted-tweed-blazer-with-faux-leather-details-marlene","title":"Dopasowany tweedowy żakiet damski z detalami z ekoskóry | Marlene","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eMarlene\u003c\/strong\u003e, dopasowany tweedowy żakiet z elementami ze sztucznej skóry od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eSztuczna skóra\u003c\/li\u003e\n\n\u003cli\u003eTweedowe wykończenie\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go z dopasowanym topem i spodniami z szerokimi nogawkami. Aby uzyskać swobodny wygląd, połącz go z dżinsami i prostymi sneakersami.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C (86°F). Nie wybielać. Nie suszyć w suszarce bębnowej. Nadać kształt i suszyć w pozycji poziomej. Zawsze przestrzegaj instrukcji na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-fitted-tweed-blazer-with-faux-leather-details-marlene\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\"],\"colors\":[\"Brown\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj szacunkowy rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Kształt ciała, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL, 3XL. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu i swojego zazwyczaj noszonego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Brązowy \/ S","offer_id":55371659313489,"sku":"SM-65870944239965","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ M","offer_id":55371659346257,"sku":"SM-65870944272733","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ L","offer_id":55371659379025,"sku":"SM-65870944305501","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XL","offer_id":55371659411793,"sku":"SM-65870944338269","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XXL","offer_id":55371659444561,"sku":"SM-65870944371037","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ 3XL","offer_id":55371659477329,"sku":"SM-65870944403805","price":89.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-taillierter-tweed-blazer-kunstleder-besatz-knopfleiste-1.jpg?v=1792459785"},{"product_id":"womens-relaxed-collared-blazer-lena","title":"Damski luźny żakiet z kołnierzem | Lena","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eLenę\u003c\/strong\u003e, swobodny żakiet z kołnierzem od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eSwobodny krój\u003c\/li\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż go na cienki golf lub klasyczną koszulę. Gładkie spodnie i mała torebka dopełnią całość.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-relaxed-collared-blazer-lena\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Light Blue\",\"Pink\",\"Khaki\",\"Blue\",\"Gray\",\"Black\",\"Light Gray\",\"Dark Green\",\"Yellow\",\"Burgundy\",\"Green\",\"Navy\",\"Dark Gray\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi. To szacunki, a nie gwarancja idealnego dopasowania. Sylwetka, warstwy ubrań i krój odzieży mogą wpłynąć na ostateczny wybór.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eReferencja dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz referencję\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględnia tylko rozmiary dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Jasnoniebieski \/ S","offer_id":55371659706705,"sku":"SM-65870939816285","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ M","offer_id":55371659739473,"sku":"SM-65870939849053","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ L","offer_id":55371659772241,"sku":"SM-65870939881821","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XL","offer_id":55371659805009,"sku":"SM-65870939914589","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XXL","offer_id":55371659837777,"sku":"SM-65870939947357","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371659870545,"sku":"SM-65870939980125","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371659903313,"sku":"SM-65870940012893","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371659936081,"sku":"SM-65870940045661","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371659968849,"sku":"SM-65870940078429","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371660001617,"sku":"SM-65870940111197","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ S","offer_id":55371660034385,"sku":"SM-65870940143965","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371660067153,"sku":"SM-65870940176733","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371660099921,"sku":"SM-65870940209501","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371660132689,"sku":"SM-65870940242269","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371660165457,"sku":"SM-65870940275037","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371660198225,"sku":"SM-65870940307805","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371660230993,"sku":"SM-65870940340573","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371660263761,"sku":"SM-65870940373341","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371660296529,"sku":"SM-65870940406109","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371660329297,"sku":"SM-65870940438877","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ S","offer_id":55371660362065,"sku":"SM-65870940471645","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371660394833,"sku":"SM-65870940504413","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371660427601,"sku":"SM-65870940537181","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371660460369,"sku":"SM-65870940569949","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371660493137,"sku":"SM-65870940602717","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371660525905,"sku":"SM-65870940635485","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371660558673,"sku":"SM-65870940668253","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371660591441,"sku":"SM-65870940701021","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371660624209,"sku":"SM-65870940733789","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371660656977,"sku":"SM-65870940766557","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ S","offer_id":55371660689745,"sku":"SM-65870940799325","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ M","offer_id":55371660722513,"sku":"SM-65870940832093","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ L","offer_id":55371660755281,"sku":"SM-65870940864861","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ XL","offer_id":55371660788049,"sku":"SM-65870940897629","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoszary \/ XXL","offer_id":55371660820817,"sku":"SM-65870940930397","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnozielony \/ S","offer_id":55371660853585,"sku":"SM-65870940963165","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnozielony \/ M","offer_id":55371660886353,"sku":"SM-65870940995933","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnozielony \/ L","offer_id":55371660919121,"sku":"SM-65870941028701","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnozielony \/ XL","offer_id":55371660951889,"sku":"SM-65870941061469","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnozielony \/ XXL","offer_id":55371660984657,"sku":"SM-65870941094237","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ S","offer_id":55371661017425,"sku":"SM-65870941127005","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ M","offer_id":55371661050193,"sku":"SM-65870941159773","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ L","offer_id":55371661082961,"sku":"SM-65870941192541","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XL","offer_id":55371661115729,"sku":"SM-65870941225309","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371661148497,"sku":"SM-65870941258077","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ S","offer_id":55371661181265,"sku":"SM-65870941290845","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ M","offer_id":55371661214033,"sku":"SM-65870941323613","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ L","offer_id":55371661246801,"sku":"SM-65870941356381","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XL","offer_id":55371661279569,"sku":"SM-65870941389149","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XXL","offer_id":55371661312337,"sku":"SM-65870941421917","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ S","offer_id":55371661345105,"sku":"SM-65870941454685","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ M","offer_id":55371661377873,"sku":"SM-65870941487453","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ L","offer_id":55371661410641,"sku":"SM-65870941520221","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XL","offer_id":55371661443409,"sku":"SM-65870941552989","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371661476177,"sku":"SM-65870941585757","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ S","offer_id":55371661508945,"sku":"SM-65870941618525","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371661541713,"sku":"SM-65870941651293","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371661574481,"sku":"SM-65870941684061","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371661607249,"sku":"SM-65870941716829","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371661640017,"sku":"SM-65870941749597","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ S","offer_id":55371661672785,"sku":"SM-65870941782365","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ M","offer_id":55371661705553,"sku":"SM-65870941815133","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ L","offer_id":55371661738321,"sku":"SM-65870941847901","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ XL","offer_id":55371661771089,"sku":"SM-65870941880669","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ XXL","offer_id":55371661803857,"sku":"SM-65870941913437","price":49.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-langarm-blazer-mit-kragen-und-knopfleiste-relaxed-fit-1.jpg?v=1792459788"},{"product_id":"womens-fitted-textured-blazer-lena","title":"Dopasowany żakiet o fakturze materiału | Lena","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eLenę\u003c\/strong\u003e, dopasowany fakturowany żakiet od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eKlasyczny wykładany kołnierz\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż go na cienki golf lub klasyczną koszulę. Proste spodnie i mała torebka dopełnią stylizację.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C (86°F). Nie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Po praniu nadać pierwotny kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcją na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-fitted-textured-blazer-lena\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"White\",\"Gray\",\"Pink\",\"Beige\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij lokalizator rozmiaru\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj wstępny rozmiar na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględnia tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie szacujące jest niedostępne, skorzystaj z powyższych szczegółów produktu oraz swoich dotychczasowych preferencji rozmiarowych.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Biały \/ S","offer_id":55371662950737,"sku":"SM-65870920679773","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371662983505,"sku":"SM-65870920712541","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371663016273,"sku":"SM-65870920745309","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371663049041,"sku":"SM-65870920778077","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371663081809,"sku":"SM-65870920810845","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ S","offer_id":55371663114577,"sku":"SM-65870920843613","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371663147345,"sku":"SM-65870920876381","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371663180113,"sku":"SM-65870920909149","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371663212881,"sku":"SM-65870920941917","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371663245649,"sku":"SM-65870920974685","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371663278417,"sku":"SM-65870921007453","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371663311185,"sku":"SM-65870921040221","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371663343953,"sku":"SM-65870921072989","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371663376721,"sku":"SM-65870921105757","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371663409489,"sku":"SM-65870921138525","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371663442257,"sku":"SM-65870921171293","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371663475025,"sku":"SM-65870921204061","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371663507793,"sku":"SM-65870921236829","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371663540561,"sku":"SM-65870921269597","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371663573329,"sku":"SM-65870921302365","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371663606097,"sku":"SM-65870921335133","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371663638865,"sku":"SM-65870921367901","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371663671633,"sku":"SM-65870921400669","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371663704401,"sku":"SM-65870921433437","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371663737169,"sku":"SM-65870921466205","price":49.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-strukturierter-taillierter-langarm-blazer-mit-knopflei-2.jpg?v=1792459793"},{"product_id":"womens-lightweight-breathable-cropped-jacket-luisa","title":"Lekka, oddychająca kurtka damska o kroju crop | Luisa","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eLuisę\u003c\/strong\u003e, lekką, oddychającą, krótką kurtkę od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eWysoki kołnierz lub stójka\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na suwak z przodu\u003c\/li\u003e\n\n\u003cli\u003eSkrócony krój\u003c\/li\u003e\n\n\u003cli\u003eLuźny fason\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eRegulowany sznurek\u003c\/li\u003e\n\n\u003cli\u003ePraktyczne kieszenie boczne\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eNoś ją z lekkim golfem i spodniami z szerokimi nogawkami. Całość dopełnij prostą torebką i subtelną biżuterią.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: M, L, XL, 2XL, 3XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz nosić pod spodem.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-lightweight-breathable-cropped-jacket-luisa\",\"gender\":\"female\",\"sizes\":[\"M\",\"L\",\"XL\",\"2XL\",\"3XL\"],\"colors\":[\"Khaki\",\"Black\",\"Beige\",\"Yellow\",\"Pink\",\"Blue\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eDotyczy tylko rozmiarów aktualnie dostępnych w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: M, L, XL, 2XL, 3XL. Jeśli narzędzie szacujące jest niedostępne, wykorzystaj powyższe szczegóły produktu oraz swój standardowy rozmiar jako punkt wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Khaki \/ M","offer_id":55371669176657,"sku":"SM-65870729019741","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371669209425,"sku":"SM-65870729052509","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371669242193,"sku":"SM-65870729085277","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371669274961,"sku":"SM-65870729118045","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ 3XL","offer_id":55371669307729,"sku":"SM-65870729150813","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371669340497,"sku":"SM-65870729183581","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371669373265,"sku":"SM-65870729216349","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371669406033,"sku":"SM-65870729249117","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371669438801,"sku":"SM-65870729281885","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371669471569,"sku":"SM-65870729314653","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371669504337,"sku":"SM-65870729347421","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371669537105,"sku":"SM-65870729380189","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371669569873,"sku":"SM-65870729412957","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371669602641,"sku":"SM-65870729445725","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ 3XL","offer_id":55371669635409,"sku":"SM-65870729478493","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ M","offer_id":55371669668177,"sku":"SM-65870729511261","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ L","offer_id":55371669700945,"sku":"SM-65870729544029","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XL","offer_id":55371669733713,"sku":"SM-65870729576797","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371669766481,"sku":"SM-65870729609565","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ 3XL","offer_id":55371669799249,"sku":"SM-65870729642333","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371669832017,"sku":"SM-65870729675101","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371669864785,"sku":"SM-65870729707869","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371669897553,"sku":"SM-65870729740637","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371669930321,"sku":"SM-65870729773405","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 3XL","offer_id":55371669963089,"sku":"SM-65870729806173","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371669995857,"sku":"SM-65870729838941","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371670028625,"sku":"SM-65870729871709","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371670061393,"sku":"SM-65870729904477","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371670094161,"sku":"SM-65870729937245","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 3XL","offer_id":55371670126929,"sku":"SM-65870729970013","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-kurzjacke-leichte-atmungsaktive-bergangsjacke-mit-reiv-1.jpg?v=1792459805"},{"product_id":"womens-button-front-knit-vest-amelie","title":"Damska kamizelka dzianinowa zapinana na guziki | Amelie","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eAmelie\u003c\/strong\u003e, dzianinową kamizelkę zapinaną na guziki od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eFason bez rękawów\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż ją na gładki golf lub koszulę. Dobierz spodnie z prostymi nogawkami i obuwie odpowiednie do okazji, aby uzyskać codzienny strój.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w temperaturze 30°C (86°F), stosując delikatny cykl. Nie wybielać. Nie suszyć w suszarce bębnowej. Nadać kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcjami na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-button-front-knit-vest-amelie\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\"],\"colors\":[\"Burgundy\",\"Black\",\"Gray\",\"Apricot\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiaru\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na to, co będzie na Ciebie najlepiej pasować.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUżywa tylko rozmiarów aktualnie dostępnych do kupienia. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL, 3XL. Jeśli estymator jest niedostępny, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Burgund \/ S","offer_id":55371706564945,"sku":"SM-65870572912989","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ M","offer_id":55371706597713,"sku":"SM-65870572945757","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ L","offer_id":55371706630481,"sku":"SM-65870572978525","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XL","offer_id":55371706663249,"sku":"SM-65870573011293","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XXL","offer_id":55371706696017,"sku":"SM-65870573044061","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ 3XL","offer_id":55371706728785,"sku":"SM-65870573076829","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371706761553,"sku":"SM-65870573109597","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371706794321,"sku":"SM-65870573142365","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371706827089,"sku":"SM-65870573175133","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371706859857,"sku":"SM-65870573207901","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371706892625,"sku":"SM-65870573240669","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371706925393,"sku":"SM-65870573273437","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ S","offer_id":55371706958161,"sku":"SM-65870573306205","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371706990929,"sku":"SM-65870573338973","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371707023697,"sku":"SM-65870573371741","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371707056465,"sku":"SM-65870573404509","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371707089233,"sku":"SM-65870573437277","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ 3XL","offer_id":55371707122001,"sku":"SM-65870573470045","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ S","offer_id":55371707154769,"sku":"SM-65870573502813","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ M","offer_id":55371707187537,"sku":"SM-65870573535581","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ L","offer_id":55371707220305,"sku":"SM-65870573568349","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ XL","offer_id":55371707253073,"sku":"SM-65870573601117","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ XXL","offer_id":55371707285841,"sku":"SM-65870573633885","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ 3XL","offer_id":55371707318609,"sku":"SM-65870573666653","price":44.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-strickweste-rmelloser-pullover-weste-bunte-knpfe-2.jpg?v=1792459878"},{"product_id":"womens-boho-quilted-kimono-jacket-clara","title":"Damska pikowana kurtka kimono w stylu boho | Clara","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eClarę\u003c\/strong\u003e, pikowaną kurtkę typu kimono w stylu boho od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003ePikowane wykończenie\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eNoś ją do prostych dżinsów i gładkiego topu. Aby uzyskać bardziej elegancki strój, wybierz spodnie z wysokim stanem i botki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003eNie wybielać. Nie suszyć w suszarce bębnowej. Nadaj kształt i susz na płasko. Zawsze przestrzegaj zaleceń na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-boho-quilted-kimono-jacket-clara\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\"],\"colors\":[\"Burgundy\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj szacowany rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Kształt sylwetki, warstwy ubrań i krój odzieży mogą wpłynąć na wybór najlepszego rozmiaru.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględnia tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L, XL. Jeśli narzędzie szacujące jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Burgund \/ XS","offer_id":55371709972817,"sku":"SM-65870562296157","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ S","offer_id":55371710005585,"sku":"SM-65870562328925","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ M","offer_id":55371710038353,"sku":"SM-65870562361693","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ L","offer_id":55371710071121,"sku":"SM-65870562394461","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XL","offer_id":55371710103889,"sku":"SM-65870562427229","price":64.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-gesteppte-jacke-boho-kimono-leichter-vintage-schnitt-1.jpg?v=1792459884"},{"product_id":"womens-textured-zip-up-bomber-jacket-annika","title":"Damska kurtka bomberka z suwakiem i fakturą | Annika","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eAnnikę\u003c\/strong\u003e, teksturowaną kurtkę typu bomberka zapinaną na zamek od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eWysoki kołnierz lub stójka\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na zamek błyskawiczny z przodu\u003c\/li\u003e\n\n\u003cli\u003eKrótki fason\u003c\/li\u003e\n\n\u003cli\u003eLuźny krój\u003c\/li\u003e\n\n\u003cli\u003ePikowane wykończenie\u003c\/li\u003e\n\n\u003cli\u003eElastyczne mankiety\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eNoś ją do prostych jeansów i zwykłego topu. Aby uzyskać bardziej elegancki strój, wybierz spodnie z wysokim stanem i botki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w trybie delikatnym w temperaturze 30°C (86°F). Nie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Nadać kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcją na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-textured-zip-up-bomber-jacket-annika\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Gray\",\"Black\",\"White\",\"Blue\",\"Dark Brown\",\"Olive Green\",\"Apricot\",\"Orange\",\"Pink\",\"Khaki\",\"Dark Red\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOtrzymaj szacunkowy rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Kształt ciała, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eDotyczy tylko rozmiarów aktualnie dostępnych w sprzedaży. Twoje pomiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli szacownik jest niedostępny, użyj powyższych szczegółów odzieży oraz własnego standardowego dopasowania jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Szary \/ S","offer_id":55371713216849,"sku":"SM-65870555251037","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371713249617,"sku":"SM-65870555283805","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371713282385,"sku":"SM-65870555316573","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371713315153,"sku":"SM-65870555349341","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371713347921,"sku":"SM-65870555382109","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371713380689,"sku":"SM-65870555414877","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371713413457,"sku":"SM-65870555447645","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371713446225,"sku":"SM-65870555480413","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371713478993,"sku":"SM-65870555513181","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371713511761,"sku":"SM-65870555545949","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371713544529,"sku":"SM-65870555578717","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371713577297,"sku":"SM-65870555611485","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371713610065,"sku":"SM-65870555644253","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371713642833,"sku":"SM-65870555677021","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371713675601,"sku":"SM-65870555709789","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371713708369,"sku":"SM-65870555742557","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371713741137,"sku":"SM-65870555775325","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371713773905,"sku":"SM-65870555808093","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371713806673,"sku":"SM-65870555840861","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371713839441,"sku":"SM-65870555873629","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnobrązowy \/ S","offer_id":55371713872209,"sku":"SM-65870555906397","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnobrązowy \/ M","offer_id":55371713904977,"sku":"SM-65870555939165","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnobrązowy \/ L","offer_id":55371713937745,"sku":"SM-65870555971933","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnobrązowy \/ XL","offer_id":55371713970513,"sku":"SM-65870556004701","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnobrązowy \/ XXL","offer_id":55371714003281,"sku":"SM-65870556037469","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ S","offer_id":55371714036049,"sku":"SM-65870556070237","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ M","offer_id":55371714068817,"sku":"SM-65870556103005","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ L","offer_id":55371714101585,"sku":"SM-65870556135773","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ XL","offer_id":55371714134353,"sku":"SM-65870556168541","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ XXL","offer_id":55371714167121,"sku":"SM-65870556201309","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ S","offer_id":55371714199889,"sku":"SM-65870556234077","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ M","offer_id":55371714232657,"sku":"SM-65870556266845","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ L","offer_id":55371714265425,"sku":"SM-65870556299613","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ XL","offer_id":55371714298193,"sku":"SM-65870556332381","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Morela \/ XXL","offer_id":55371714330961,"sku":"SM-65870556365149","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ S","offer_id":55371714363729,"sku":"SM-65870556397917","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ M","offer_id":55371714396497,"sku":"SM-65870556430685","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ L","offer_id":55371714429265,"sku":"SM-65870556463453","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ XL","offer_id":55371714462033,"sku":"SM-65870556496221","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ XXL","offer_id":55371714494801,"sku":"SM-65870556528989","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371714527569,"sku":"SM-65870556561757","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371714560337,"sku":"SM-65870556594525","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371714593105,"sku":"SM-65870556627293","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371714625873,"sku":"SM-65870556660061","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371714658641,"sku":"SM-65870556692829","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ S","offer_id":55371714691409,"sku":"SM-65870556725597","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371714724177,"sku":"SM-65870556758365","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371714756945,"sku":"SM-65870556791133","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371714789713,"sku":"SM-65870556823901","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371714822481,"sku":"SM-65870556856669","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ S","offer_id":55371714855249,"sku":"SM-65870556889437","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ M","offer_id":55371714888017,"sku":"SM-65870556922205","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ L","offer_id":55371714920785,"sku":"SM-65870556954973","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ XL","offer_id":55371714953553,"sku":"SM-65870556987741","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ XXL","offer_id":55371714986321,"sku":"SM-65870557020509","price":49.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-steppjacke-leichte-zip-up-bomberjacke-strukturierter-s-1.jpg?v=1792459896"},{"product_id":"womens-oversized-denim-jacket-with-frayed-hem-charlotte","title":"Damska kurtka dżinsowa typu oversize z postrzępionym dołem | Charlotte","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eCharlotte\u003c\/strong\u003e, jeansową kurtkę oversize z postrzępionym dołem od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eMateriał jeansowy\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eSwobodny krój oversize\u003c\/li\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\n\u003cli\u003eWykończenie z frędzlami\u003c\/li\u003e\n\n\u003cli\u003eKieszenie na piersi\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eNoś ją z jednolitą dzianiną i swoimi ulubionymi jeansami. Na wieczór wypróbuj połączenie z prostą sukienką i wyrazistymi butami.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C (86°F). Nie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Nadać kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcjami na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-oversized-denim-jacket-with-frayed-hem-charlotte\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Black\",\"Light Blue\",\"Dark Blue\",\"Olive Green\",\"White\",\"Brown\",\"Red\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOtrzymaj sugestię rozmiaru na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eOtrzymaj przybliżony rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUżywa tylko rozmiarów aktualnie dostępnych do zakupu. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie szacujące jest niedostępne, skorzystaj z powyższych szczegółów produktu oraz własnego, typowego dopasowania jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ S","offer_id":55371719737681,"sku":"SM-65870540865885","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371719770449,"sku":"SM-65870540898653","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371719803217,"sku":"SM-65870540931421","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371719835985,"sku":"SM-65870540964189","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371719868753,"sku":"SM-65870540996957","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ S","offer_id":55371719901521,"sku":"SM-65870541029725","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ M","offer_id":55371719934289,"sku":"SM-65870541062493","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ L","offer_id":55371719967057,"sku":"SM-65870541095261","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XL","offer_id":55371719999825,"sku":"SM-65870541128029","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XXL","offer_id":55371720032593,"sku":"SM-65870541160797","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoniebieski \/ S","offer_id":55371720065361,"sku":"SM-65870541193565","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoniebieski \/ M","offer_id":55371720098129,"sku":"SM-65870541226333","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoniebieski \/ L","offer_id":55371720130897,"sku":"SM-65870541259101","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoniebieski \/ XL","offer_id":55371720163665,"sku":"SM-65870541291869","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoniebieski \/ XXL","offer_id":55371720196433,"sku":"SM-65870541324637","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ S","offer_id":55371720229201,"sku":"SM-65870541357405","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ M","offer_id":55371720261969,"sku":"SM-65870541390173","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ L","offer_id":55371720294737,"sku":"SM-65870541422941","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ XL","offer_id":55371720327505,"sku":"SM-65870541455709","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Oliwkowy \/ XXL","offer_id":55371720360273,"sku":"SM-65870541488477","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371720393041,"sku":"SM-65870541521245","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371720425809,"sku":"SM-65870541554013","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371720458577,"sku":"SM-65870541586781","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371720491345,"sku":"SM-65870541619549","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371720524113,"sku":"SM-65870541652317","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ S","offer_id":55371720556881,"sku":"SM-65870541685085","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ M","offer_id":55371720589649,"sku":"SM-65870541717853","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ L","offer_id":55371720622417,"sku":"SM-65870541750621","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XL","offer_id":55371720655185,"sku":"SM-65870541783389","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XXL","offer_id":55371720687953,"sku":"SM-65870541816157","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371720720721,"sku":"SM-65870541848925","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371720753489,"sku":"SM-65870541881693","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371720786257,"sku":"SM-65870541914461","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371720819025,"sku":"SM-65870541947229","price":67.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371720851793,"sku":"SM-65870541979997","price":67.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-oversized-jeansjacke-langarm-mit-knopfleiste-und-frans-1.jpg?v=1792459905"},{"product_id":"womens-water-repellent-hooded-coat-annika","title":"Damski płaszcz przeciwdeszczowy z kapturem | Annika","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eAnnikę\u003c\/strong\u003e, wodoodporny płaszcz z kapturem od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eKaptur\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eRegulowany sznurek\u003c\/li\u003e\n\n\u003cli\u003eWodoodporne wykończenie\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz go ze swoją ulubioną dzianiną i dżinsami lub koszulą i eleganckimi spodniami. Zachowaj prostotę dodatków, aby podkreślić sylwetkę.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój odzieży oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C (86°F). Nie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Po praniu nadać pierwotny kształt i suszyć na płasko. Nie prasować. Zawsze przestrzegaj zaleceń na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-water-repellent-hooded-coat-annika\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Blue\",\"Yellow\",\"Pink\",\"Red\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczny wybór.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary obecnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie szacujące jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego dopasowania jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Niebieski \/ S","offer_id":55371737923921,"sku":"SM-65870491615581","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371737956689,"sku":"SM-65870491648349","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371737989457,"sku":"SM-65870491681117","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371738022225,"sku":"SM-65870491713885","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371738054993,"sku":"SM-65870491746653","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ S","offer_id":55371738087761,"sku":"SM-65870491779421","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ M","offer_id":55371738120529,"sku":"SM-65870491812189","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ L","offer_id":55371738153297,"sku":"SM-65870491844957","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XL","offer_id":55371738186065,"sku":"SM-65870491877725","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371738218833,"sku":"SM-65870491910493","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371738251601,"sku":"SM-65870491943261","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371738284369,"sku":"SM-65870491976029","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371738317137,"sku":"SM-65870492008797","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371738349905,"sku":"SM-65870492041565","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371738382673,"sku":"SM-65870492074333","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371738415441,"sku":"SM-65870492107101","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371738448209,"sku":"SM-65870492139869","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371738480977,"sku":"SM-65870492172637","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371738513745,"sku":"SM-65870492205405","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371738546513,"sku":"SM-65870492238173","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371738579281,"sku":"SM-65870492270941","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371738612049,"sku":"SM-65870492303709","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371738644817,"sku":"SM-65870492336477","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371738677585,"sku":"SM-65870492369245","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371738710353,"sku":"SM-65870492402013","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-regenmantel-wasserabweisender-kapuzenmantel-mit-taille-1.jpg?v=1792459942"},{"product_id":"womens-long-blazer-suit-set-leonie","title":"Damski garnitur z długą marynarką | Leonie","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eLeonie\u003c\/strong\u003e, długi garnitur z marynarką od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZestaw z długą marynarką\u003c\/li\u003e\n\n\u003cli\u003eTaliowany krój\u003c\/li\u003e\n\n\u003cli\u003eKlasyczna stylistyka garniturowa\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz go z gładką górą i prostą torebką. Wybierz eleganckie buty na formalne okazje lub minimalistyczne sneakersy na co dzień.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-long-blazer-suit-set-leonie\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Black\",\"Green\",\"Blue\",\"Pink\",\"Red\",\"White\",\"Light Blue\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L, XL, 2XL. Jeśli narzędzie szacujące jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ XS","offer_id":55371751358801,"sku":"SM-65869778092381","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371751391569,"sku":"SM-65869778125149","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371751424337,"sku":"SM-65869778157917","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371751457105,"sku":"SM-65869778190685","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371751489873,"sku":"SM-65869778223453","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371751522641,"sku":"SM-65869778256221","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XS","offer_id":55371751555409,"sku":"SM-65869778288989","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ S","offer_id":55371751588177,"sku":"SM-65869778321757","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ M","offer_id":55371751620945,"sku":"SM-65869778354525","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ L","offer_id":55371751653713,"sku":"SM-65869778387293","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XL","offer_id":55371751686481,"sku":"SM-65869778420061","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371751719249,"sku":"SM-65869778452829","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XS","offer_id":55371751752017,"sku":"SM-65869778485597","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371751784785,"sku":"SM-65869778518365","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371751817553,"sku":"SM-65869778551133","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371751850321,"sku":"SM-65869778583901","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371751883089,"sku":"SM-65869778616669","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371751915857,"sku":"SM-65869778649437","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XS","offer_id":55371751948625,"sku":"SM-65869778682205","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371751981393,"sku":"SM-65869778714973","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371752014161,"sku":"SM-65869778747741","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371752046929,"sku":"SM-65869778780509","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371752079697,"sku":"SM-65869778813277","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371752112465,"sku":"SM-65869778846045","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XS","offer_id":55371752145233,"sku":"SM-65869778878813","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371752178001,"sku":"SM-65869778911581","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371752210769,"sku":"SM-65869778944349","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371752243537,"sku":"SM-65869778977117","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371752276305,"sku":"SM-65869779009885","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371752309073,"sku":"SM-65869779042653","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XS","offer_id":55371752341841,"sku":"SM-65869779075421","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371752374609,"sku":"SM-65869779108189","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371752407377,"sku":"SM-65869779140957","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371752440145,"sku":"SM-65869779173725","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371752472913,"sku":"SM-65869779206493","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371752505681,"sku":"SM-65869779239261","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XS","offer_id":55371752538449,"sku":"SM-65869779272029","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ S","offer_id":55371752571217,"sku":"SM-65869779304797","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ M","offer_id":55371752603985,"sku":"SM-65869779337565","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ L","offer_id":55371752636753,"sku":"SM-65869779370333","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XL","offer_id":55371752669521,"sku":"SM-65869779403101","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XXL","offer_id":55371752702289,"sku":"SM-65869779435869","price":84.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/Womens-Tailored-Blazer-Trouser-Set-Womens-Single-Breasted-Suit.png?v=1792459970"},{"product_id":"womens-tailored-blazer-edith","title":"Damska taliowana marynarka | Edith","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eEdith\u003c\/strong\u003e, taliowany żakiet od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go z eleganckimi spodniami i prostym topem. Do noszenia na co dzień wybierz jeansy, proste obuwie i dyskretne dodatki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL, 4XL, 5XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-tailored-blazer-edith\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\",\"4XL\",\"5XL\"],\"colors\":[\"Black\",\"White\",\"Blue\",\"Pink\",\"Khaki\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij kalkulator rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na to, co będzie pasować najlepiej.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (ft)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (in)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (lb)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje pomiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL, 3XL, 4XL, 5XL. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu i swojego zazwyczaj noszonego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ S","offer_id":55371752735057,"sku":"SM-65869773439325","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371752767825,"sku":"SM-65869773472093","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371752800593,"sku":"SM-65869773504861","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371752833361,"sku":"SM-65869773537629","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371752866129,"sku":"SM-65869773570397","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371752898897,"sku":"SM-65869773603165","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 4XL","offer_id":55371752931665,"sku":"SM-65869773635933","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 5XL","offer_id":55371752964433,"sku":"SM-65869773668701","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371752997201,"sku":"SM-65869773701469","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371753029969,"sku":"SM-65869773734237","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371753062737,"sku":"SM-65869773767005","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371753095505,"sku":"SM-65869773799773","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371753128273,"sku":"SM-65869773832541","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 3XL","offer_id":55371753161041,"sku":"SM-65869773865309","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 4XL","offer_id":55371753193809,"sku":"SM-65869773898077","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 5XL","offer_id":55371753226577,"sku":"SM-65869773930845","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371753259345,"sku":"SM-65869773963613","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371753292113,"sku":"SM-65869773996381","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371753324881,"sku":"SM-65869774029149","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371753357649,"sku":"SM-65869774061917","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371753390417,"sku":"SM-65869774094685","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 3XL","offer_id":55371753423185,"sku":"SM-65869774127453","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 4XL","offer_id":55371753455953,"sku":"SM-65869774160221","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 5XL","offer_id":55371753488721,"sku":"SM-65869774192989","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371753521489,"sku":"SM-65869774225757","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371753554257,"sku":"SM-65869774258525","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371753587025,"sku":"SM-65869774291293","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371753619793,"sku":"SM-65869774324061","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371753652561,"sku":"SM-65869774356829","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 3XL","offer_id":55371753685329,"sku":"SM-65869774389597","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 4XL","offer_id":55371753718097,"sku":"SM-65869774422365","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 5XL","offer_id":55371753750865,"sku":"SM-65869774455133","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ S","offer_id":55371753783633,"sku":"SM-65869774487901","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371753816401,"sku":"SM-65869774520669","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371753849169,"sku":"SM-65869774553437","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371753881937,"sku":"SM-65869774586205","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371753914705,"sku":"SM-65869774618973","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ 3XL","offer_id":55371753947473,"sku":"SM-65869774651741","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ 4XL","offer_id":55371753980241,"sku":"SM-65869774684509","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ 5XL","offer_id":55371754013009,"sku":"SM-65869774717277","price":49.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/75bcbddc-8312-4c1c-8191-562659e925b2.jpg?v=1792459972"},{"product_id":"womens-single-button-office-blazer-anna","title":"Damski żakiet biurowy jednorzędowy | Anna","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eAnnę\u003c\/strong\u003e, jednorzędowy żakiet biurowy od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na jeden guzik\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż go na cienki golf lub klasyczną koszulę. Całość dopełnią proste spodnie i mała torebka.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-single-button-office-blazer-anna\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Beige\",\"Pink\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. To tylko szacunek, a nie gwarancja dopasowania. Kształt sylwetki, warstwy ubrań i krój odzieży mogą wpłynąć na ostateczny wybór.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie do dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie szacujące jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Beżowy \/ S","offer_id":55371754963281,"sku":"SM-65869759349085","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371754996049,"sku":"SM-65869759381853","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371755028817,"sku":"SM-65869759414621","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371755061585,"sku":"SM-65869759447389","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371755094353,"sku":"SM-65869759480157","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371755127121,"sku":"SM-65869759512925","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371755159889,"sku":"SM-65869759545693","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371755192657,"sku":"SM-65869759578461","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371755225425,"sku":"SM-65869759611229","price":44.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371755258193,"sku":"SM-65869759643997","price":44.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/6_ac871555-d3fd-403b-b126-744f551b57a6.png?v=1792459977"},{"product_id":"womens-single-button-blazer-christa","title":"Damska marynarka jednorzędowa | Christa","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eChristę\u003c\/strong\u003e, jednorzędową marynarkę od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na jeden guzik\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eSwobodny krój\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz ją ze spodniami w kant i gładką bluzką. Do codziennych stylizacji wybierz dżinsy, proste obuwie oraz delikatne dodatki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-single-button-blazer-christa\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\"],\"colors\":[\"Black\",\"White\",\"Blue\",\"Pink\",\"Khaki\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOtrzymaj sugestię rozmiaru na podstawie swojego wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na to, który rozmiar będzie najlepszy.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględnia tylko rozmiary dostępne obecnie w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL, 3XL. Jeśli kalkulator jest niedostępny, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu odniesienia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ S","offer_id":55371760730449,"sku":"SM-65869758366045","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371760763217,"sku":"SM-65869758398813","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371760795985,"sku":"SM-65869758431581","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371760828753,"sku":"SM-65869758464349","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371760861521,"sku":"SM-65869758497117","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371760894289,"sku":"SM-65869758529885","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371760927057,"sku":"SM-65869758562653","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371760959825,"sku":"SM-65869758595421","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371760992593,"sku":"SM-65869758628189","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371761025361,"sku":"SM-65869758660957","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371761058129,"sku":"SM-65869758693725","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 3XL","offer_id":55371761090897,"sku":"SM-65869758726493","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371761123665,"sku":"SM-65869758759261","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371761156433,"sku":"SM-65869758792029","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371761189201,"sku":"SM-65869758824797","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371761221969,"sku":"SM-65869758857565","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371761254737,"sku":"SM-65869758890333","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 3XL","offer_id":55371761287505,"sku":"SM-65869758923101","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371761320273,"sku":"SM-65869758955869","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371761353041,"sku":"SM-65869758988637","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371761385809,"sku":"SM-65869759021405","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371761418577,"sku":"SM-65869759054173","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371761451345,"sku":"SM-65869759086941","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 3XL","offer_id":55371761484113,"sku":"SM-65869759119709","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ S","offer_id":55371761516881,"sku":"SM-65869759152477","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371761549649,"sku":"SM-65869759185245","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371761582417,"sku":"SM-65869759218013","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371761615185,"sku":"SM-65869759250781","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371761647953,"sku":"SM-65869759283549","price":69.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ 3XL","offer_id":55371761680721,"sku":"SM-65869759316317","price":69.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/75bcbddc-8312-4c1c-8191-562659e925b2_57766d88-c8b6-4e78-8b38-92549ab71ed3.jpg?v=1792459986"},{"product_id":"womens-relaxed-open-front-blazer-jacqueline","title":"Damski żakiet z otwartym przodem o luźnym kroju | Jacqueline","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eJacqueline\u003c\/strong\u003e, luźny żakiet bez zapięcia od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eOtwarty przód\u003c\/li\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go z dopasowanym topem i spodniami z szerokimi nogawkami. W luźnym wydaniu połącz go z jeansami i prostymi sneakersami.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i krój\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL, 4XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-relaxed-open-front-blazer-jacqueline\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\",\"4XL\"],\"colors\":[\"Yellow\",\"Green\",\"Navy\",\"Orange\",\"Blue\",\"Brown\",\"Pink\",\"Light Brown\",\"Red\",\"Burgundy\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOkreśl swój rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. To szacunek, a nie gwarancja dopasowania. Typ sylwetki, warstwy ubrań i krój odzieży mogą wpływać na to, co pasuje najlepiej.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL, 3XL, 4XL. Jeśli szacowanie jest niedostępne, użyj powyższych szczegółów produktu i własnego standardowego rozmiaru jako punktu odniesienia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Żółty \/ S","offer_id":55371761746257,"sku":"SM-65869738508637","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ M","offer_id":55371761779025,"sku":"SM-65869738541405","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ L","offer_id":55371761811793,"sku":"SM-65869738574173","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XL","offer_id":55371761844561,"sku":"SM-65869738606941","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371761877329,"sku":"SM-65869738639709","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ 3XL","offer_id":55371761910097,"sku":"SM-65869738672477","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ 4XL","offer_id":55371761942865,"sku":"SM-65869738705245","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ S","offer_id":55371761975633,"sku":"SM-65869738738013","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ M","offer_id":55371762008401,"sku":"SM-65869738770781","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ L","offer_id":55371762041169,"sku":"SM-65869738803549","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XL","offer_id":55371762073937,"sku":"SM-65869738836317","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371762106705,"sku":"SM-65869738869085","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ 3XL","offer_id":55371762139473,"sku":"SM-65869738901853","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ 4XL","offer_id":55371762172241,"sku":"SM-65869738934621","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ S","offer_id":55371762205009,"sku":"SM-65869738967389","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371762237777,"sku":"SM-65869739000157","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371762270545,"sku":"SM-65869739032925","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371762303313,"sku":"SM-65869739065693","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371762336081,"sku":"SM-65869739098461","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ 3XL","offer_id":55371762368849,"sku":"SM-65869739131229","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ 4XL","offer_id":55371762401617,"sku":"SM-65869739163997","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ S","offer_id":55371762434385,"sku":"SM-65869739196765","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ M","offer_id":55371762467153,"sku":"SM-65869739229533","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ L","offer_id":55371762499921,"sku":"SM-65869739262301","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ XL","offer_id":55371762532689,"sku":"SM-65869739295069","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ XXL","offer_id":55371762565457,"sku":"SM-65869739327837","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ 3XL","offer_id":55371762598225,"sku":"SM-65869739360605","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ 4XL","offer_id":55371762630993,"sku":"SM-65869739393373","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371762663761,"sku":"SM-65869739426141","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371762696529,"sku":"SM-65869739458909","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371762729297,"sku":"SM-65869739491677","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371762762065,"sku":"SM-65869739524445","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371762794833,"sku":"SM-65869739557213","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 3XL","offer_id":55371762827601,"sku":"SM-65869739589981","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 4XL","offer_id":55371762860369,"sku":"SM-65869739622749","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ S","offer_id":55371762893137,"sku":"SM-65869739655517","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ M","offer_id":55371762925905,"sku":"SM-65869739688285","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ L","offer_id":55371762958673,"sku":"SM-65869739721053","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XL","offer_id":55371762991441,"sku":"SM-65869739753821","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XXL","offer_id":55371763024209,"sku":"SM-65869739786589","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ 3XL","offer_id":55371763056977,"sku":"SM-65869739819357","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ 4XL","offer_id":55371763089745,"sku":"SM-65869739852125","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371763122513,"sku":"SM-65869739884893","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371763155281,"sku":"SM-65869739917661","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371763188049,"sku":"SM-65869739950429","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371763220817,"sku":"SM-65869739983197","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371763253585,"sku":"SM-65869740015965","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 3XL","offer_id":55371763286353,"sku":"SM-65869740048733","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 4XL","offer_id":55371763319121,"sku":"SM-65869740081501","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ S","offer_id":55371763351889,"sku":"SM-65869740114269","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ M","offer_id":55371763384657,"sku":"SM-65869740147037","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ L","offer_id":55371763417425,"sku":"SM-65869740179805","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ XL","offer_id":55371763450193,"sku":"SM-65869740212573","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ XXL","offer_id":55371763482961,"sku":"SM-65869740245341","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ 3XL","offer_id":55371763515729,"sku":"SM-65869740278109","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jasnobrązowy \/ 4XL","offer_id":55371763548497,"sku":"SM-65869740310877","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371763581265,"sku":"SM-65869740343645","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371763614033,"sku":"SM-65869740376413","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371763646801,"sku":"SM-65869740409181","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371763679569,"sku":"SM-65869740441949","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371763712337,"sku":"SM-65869740474717","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ 3XL","offer_id":55371763745105,"sku":"SM-65869740507485","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ 4XL","offer_id":55371763777873,"sku":"SM-65869740540253","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ S","offer_id":55371763810641,"sku":"SM-65869740573021","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ M","offer_id":55371763843409,"sku":"SM-65869740605789","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ L","offer_id":55371763876177,"sku":"SM-65869740638557","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XL","offer_id":55371763908945,"sku":"SM-65869740671325","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ XXL","offer_id":55371763941713,"sku":"SM-65869740704093","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ 3XL","offer_id":55371763974481,"sku":"SM-65869740736861","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Burgund \/ 4XL","offer_id":55371764007249,"sku":"SM-65869740769629","price":54.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/Blazervoordames_fad8dfce-b0cc-4788-9cca-1476b343f5ca.png?v=1792459991"},{"product_id":"womens-long-sleeve-open-front-blazer-jana","title":"Damski żakiet z długim rękawem bez zapięcia | Jana","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eJana\u003c\/strong\u003e, żakiet z długim rękawem i otwartym przodem od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eOtwarty przód\u003c\/li\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż go na cienki golf lub klasyczną koszulę. Proste spodnie i mała torebka dopełnią stylizację.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i krój\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-long-sleeve-open-front-blazer-jana\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Black\",\"White\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj szacowany rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij narzędzie do wyboru rozmiaru\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie szacujące jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ S","offer_id":55371764040017,"sku":"SM-65869735756125","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371764072785,"sku":"SM-65869735788893","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371764105553,"sku":"SM-65869735821661","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371764138321,"sku":"SM-65869735854429","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371764171089,"sku":"SM-65869735887197","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371764203857,"sku":"SM-65869735919965","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371764236625,"sku":"SM-65869735952733","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371764269393,"sku":"SM-65869735985501","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371764302161,"sku":"SM-65869736018269","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371764334929,"sku":"SM-65869736051037","price":49.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/HTB1n3tjXdzvK1RkSnfoq6zMwVXaF_f566719c-259e-4f61-b184-c485a1afbc6a.jpg?v=1792459991"},{"product_id":"womens-fitted-office-blazer-annika","title":"Dopasowany żakiet damski | Annika","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eAnnika\u003c\/strong\u003e, dopasowany żakiet biurowy od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\u003cli\u003eKlasyczna sylwetka żakietu\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go ze spodniami w kant i gładkim topem. Do noszenia na co dzień wybierz jeansy, proste buty i dyskretne dodatki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL, 3XL, 4XL, 5XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-fitted-office-blazer-annika\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"3XL\",\"4XL\",\"5XL\"],\"colors\":[\"Black\",\"Blue\",\"Red\",\"Yellow\",\"Pink\",\"White\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki wybrać rozmiar?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj wstępny rozmiar na podstawie swojego wzrostu i wagi. To szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy ubrania oraz krój odzieży mogą wpłynąć na to, co będzie pasować najlepiej.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary obecnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL, 3XL, 4XL, 5XL. Jeśli kalkulator jest niedostępny, użyj powyższych szczegółów produktu oraz swojego zazwyczaj wybieranego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ S","offer_id":55371764433233,"sku":"SM-65869736903005","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371764466001,"sku":"SM-65869736935773","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371764498769,"sku":"SM-65869736968541","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371764531537,"sku":"SM-65869737001309","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371764564305,"sku":"SM-65869737034077","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371764597073,"sku":"SM-65869737066845","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 4XL","offer_id":55371764629841,"sku":"SM-65869737099613","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 5XL","offer_id":55371764662609,"sku":"SM-65869737132381","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371764695377,"sku":"SM-65869737165149","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371764728145,"sku":"SM-65869737197917","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371764760913,"sku":"SM-65869737230685","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371764793681,"sku":"SM-65869737263453","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371764826449,"sku":"SM-65869737296221","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 3XL","offer_id":55371764859217,"sku":"SM-65869737328989","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 4XL","offer_id":55371764891985,"sku":"SM-65869737361757","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 5XL","offer_id":55371764924753,"sku":"SM-65869737394525","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371764957521,"sku":"SM-65869737427293","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371764990289,"sku":"SM-65869737460061","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371765023057,"sku":"SM-65869737492829","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371765055825,"sku":"SM-65869737525597","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371765088593,"sku":"SM-65869737558365","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ 3XL","offer_id":55371765121361,"sku":"SM-65869737591133","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ 4XL","offer_id":55371765154129,"sku":"SM-65869737623901","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ 5XL","offer_id":55371765186897,"sku":"SM-65869737656669","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ S","offer_id":55371765219665,"sku":"SM-65869737689437","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ M","offer_id":55371765252433,"sku":"SM-65869737722205","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ L","offer_id":55371765285201,"sku":"SM-65869737754973","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XL","offer_id":55371765317969,"sku":"SM-65869737787741","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371765350737,"sku":"SM-65869737820509","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ 3XL","offer_id":55371765383505,"sku":"SM-65869737853277","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ 4XL","offer_id":55371765416273,"sku":"SM-65869737886045","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ 5XL","offer_id":55371765449041,"sku":"SM-65869737918813","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371765481809,"sku":"SM-65869737951581","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371765514577,"sku":"SM-65869737984349","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371765547345,"sku":"SM-65869738017117","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371765580113,"sku":"SM-65869738049885","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371765612881,"sku":"SM-65869738082653","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 3XL","offer_id":55371765645649,"sku":"SM-65869738115421","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 4XL","offer_id":55371765678417,"sku":"SM-65869738148189","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ 5XL","offer_id":55371765711185,"sku":"SM-65869738180957","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371765743953,"sku":"SM-65869738213725","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371765776721,"sku":"SM-65869738246493","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371765809489,"sku":"SM-65869738279261","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371765842257,"sku":"SM-65869738312029","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371765875025,"sku":"SM-65869738344797","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 3XL","offer_id":55371765907793,"sku":"SM-65869738377565","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 4XL","offer_id":55371765940561,"sku":"SM-65869738410333","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ 5XL","offer_id":55371765973329,"sku":"SM-65869738443101","price":39.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/43470af7-22f8-42ab-9d74-6bbaf8dbc137_c3d019f6-4e06-47c1-a358-eb308eed08e5.png?v=1792459994"},{"product_id":"womens-open-front-blazer-susanne","title":"Damski żakiet z otwartym przodem | Susanne","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eSusanne\u003c\/strong\u003e, otwarty żakiet od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eOtwarty przód\u003c\/li\u003e\n\n\u003cli\u003eSwobodny krój\u003c\/li\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go z dopasowanym topem i spodniami z szerokimi nogawkami. Aby uzyskać swobodny wygląd, połącz go z dżinsami i prostymi trampkami.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i krój\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-open-front-blazer-susanne\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Red\",\"Pink\",\"Orange\",\"Purple\",\"Green\",\"Navy\",\"Black\",\"Blue\",\"Khaki\",\"Beige\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Typ sylwetki, warstwy odzieży i krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje pomiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L, XL, 2XL. Jeśli szacowanie jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czerwony \/ XS","offer_id":55371766038865,"sku":"SM-65869733069149","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371766071633,"sku":"SM-65869733101917","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371766104401,"sku":"SM-65869733134685","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371766137169,"sku":"SM-65869733167453","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371766169937,"sku":"SM-65869733200221","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371766202705,"sku":"SM-65869733232989","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XS","offer_id":55371766235473,"sku":"SM-65869733265757","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371766268241,"sku":"SM-65869733298525","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371766301009,"sku":"SM-65869733331293","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371766333777,"sku":"SM-65869733364061","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371766366545,"sku":"SM-65869733396829","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371766399313,"sku":"SM-65869733429597","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ XS","offer_id":55371766432081,"sku":"SM-65869733462365","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ S","offer_id":55371766464849,"sku":"SM-65869733495133","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ M","offer_id":55371766497617,"sku":"SM-65869733527901","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ L","offer_id":55371766530385,"sku":"SM-65869733560669","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ XL","offer_id":55371766563153,"sku":"SM-65869733593437","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Pomarańczowy \/ XXL","offer_id":55371766595921,"sku":"SM-65869733626205","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ XS","offer_id":55371766628689,"sku":"SM-65869733658973","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ S","offer_id":55371766661457,"sku":"SM-65869733691741","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ M","offer_id":55371766694225,"sku":"SM-65869733724509","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ L","offer_id":55371766726993,"sku":"SM-65869733757277","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ XL","offer_id":55371766759761,"sku":"SM-65869733790045","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ XXL","offer_id":55371766792529,"sku":"SM-65869733822813","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XS","offer_id":55371766825297,"sku":"SM-65869733855581","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ S","offer_id":55371766858065,"sku":"SM-65869733888349","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ M","offer_id":55371766890833,"sku":"SM-65869733921117","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ L","offer_id":55371766923601,"sku":"SM-65869733953885","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XL","offer_id":55371766956369,"sku":"SM-65869733986653","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371766989137,"sku":"SM-65869734019421","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XS","offer_id":55371767021905,"sku":"SM-65869734052189","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ S","offer_id":55371767054673,"sku":"SM-65869734084957","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371767087441,"sku":"SM-65869734117725","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371767120209,"sku":"SM-65869734150493","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371767152977,"sku":"SM-65869734183261","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371767185745,"sku":"SM-65869734216029","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XS","offer_id":55371767218513,"sku":"SM-65869734248797","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371767251281,"sku":"SM-65869734281565","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371767284049,"sku":"SM-65869734314333","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371767316817,"sku":"SM-65869734347101","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371767349585,"sku":"SM-65869734379869","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371767382353,"sku":"SM-65869734412637","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XS","offer_id":55371767415121,"sku":"SM-65869734445405","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371767447889,"sku":"SM-65869734478173","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371767480657,"sku":"SM-65869734510941","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371767513425,"sku":"SM-65869734543709","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371767546193,"sku":"SM-65869734576477","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371767578961,"sku":"SM-65869734609245","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XS","offer_id":55371767611729,"sku":"SM-65869734642013","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ S","offer_id":55371767644497,"sku":"SM-65869734674781","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371767677265,"sku":"SM-65869734707549","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371767710033,"sku":"SM-65869734740317","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371767742801,"sku":"SM-65869734773085","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371767775569,"sku":"SM-65869734805853","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XS","offer_id":55371767808337,"sku":"SM-65869734838621","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371767841105,"sku":"SM-65869734871389","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371767873873,"sku":"SM-65869734904157","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371767906641,"sku":"SM-65869734936925","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371767939409,"sku":"SM-65869734969693","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371767972177,"sku":"SM-65869735002461","price":49.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/da145632-c4b0-434e-927a-c4452338c6d6.ecba8b49a81c1be761315c887987e662.jpg?v=1792459997"},{"product_id":"womens-classic-single-button-blazer-sabina","title":"Klasyczny damski żakiet jednorzędowy | Sabina","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eSabinę\u003c\/strong\u003e, klasyczną marynarkę zapinaną na jeden guzik od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na jeden guzik\u003c\/li\u003e\n\n\u003cli\u003eKlasyczny fason marynarki\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz ją ze spodniami w kant i gładkim topem. Do codziennych stylizacji wybierz jeansy, proste obuwie i subtelne dodatki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy odzieży, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-classic-single-button-blazer-sabina\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Black\",\"Blue\",\"Green\",\"Red\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj swój rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUżywa tylko rozmiarów aktualnie dostępnych w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli szacownik jest niedostępny, wykorzystaj powyższe szczegóły produktu oraz swój standardowy rozmiar jako punkt wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ S","offer_id":55371777638737,"sku":"SM-65869682737501","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371777671505,"sku":"SM-65869682770269","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371777704273,"sku":"SM-65869682803037","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371777737041,"sku":"SM-65869682835805","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371777769809,"sku":"SM-65869682868573","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371777802577,"sku":"SM-65869682901341","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371777835345,"sku":"SM-65869682934109","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371777868113,"sku":"SM-65869682966877","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371777900881,"sku":"SM-65869682999645","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371777933649,"sku":"SM-65869683032413","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ S","offer_id":55371777966417,"sku":"SM-65869683065181","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ M","offer_id":55371777999185,"sku":"SM-65869683097949","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ L","offer_id":55371778031953,"sku":"SM-65869683130717","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XL","offer_id":55371778064721,"sku":"SM-65869683163485","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371778097489,"sku":"SM-65869683196253","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371778130257,"sku":"SM-65869683229021","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371778163025,"sku":"SM-65869683261789","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371778195793,"sku":"SM-65869683294557","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371778228561,"sku":"SM-65869683327325","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371778261329,"sku":"SM-65869683360093","price":84.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/bd29692a-3a7f-459f-8bcf-a72e8800f0b2.webp?v=1792460018"},{"product_id":"womens-long-double-breasted-blazer-tamara","title":"Długi damski żakiet dwurzędowy | Tamara","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eTamarę\u003c\/strong\u003e — długą marynarkę dwurzędową marki Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eDwurzędowy przód\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eDługi fason\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak ją stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz ją z dopasowanym topem i spodniami z szerokimi nogawkami. Na co dzień zestaw ją z dżinsami i prostymi sneakersami.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz nosić pod spodem.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-long-double-breasted-blazer-tamara\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Blue\",\"Beige\",\"Black\",\"Bright Pink\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, który rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eDobierz mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij dobór rozmiaru\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eWstępnie oszacuj rozmiar na podstawie wzrostu i wagi. To jedynie przybliżenie, a nie gwarancja dopasowania. Na to, jaki rozmiar będzie najlepszy, mogą wpływać sylwetka, warstwy ubrań i krój odzieży.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eRozmiarówka\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz rozmiarówkę\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eDamska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eMęska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eDobierz mój wstępny rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględniane są tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: XS, S, M, L, XL, 2XL. Jeśli narzędzie doboru rozmiaru jest niedostępne, kieruj się powyższymi informacjami o produkcie i typowym dla siebie dopasowaniem.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Niebieski \/ XS","offer_id":55371790418257,"sku":"SM-65869383270749","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371790451025,"sku":"SM-65869383303517","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371790483793,"sku":"SM-65869383336285","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371790516561,"sku":"SM-65869383369053","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371790549329,"sku":"SM-65869383401821","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371790582097,"sku":"SM-65869383434589","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XS","offer_id":55371790614865,"sku":"SM-65869383467357","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371790647633,"sku":"SM-65869383500125","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371790680401,"sku":"SM-65869383532893","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371790713169,"sku":"SM-65869383565661","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371790745937,"sku":"SM-65869383598429","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371790778705,"sku":"SM-65869383631197","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XS","offer_id":55371790811473,"sku":"SM-65869383663965","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371790844241,"sku":"SM-65869383696733","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371790877009,"sku":"SM-65869383729501","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371790909777,"sku":"SM-65869383762269","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371790942545,"sku":"SM-65869383795037","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371790975313,"sku":"SM-65869383827805","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jaskrawy róż \/ XS","offer_id":55371791008081,"sku":"SM-65869383860573","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jaskrawy róż \/ S","offer_id":55371791040849,"sku":"SM-65869383893341","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jaskrawy róż \/ M","offer_id":55371791073617,"sku":"SM-65869383926109","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jaskrawy róż \/ L","offer_id":55371791106385,"sku":"SM-65869383958877","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jaskrawy róż \/ XL","offer_id":55371791139153,"sku":"SM-65869383991645","price":54.99,"currency_code":"USD","in_stock":true},{"title":"Jaskrawy róż \/ XXL","offer_id":55371791171921,"sku":"SM-65869384024413","price":54.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/Womens-Longline-Blazer-Double-Breasted-Tailoring-for-Effortless-Elegance-4.png?v=1792460042"},{"product_id":"womens-single-breasted-blazer-with-roll-up-sleeves-theresa","title":"Damska marynarka jednorzędowa z podwijanymi rękawami | Theresa","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eTheresę\u003c\/strong\u003e — marynarkę jednorzędową z podwijanymi rękawami od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eJednorzędowe zapięcie z przodu\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\u003cli\u003ePodwijane rękawy\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak ją stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż ją na cienki golf lub klasyczną koszulę. Proste spodnie i mała torebka dopełnią całość.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-single-breasted-blazer-with-roll-up-sleeves-theresa\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Navy\",\"Red\",\"Blue\",\"Gray\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, który rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eSprawdź szacunkowy rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eDobierz rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij dobór rozmiaru\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi. To jedynie szacunek, który nie gwarantuje idealnego dopasowania. Na najlepsze dopasowanie mogą wpływać sylwetka, dodatkowe warstwy i krój ubrania.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eTabela rozmiarów\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz tabelę\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eDobierz rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględniane są tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie doboru rozmiaru jest niedostępne, jako punkt wyjścia wykorzystaj powyższe informacje o produkcie i rozmiar, który zwykle nosisz.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Granatowy \/ S","offer_id":55371791663441,"sku":"SM-65869382418781","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371791696209,"sku":"SM-65869382451549","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371791728977,"sku":"SM-65869382484317","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371791761745,"sku":"SM-65869382517085","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371791794513,"sku":"SM-65869382549853","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371791827281,"sku":"SM-65869382582621","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371791860049,"sku":"SM-65869382615389","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371791892817,"sku":"SM-65869382648157","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371791925585,"sku":"SM-65869382680925","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371791958353,"sku":"SM-65869382713693","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371791991121,"sku":"SM-65869382746461","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371792023889,"sku":"SM-65869382779229","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371792056657,"sku":"SM-65869382811997","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371792089425,"sku":"SM-65869382844765","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371792122193,"sku":"SM-65869382877533","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ S","offer_id":55371792154961,"sku":"SM-65869382910301","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371792187729,"sku":"SM-65869382943069","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371792220497,"sku":"SM-65869382975837","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371792253265,"sku":"SM-65869383008605","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371792286033,"sku":"SM-65869383041373","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371792318801,"sku":"SM-65869383074141","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371792351569,"sku":"SM-65869383106909","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371792384337,"sku":"SM-65869383139677","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371792417105,"sku":"SM-65869383172445","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371792449873,"sku":"SM-65869383205213","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/Womens-Tailored-Blazer-Classic-Single-Breasted-with-Roll-Up-Sleeves.jpg?v=1792460042"},{"product_id":"womens-tailored-button-front-vest-nora","title":"Dopasowana kamizelka damska zapinana z przodu na guziki | Nora","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eNorę\u003c\/strong\u003e — dopasowaną kamizelkę zapinaną z przodu na guziki od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eBez rękawów\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak ją stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz ją z koszulą o prostym kroju i spodniami z wysokim stanem. W luźniejszej stylizacji na co dzień wybierz bluzkę z długim rękawem.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz nosić pod spodem.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C. Nie wybielać. Nie suszyć w suszarce bębnowej. Nadać kształt i suszyć na płasko. Zawsze stosować się do instrukcji na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-tailored-button-front-vest-nora\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Khaki\",\"Coffee\",\"Black\",\"Dark Red\",\"White\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj podpowiedź dotyczącą rozmiaru na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eDobierz rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij dobór rozmiaru\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjną podpowiedź dotyczącą rozmiaru na podstawie wzrostu i wagi. To szacunek, a nie gwarancja idealnego dopasowania. Sylwetka, warstwy ubrań i krój mogą wpłynąć na to, jaki rozmiar będzie najlepszy.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eTabela rozmiarów\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz tabelę\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eDobierz rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględniane są wyłącznie rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie doboru rozmiaru jest niedostępne, kieruj się informacjami o ubraniu powyżej oraz rozmiarem, który zwykle nosisz.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Khaki \/ S","offer_id":55371796644177,"sku":"SM-65868863897949","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371796676945,"sku":"SM-65868863930717","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371796709713,"sku":"SM-65868863963485","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371796742481,"sku":"SM-65868863996253","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371796775249,"sku":"SM-65868864029021","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ S","offer_id":55371796808017,"sku":"SM-65868864061789","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ M","offer_id":55371796840785,"sku":"SM-65868864094557","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ L","offer_id":55371796873553,"sku":"SM-65868864127325","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ XL","offer_id":55371796906321,"sku":"SM-65868864160093","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ XXL","offer_id":55371796939089,"sku":"SM-65868864192861","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371796971857,"sku":"SM-65868864225629","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371797004625,"sku":"SM-65868864258397","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371797037393,"sku":"SM-65868864291165","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371797070161,"sku":"SM-65868864323933","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371797102929,"sku":"SM-65868864356701","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ S","offer_id":55371797135697,"sku":"SM-65868864389469","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ M","offer_id":55371797168465,"sku":"SM-65868864422237","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ L","offer_id":55371797201233,"sku":"SM-65868864455005","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ XL","offer_id":55371797234001,"sku":"SM-65868864487773","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ XXL","offer_id":55371797266769,"sku":"SM-65868864520541","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371797299537,"sku":"SM-65868864553309","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371797332305,"sku":"SM-65868864586077","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371797365073,"sku":"SM-65868864618845","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371797397841,"sku":"SM-65868864651613","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371797430609,"sku":"SM-65868864684381","price":39.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/rmellose-weste-damen-knopfleiste-tailliert-elegant-10.jpg?v=1792460051"},{"product_id":"womens-fitted-velvet-blazer-with-gold-tone-buttons-elisabeth","title":"Dopasowana damska marynarka z aksamitu ze złotymi guzikami | Elisabeth","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eElisabeth\u003c\/strong\u003e, dopasowany aksamitny żakiet ze złotymi guzikami od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eAksamitna faktura\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\u003cli\u003eZłote guziki\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż go na cienki golf lub klasyczną koszulę. Całość stylizacji dopełnią proste spodnie i mała torebka.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać ręcznie w zimnej wodzie. Nie wybielać. Nie suszyć w suszarce bębnowej. Nadać kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcją na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-fitted-velvet-blazer-with-gold-tone-buttons-elisabeth\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Navy\",\"Green\",\"Dark Burgundy\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOtrzymaj szacowany rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUżywa tylko rozmiarów aktualnie dostępnych w sprzedaży. Twoje pomiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli szacowanie jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu odniesienia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Granatowy \/ S","offer_id":55371849138513,"sku":"SM-65868647334237","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371849171281,"sku":"SM-65868647367005","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371849204049,"sku":"SM-65868647399773","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371849236817,"sku":"SM-65868647432541","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371849269585,"sku":"SM-65868647465309","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ S","offer_id":55371849302353,"sku":"SM-65868647498077","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ M","offer_id":55371849335121,"sku":"SM-65868647530845","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ L","offer_id":55371849367889,"sku":"SM-65868647563613","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XL","offer_id":55371849400657,"sku":"SM-65868647596381","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371849433425,"sku":"SM-65868647629149","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Ciemny burgund \/ S","offer_id":55371849466193,"sku":"SM-65868647661917","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Ciemny burgund \/ M","offer_id":55371849498961,"sku":"SM-65868647694685","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Ciemny burgund \/ L","offer_id":55371849531729,"sku":"SM-65868647727453","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Ciemny burgund \/ XL","offer_id":55371849564497,"sku":"SM-65868647760221","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Ciemny burgund \/ XXL","offer_id":55371849597265,"sku":"SM-65868647792989","price":89.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-samt-blazer-mit-goldknpfen-schlanker-schnitt-1.jpg?v=1792460136"},{"product_id":"womens-fitted-double-breasted-peplum-blazer-greta","title":"Dopasowany dwurzędowy żakiet z baskinką | Greta","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eGretę\u003c\/strong\u003e, dopasowaną dwurzędową marynarkę z baskinką od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eDwurzędowe zapięcie\u003c\/li\u003e\n\n\u003cli\u003eDługie rękawy\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\u003cli\u003ePodkreślająca talię baskinka\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz ją ze spodniami w kant i gładkim topem. Do codziennych stylizacji wybierz jeansy, proste buty i dyskretne dodatki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C (86°F). Nie wybielać. Nie suszyć w suszarce bębnowej. Nadać kształt i suszyć na płasko. Zawsze przestrzegaj zaleceń na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-fitted-double-breasted-peplum-blazer-greta\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\"],\"colors\":[\"Dark Gray\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eOkreśl orientacyjny rozmiar na podstawie wzrostu i wagi. Jest to szacunek, nie gwarancja idealnego dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczny wybór.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględnia tylko rozmiary aktualnie dostępne w sprzedaży. Twoje dane pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL. Jeśli narzędzie nie działa, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Ciemnoszary \/ S","offer_id":55371849662801,"sku":"SM-65868648481117","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ M","offer_id":55371849695569,"sku":"SM-65868648513885","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ L","offer_id":55371849728337,"sku":"SM-65868648546653","price":64.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ XL","offer_id":55371849761105,"sku":"SM-65868648579421","price":64.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-taillierter-peplum-blazer-doppelreihig-langarm-6.jpg?v=1792460137"},{"product_id":"womens-tailored-button-front-vest-clara","title":"Damski dopasowany gorset zapinany na guziki z przodu | Clara","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eClara\u003c\/strong\u003e, dopasowany kamizelkę zapinaną na guziki z przodu od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eModel bez rękawów\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw ją z elegancką koszulą i spodniami z wysokim stanem. Na bardziej swobodny dzień wybierz top z długim rękawem.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i fason\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz nosić pod spodem.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym programie w temperaturze 86°F (30°C). Nie wybielać. Suszyć w suszarce bębnowej w niskiej temperaturze. Uformować i suszyć na płasko. Zawsze stosuj się do instrukcji na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-tailored-button-front-vest-clara\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Khaki\",\"Coffee\",\"Black\",\"Dark Red\",\"White\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOtrzymaj szacunkowy rozmiar na podstawie swojego wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eOtrzymaj orientacyjny rozmiar wyjściowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Budowa ciała, warstwy i krój ubrania mogą wpłynąć na najlepszy dla Ciebie rozmiar.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eReferencja dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz referencję\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiary damskie\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiary męskie\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar wyjściowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary obecnie dostępne do zakupu. Twoje dane pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL, 2XL. Jeśli kalkulator rozmiarów jest niedostępny, skorzystaj z powyższych szczegółów ubrania i swojego zazwyczaj noszonego fasonu jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Khaki \/ S","offer_id":55371896717649,"sku":"SM-65868521439581","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371896750417,"sku":"SM-65868521472349","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371896783185,"sku":"SM-65868521505117","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371896815953,"sku":"SM-65868521537885","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371896848721,"sku":"SM-65868521570653","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ S","offer_id":55371896881489,"sku":"SM-65868521603421","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ M","offer_id":55371896914257,"sku":"SM-65868521636189","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ L","offer_id":55371896947025,"sku":"SM-65868521668957","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ XL","offer_id":55371896979793,"sku":"SM-65868521701725","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Kawa \/ XXL","offer_id":55371897012561,"sku":"SM-65868521734493","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371897045329,"sku":"SM-65868521767261","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371897078097,"sku":"SM-65868521800029","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371897110865,"sku":"SM-65868521832797","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371897143633,"sku":"SM-65868521865565","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371897176401,"sku":"SM-65868521898333","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ S","offer_id":55371897209169,"sku":"SM-65868521931101","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ M","offer_id":55371897241937,"sku":"SM-65868521963869","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ L","offer_id":55371897274705,"sku":"SM-65868521996637","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ XL","offer_id":55371897307473,"sku":"SM-65868522029405","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoczerwony \/ XXL","offer_id":55371897340241,"sku":"SM-65868522062173","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371897373009,"sku":"SM-65868522094941","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371897405777,"sku":"SM-65868522127709","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371897438545,"sku":"SM-65868522160477","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371897471313,"sku":"SM-65868522193245","price":39.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371897504081,"sku":"SM-65868522226013","price":39.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/bodywarmer-damen-elegante-rmellose-knopfleisten-weste-10.jpg?v=1792460230"},{"product_id":"womens-collared-denim-jacket-with-pockets-annika","title":"Damska kurtka jeansowa z kołnierzykiem i kieszeniami | Annika","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eAnnika\u003c\/strong\u003e, kurtkę jeansową z kołnierzykiem i kieszeniami od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eTkanina jeansowa\u003c\/li\u003e\n\n\u003cli\u003eKlasyczny kołnierzyk z zagięciem\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\u003cli\u003eKieszenie na piersi\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż ją do lekkiego golfa i spodni z szerokimi nogawkami. Uzupełnij styl prostą torebką i subtelną biżuterią.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i krój\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz nosić pod spodem.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym programie w temperaturze 86°F (30°C). Nie wybielać. Uformować i suszyć na płasko. Zawsze stosuj się do instrukcji na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-collared-denim-jacket-with-pockets-annika\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Gray\",\"Army Green\",\"Blue\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOtrzymaj szacunkowy rozmiar na podstawie swojego wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwacz rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eOtrzymaj przybliżony rozmiar wyjściowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Budowa ciała, warstwy i krój ubrania mogą wpłynąć na najlepszy dla Ciebie rozmiar.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eReferencja dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz referencję\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiary damskie\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiary męskie\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar wyjściowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary obecnie dostępne do zakupu. Twoje dane pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL, 2XL. Jeśli kalkulator rozmiarów jest niedostępny, skorzystaj z powyższych informacji o ubraniu i swojego zazwyczaj noszonego kroju jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Szary \/ S","offer_id":55371900125521,"sku":"SM-65868508528989","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371900158289,"sku":"SM-65868508561757","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371900191057,"sku":"SM-65868508594525","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371900223825,"sku":"SM-65868508627293","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371900256593,"sku":"SM-65868508660061","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ S","offer_id":55371900289361,"sku":"SM-65868508692829","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ M","offer_id":55371900322129,"sku":"SM-65868508725597","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ L","offer_id":55371900354897,"sku":"SM-65868508758365","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ XL","offer_id":55371900387665,"sku":"SM-65868508791133","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ XXL","offer_id":55371900420433,"sku":"SM-65868508823901","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371900453201,"sku":"SM-65868508856669","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371900485969,"sku":"SM-65868508889437","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371900518737,"sku":"SM-65868508922205","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371900551505,"sku":"SM-65868508954973","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371900584273,"sku":"SM-65868508987741","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371900617041,"sku":"SM-65868509020509","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371900649809,"sku":"SM-65868509053277","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371900682577,"sku":"SM-65868509086045","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371900715345,"sku":"SM-65868509118813","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371900748113,"sku":"SM-65868509151581","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-jeansjacke-mit-knopfleiste-brusttaschen-hemdblusenkrag-1.jpg?v=1792460238"},{"product_id":"womens-patterned-blazer-with-ruffled-shoulders-amelie","title":"Damska wzorzysta marynarka z falbanami na ramionach | Amelie","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eAmelie\u003c\/strong\u003e, wzorzysty żakiet z marszczeniami na ramionach od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eWysoki kołnierz lub stójka\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na zamek błyskawiczny z przodu\u003c\/li\u003e\n\n\u003cli\u003eDopasowany krój\u003c\/li\u003e\n\n\u003cli\u003eOzdobne marszczenia\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz go ze spodniami w kant i gładkim topem. Do noszenia na co dzień wybierz jeansy, proste obuwie i subtelne dodatki.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które zamierzasz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w programie do tkanin delikatnych w temperaturze 30°C (86°F). Nie wybielać. Nie suszyć w suszarce bębnowej. Uformować i suszyć na płasko. Zawsze przestrzegaj instrukcji na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-patterned-blazer-with-ruffled-shoulders-amelie\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Black\",\"Khaki\",\"Dark Pink\",\"White\",\"Dark Gray\",\"Pink\",\"Brown\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na wybór najlepszego rozmiaru.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli szacowanie jest niedostępne, użyj powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Czarny \/ S","offer_id":55371904287057,"sku":"SM-65868505088349","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371904319825,"sku":"SM-65868505121117","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371904352593,"sku":"SM-65868505153885","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371904385361,"sku":"SM-65868505186653","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371904418129,"sku":"SM-65868505219421","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ S","offer_id":55371904450897,"sku":"SM-65868505252189","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371904483665,"sku":"SM-65868505284957","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371904516433,"sku":"SM-65868505317725","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371904549201,"sku":"SM-65868505350493","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XXL","offer_id":55371904581969,"sku":"SM-65868505383261","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ S","offer_id":55371904614737,"sku":"SM-65868505416029","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ M","offer_id":55371904647505,"sku":"SM-65868505448797","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ L","offer_id":55371904680273,"sku":"SM-65868505481565","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ XL","offer_id":55371904713041,"sku":"SM-65868505514333","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoróżowy \/ XXL","offer_id":55371904745809,"sku":"SM-65868505547101","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371904778577,"sku":"SM-65868505579869","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371904811345,"sku":"SM-65868505612637","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371904844113,"sku":"SM-65868505645405","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371904876881,"sku":"SM-65868505678173","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371904909649,"sku":"SM-65868505710941","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ S","offer_id":55371904942417,"sku":"SM-65868505743709","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ M","offer_id":55371904975185,"sku":"SM-65868505776477","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ L","offer_id":55371905007953,"sku":"SM-65868505809245","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ XL","offer_id":55371905040721,"sku":"SM-65868505842013","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Ciemnoszary \/ XXL","offer_id":55371905073489,"sku":"SM-65868505874781","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371905106257,"sku":"SM-65868505907549","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371905139025,"sku":"SM-65868505940317","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371905171793,"sku":"SM-65868505973085","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371905204561,"sku":"SM-65868506005853","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371905237329,"sku":"SM-65868506038621","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ S","offer_id":55371905270097,"sku":"SM-65868506071389","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ M","offer_id":55371905302865,"sku":"SM-65868506104157","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ L","offer_id":55371905335633,"sku":"SM-65868506136925","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XL","offer_id":55371905368401,"sku":"SM-65868506169693","price":84.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XXL","offer_id":55371905401169,"sku":"SM-65868506202461","price":84.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-taillierte-blazer-jacke-mit-rschenrmeln-grafik-print-r-1.jpg?v=1792460247"},{"product_id":"womens-long-oversized-blazer-elfriede","title":"Damska długa marynarka oversize | Elfriede","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eElfriede\u003c\/strong\u003e, długą marynarkę oversize od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eKołnierz z klapami\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guzik\u003c\/li\u003e\n\n\u003cli\u003eLuźny krój oversize\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż ją na cienki golf lub klasyczną koszulę. Całość uzupełnią proste spodnie i mała torebka.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w temperaturze 30°C (86°F), w delikatnym cyklu. Nie suszyć w suszarce bębnowej. Nadać kształt i suszyć na płasko. Przechowywać z dala od bezpośrednich źródeł ciepła i silnego światła słonecznego. Zawsze postępuj zgodnie z instrukcją na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-long-oversized-blazer-elfriede\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\"],\"colors\":[\"Beige\",\"Gray\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj szacunkowy rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar początkowy na podstawie swojego wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eDotyczy tylko rozmiarów aktualnie dostępnych w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L. Jeśli narzędzie szacujące jest niedostępne, skorzystaj z powyższych szczegółów produktu oraz własnych preferencji dotyczących dopasowania jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Beżowy \/ S","offer_id":55371907105105,"sku":"SM-65868498960733","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371907137873,"sku":"SM-65868498993501","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371907170641,"sku":"SM-65868499026269","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ S","offer_id":55371907203409,"sku":"SM-65868499059037","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371907236177,"sku":"SM-65868499091805","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371907268945,"sku":"SM-65868499124573","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371907301713,"sku":"SM-65868499157341","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371907334481,"sku":"SM-65868499190109","price":49.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371907367249,"sku":"SM-65868499222877","price":49.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-oversized-longblazer-mit-reverskragen-und-knopfdetails-1.jpg?v=1792460252"},{"product_id":"womens-cropped-corduroy-snap-front-vest-marie","title":"Damska krótka kamizelka sztruksowa zapinana na zatrzaski | Marie","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eMarie\u003c\/strong\u003e, krótki sztruksowy bezrękawnik zapinany na zatrzaski od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eSztruks prążkowany\u003c\/li\u003e\n\n\u003cli\u003eWysoki kołnierz lub stójka\u003c\/li\u003e\n\n\u003cli\u003eKrótki fason\u003c\/li\u003e\n\n\u003cli\u003ePikowane wykończenie\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go z prostą koszulą i spodniami z wysokim stanem. Wybierz top z długim rękawem, aby uzyskać bardziej swobodny wygląd.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój odzieży oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C (86°F). Nie wybielać. Nie suszyć w suszarce bębnowej. Nadać kształt i suszyć na płasko. Zawsze postępuj zgodnie z instrukcją na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-cropped-corduroy-snap-front-vest-marie\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\"],\"colors\":[\"Off-White\",\"Pink\",\"Black\",\"Light Blue\",\"Khaki\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiaru\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj wstępny rozmiar na podstawie swojego wzrostu i wagi. To szacunek, a nie gwarancja idealnego dopasowania. Typ sylwetki, warstwy ubrań i krój odzieży mogą wpłynąć na to, co będzie pasować najlepiej.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUżywa tylko rozmiarów dostępnych obecnie w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eDostępne rozmiary: S, M, L, XL. Jeśli narzędzie szacujące nie działa, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Off-White \/ S","offer_id":55371922866513,"sku":"SM-65868469371229","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371922899281,"sku":"SM-65868469403997","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371922932049,"sku":"SM-65868469436765","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ S","offer_id":55371922964817,"sku":"SM-65868469469533","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ S","offer_id":55371922997585,"sku":"SM-65868469502301","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Off-White \/ M","offer_id":55371923030353,"sku":"SM-65868469535069","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371923063121,"sku":"SM-65868469567837","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371923095889,"sku":"SM-65868469600605","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ M","offer_id":55371923128657,"sku":"SM-65868469633373","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ M","offer_id":55371923161425,"sku":"SM-65868469666141","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371923194193,"sku":"SM-65868469698909","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Off-White \/ L","offer_id":55371923226961,"sku":"SM-65868469731677","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371923259729,"sku":"SM-65868469764445","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ L","offer_id":55371923292497,"sku":"SM-65868469797213","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ L","offer_id":55371923325265,"sku":"SM-65868469829981","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Khaki \/ XL","offer_id":55371923358033,"sku":"SM-65868469862749","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Off-White \/ XL","offer_id":55371923390801,"sku":"SM-65868469895517","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371923423569,"sku":"SM-65868469928285","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Jasnoniebieski \/ XL","offer_id":55371923456337,"sku":"SM-65868469961053","price":59.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371923489105,"sku":"SM-65868469993821","price":59.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-corduroy-steppweste-kurzer-bodywarmer-mit-stehkragen-d-9.jpg?v=1792460285"},{"product_id":"womens-double-breasted-velvet-vest-greta","title":"Damska aksamitna kamizelka dwurzędowa | Greta","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eGretę\u003c\/strong\u003e, dwurzędową aksamitną kamizelkę od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eSkład: 97% poliester, 3% elastan\u003c\/li\u003e\n\n\u003cli\u003eAksamitna faktura\u003c\/li\u003e\n\n\u003cli\u003eDwurzędowy przód\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż ją na gładki golf lub koszulę. Dodaj spodnie z prostymi nogawkami i buty odpowiednie do okazji, aby stworzyć codzienną stylizację.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: S, M, L, XL, 2XL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003ePrać w pralce w delikatnym cyklu w temperaturze 30°C (86°F). Nie wybielać. Nie suszyć w suszarce bębnowej. Nadać kształt i suszyć na płasko. Zawsze przestrzegaj zaleceń na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-double-breasted-velvet-vest-greta\",\"gender\":\"female\",\"sizes\":[\"S\",\"M\",\"L\",\"XL\",\"2XL\"],\"colors\":[\"Navy\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki wybrać rozmiar?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiaru\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar startowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Sylwetka, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eDotyczy tylko rozmiarów aktualnie dostępnych w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: S, M, L, XL, 2XL. Jeśli narzędzie szacowania jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Granatowy \/ S","offer_id":55371929485649,"sku":"SM-65868463341917","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371929518417,"sku":"SM-65868463374685","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371929551185,"sku":"SM-65868463407453","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371929583953,"sku":"SM-65868463440221","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371929616721,"sku":"SM-65868463472989","price":57.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/damen-zweireiher-samt-weste-im-military-stil-tailliert-1.jpg?v=1792460294"},{"product_id":"womens-tailored-blazer-set-lyselle","title":"Damski komplet z taliowaną marynarką | Lyselle","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eLyselle\u003c\/strong\u003e, taliowany komplet z marynarką od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eKomplet z marynarką\u003c\/li\u003e\n\n\u003cli\u003eKlasyczny krój\u003c\/li\u003e\n\n\u003cli\u003eSpójne wykończenie całego zestawu\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003ePołącz go z gładkim topem i prostą torebką. Wybierz eleganckie obuwie na formalne okazje lub minimalistyczne sneakersy do noszenia na co dzień.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL, 2XL, XXL, 3XL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-tailored-blazer-set-lyselle\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"XXL\",\"3XL\"],\"colors\":[\"Blue\",\"Purple\",\"Beige\",\"Black\",\"Gray\",\"Brown\",\"Army Green\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Typ sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiaru\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar początkowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L, XL, 2XL, XXL, 3XL. Jeśli narzędzie szacowania jest niedostępne, skorzystaj z powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Niebieski \/ XS","offer_id":55371975491921,"sku":"D4-SF087054","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371975524689,"sku":"D4-SF087054","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371975557457,"sku":"D4-SF087050","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371975590225,"sku":"D4-SF087051","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371975622993,"sku":"D4-SF087052","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371975655761,"sku":"D4-SF087053","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371975688529,"sku":"D4-SF087054","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ 3XL","offer_id":55371975721297,"sku":"D4-SF087080","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ XS","offer_id":55371975754065,"sku":"D4-SF087009","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ S","offer_id":55371975786833,"sku":"D4-SF087009","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ M","offer_id":55371975819601,"sku":"D4-SF087010","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ L","offer_id":55371975852369,"sku":"D4-SF087011","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ XL","offer_id":55371975885137,"sku":"D4-SF087012","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ XXL","offer_id":55371975917905,"sku":"D4-SF087013","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ XXL","offer_id":55371975950673,"sku":"D4-SF087009","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Fioletowy \/ 3XL","offer_id":55371975983441,"sku":"D4-SF087074","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XS","offer_id":55371976016209,"sku":"D4-SF087016","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371976048977,"sku":"D4-SF087016","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371976081745,"sku":"D4-SF087017","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371976114513,"sku":"D4-SF087018","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371976147281,"sku":"D4-SF087019","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371976180049,"sku":"D4-SF087020","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371976212817,"sku":"D4-SF087016","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ 3XL","offer_id":55371976245585,"sku":"D4-SF087075","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XS","offer_id":55371976278353,"sku":"D4-SF087023","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371976311121,"sku":"D4-SF087023","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371976343889,"sku":"D4-SF087024","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371976376657,"sku":"D4-SF087025","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371976409425,"sku":"D4-SF087026","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371976442193,"sku":"D4-SF087027","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371976474961,"sku":"D4-SF087023","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ 3XL","offer_id":55371976507729,"sku":"D4-SF087076","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XS","offer_id":55371976540497,"sku":"D4-SF087030","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ S","offer_id":55371976573265,"sku":"D4-SF087030","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ M","offer_id":55371976606033,"sku":"D4-SF087031","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ L","offer_id":55371976638801,"sku":"D4-SF087032","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XL","offer_id":55371976671569,"sku":"D4-SF087033","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371976704337,"sku":"D4-SF087034","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ XXL","offer_id":55371976737105,"sku":"D4-SF087030","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Szary \/ 3XL","offer_id":55371976769873,"sku":"D4-SF087035","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XS","offer_id":55371976802641,"sku":"D4-SF087037","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ S","offer_id":55371976835409,"sku":"D4-SF087037","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ M","offer_id":55371976868177,"sku":"D4-SF087038","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ L","offer_id":55371976900945,"sku":"D4-SF087039","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XL","offer_id":55371976933713,"sku":"D4-SF087040","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XXL","offer_id":55371976966481,"sku":"D4-SF087041","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XXL","offer_id":55371976999249,"sku":"D4-SF087037","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ 3XL","offer_id":55371977032017,"sku":"D4-SF087078","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ XS","offer_id":55371977064785,"sku":"D4-SF087044","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ S","offer_id":55371977097553,"sku":"D4-SF087044","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ M","offer_id":55371977130321,"sku":"D4-SF087045","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ L","offer_id":55371977163089,"sku":"D4-SF087046","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ XL","offer_id":55371977195857,"sku":"D4-SF087047","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ XXL","offer_id":55371977228625,"sku":"D4-SF087048","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ XXL","offer_id":55371977261393,"sku":"D4-SF087044","price":89.99,"currency_code":"USD","in_stock":true},{"title":"Zieleń wojskowa \/ 3XL","offer_id":55371977294161,"sku":"D4-SF087079","price":89.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/O1CN01R8Y6Op1xTP4JQyd6y__2215476866444-0-cib_ad42ee69-0fe9-4448-a833-420ff5b0215f_400x-Photoroom.jpg?v=1792460382"},{"product_id":"womens-striped-cotton-cardigan-sorento","title":"Damski bawełniany kardigan w paski | Sorento","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eSorento\u003c\/strong\u003e, bawełniany kardigan w paski od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eMateriał z domieszką bawełny\u003c\/li\u003e\n\n\u003cli\u003eDzianinowa faktura\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eLuźny krój\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw go z prostą górą i ulubionymi jeansami. Jeśli szukasz bardziej eleganckiej stylizacji, wybierz spódnicę midi i delikatną biżuterię.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL, 2XL, XXL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-striped-cotton-cardigan-sorento\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\",\"2XL\",\"XXL\"],\"colors\":[\"Blue\",\"Yellow\",\"Green\",\"Pink\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj wstępny rozmiar na podstawie wzrostu i wagi. To szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eDopasowanie\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz rodzaj\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L, XL, 2XL, XXL. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu i swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Niebieski \/ XS","offer_id":55371978604881,"sku":"EC-1322-D","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ S","offer_id":55371978637649,"sku":"EC-1322-D","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ M","offer_id":55371978670417,"sku":"WE-9882-M","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ L","offer_id":55371978703185,"sku":"YZ-3790-D","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XL","offer_id":55371978735953,"sku":"EM-9718-V","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371978768721,"sku":"JU-8364-K","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Niebieski \/ XXL","offer_id":55371978801489,"sku":"EC-1322-D","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XS","offer_id":55371978834257,"sku":"QZ-9400-Y","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ S","offer_id":55371978867025,"sku":"QZ-9400-Y","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ M","offer_id":55371978899793,"sku":"PY-7811-P","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ L","offer_id":55371978932561,"sku":"FF-1299-S","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XL","offer_id":55371978965329,"sku":"PQ-5032-S","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371978998097,"sku":"JT-5374-P","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Żółty \/ XXL","offer_id":55371979030865,"sku":"QZ-9400-Y","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XS","offer_id":55371979063633,"sku":"UH-7646-L","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ S","offer_id":55371979096401,"sku":"UH-7646-L","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ M","offer_id":55371979129169,"sku":"TW-6064-S","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ L","offer_id":55371979161937,"sku":"GE-3733-Y","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XL","offer_id":55371979194705,"sku":"FQ-9898-S","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371979227473,"sku":"GR-3703-J","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Zielony \/ XXL","offer_id":55371979260241,"sku":"UH-7646-L","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XS","offer_id":55371979293009,"sku":"YF-3354-Z","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ S","offer_id":55371979325777,"sku":"YF-3354-Z","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ M","offer_id":55371979358545,"sku":"UG-1092-S","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ L","offer_id":55371979391313,"sku":"EL-2368-P","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XL","offer_id":55371979424081,"sku":"HX-5680-R","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371979456849,"sku":"ZH-5336-Z","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Różowy \/ XXL","offer_id":55371979489617,"sku":"YF-3354-Z","price":47.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/img-pzm5f0gq.jpg?v=1792460385"},{"product_id":"womens-tailored-vest-savona","title":"Damska kamizelka wizytowa | Savona","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eSavonę\u003c\/strong\u003e, dopasowaną kamizelkę od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eModel bez kołnierza\u003c\/li\u003e\n\n\u003cli\u003eZapięcie na guziki\u003c\/li\u003e\n\n\u003cli\u003eFason bez rękawów\u003c\/li\u003e\n\n\u003cli\u003eLekka konstrukcja\u003c\/li\u003e\n\n\u003cli\u003eRozkloszowana sylwetka\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZestaw ją z elegancką koszulą i spodniami z wysokim stanem. Wybierz top z długim rękawem, aby uzyskać bardziej swobodny, dzienny look.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL, XXL.\u003c\/p\u003e\n\n\u003cp\u003eWybierając rozmiar, weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-tailored-vest-savona\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\",\"XXL\"],\"colors\":[\"Beige\",\"Black\",\"Navy\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie swojego wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar początkowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja idealnego dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpływać na najlepszy wybór.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eKażdy dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L, XL, XXL. Jeśli estymator jest niedostępny, użyj powyższych szczegółów dotyczących odzieży oraz swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Beżowy \/ XS","offer_id":55371979882833,"sku":"SM-65351505183069","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ S","offer_id":55371979915601,"sku":"SM-64919515562333","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ M","offer_id":55371979948369,"sku":"SM-64919515595101","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ L","offer_id":55371979981137,"sku":"SM-64919515627869","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XL","offer_id":55371980013905,"sku":"SM-65351505281373","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Beżowy \/ XXL","offer_id":55371980046673,"sku":"SM-65351505379677","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XS","offer_id":55371980079441,"sku":"SM-65351505215837","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371980112209,"sku":"SM-64919515660637","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371980144977,"sku":"SM-64919515693405","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371980177745,"sku":"SM-64919515726173","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371980210513,"sku":"SM-65351505314141","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371980243281,"sku":"SM-65351505412445","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XS","offer_id":55371980276049,"sku":"SM-65351505248605","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ S","offer_id":55371980308817,"sku":"SM-64919515758941","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371980341585,"sku":"SM-64919515791709","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371980374353,"sku":"SM-64919515824477","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371980407121,"sku":"SM-65351505346909","price":47.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371980439889,"sku":"SM-65351505445213","price":47.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/1_dcc29752-45d1-40ac-9e44-d85de081ee10.jpg?v=1792460386"},{"product_id":"womens-cropped-blazer-savile","title":"Krótki żakiet damski | Savile","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eSavile\u003c\/strong\u003e, krótki żakiet (blazer) marki Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eKrótki fason\u003c\/li\u003e\n\n\u003cli\u003eWyrazisty krój żakietu\u003c\/li\u003e\n\n\u003cli\u003eKlasyczny, taliowany styl\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eNoś go na cienki golf lub klasyczną koszulę. Całość dopełnią proste spodnie i niewielka torebka.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L, XL, XXL.\u003c\/p\u003e\n\n\u003cp\u003ePrzy wyborze rozmiaru weź pod uwagę krój ubrania oraz warstwy, które planujesz założyć pod spód.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-cropped-blazer-savile\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\",\"XL\",\"XXL\"],\"colors\":[\"Brown\",\"Navy\",\"Red\",\"White\",\"Black\"],\"size_index\":1,\"color_index\":0,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eOszacuj rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eOszacuj rozmiar wyjściowy na podstawie wzrostu i wagi. Jest to przybliżenie, a nie gwarancja idealnego dopasowania. Sylwetka, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (stopy)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (cale)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (funty)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie rozmiarówki\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDowolny dostępny kolor\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eUwzględnia tylko rozmiary dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są nigdzie zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L, XL, XXL. Jeśli narzędzie jest niedostępne, skorzystaj z powyższych szczegółów produktu oraz rozmiaru, który zazwyczaj wybierasz.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"Brązowy \/ XS","offer_id":55371980669265,"sku":"DWOD2-WL411042","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ S","offer_id":55371980702033,"sku":"DWOD2-WL411043","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ M","offer_id":55371980734801,"sku":"DWOD2-WL411044","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ L","offer_id":55371980767569,"sku":"SM-64919563895133","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XS","offer_id":55371980800337,"sku":"DWOD2-WL411046","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ S","offer_id":55371980833105,"sku":"DWOD2-WL411047","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ M","offer_id":55371980865873,"sku":"DWOD2-WL411048","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ L","offer_id":55371980898641,"sku":"SM-64919564026205","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XS","offer_id":55371980931409,"sku":"DWOD2-WL411038","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ S","offer_id":55371980964177,"sku":"DWOD2-WL411039","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ M","offer_id":55371980996945,"sku":"DWOD2-WL411040","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ L","offer_id":55371981029713,"sku":"SM-64919564157277","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XS","offer_id":55371981062481,"sku":"DWOD2-WL411030","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ S","offer_id":55371981095249,"sku":"DWOD2-WL411031","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ M","offer_id":55371981128017,"sku":"DWOD2-WL411032","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ L","offer_id":55371981160785,"sku":"SM-64919564288349","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XS","offer_id":55371981193553,"sku":"DWOD2-WL411050","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ S","offer_id":55371981226321,"sku":"DWOD2-WL411051","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ M","offer_id":55371981259089,"sku":"DWOD2-WL411052","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ L","offer_id":55371981291857,"sku":"SM-64919564419421","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XL","offer_id":55371981324625,"sku":"DWOD2-WL411042","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XL","offer_id":55371981357393,"sku":"DWOD2-WL411046","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XL","offer_id":55371981390161,"sku":"DWOD2-WL411038","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XL","offer_id":55371981422929,"sku":"DWOD2-WL411030","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XL","offer_id":55371981455697,"sku":"DWOD2-WL411050","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Brązowy \/ XXL","offer_id":55371981488465,"sku":"DWOD2-WL411042","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Granatowy \/ XXL","offer_id":55371981521233,"sku":"DWOD2-WL411046","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czerwony \/ XXL","offer_id":55371981554001,"sku":"DWOD2-WL411038","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Biały \/ XXL","offer_id":55371981586769,"sku":"DWOD2-WL411030","price":57.99,"currency_code":"USD","in_stock":true},{"title":"Czarny \/ XXL","offer_id":55371981619537,"sku":"DWOD2-WL411050","price":57.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/ImageEdit-OldMoney_2_9e328195-56cf-4adc-88b2-e60b30ee9d16.jpg?v=1792460388"},{"product_id":"womens-oversized-belted-blazer-rothwell","title":"Damska marynarka oversize z paskiem | Rothwell","description":"\u003cdiv class=\"juana-fashion-product\"\u003e\n\n\u003cp\u003ePoznaj \u003cstrong\u003eRothwell\u003c\/strong\u003e, przeskalowaną marynarkę z paskiem od Juana Fashion.\u003c\/p\u003e\n\n\u003ch3\u003eSzczegóły produktu\u003c\/h3\u003e\n\n\u003cul\u003e\n\n\u003cli\u003eSzerokie, wzmocnione ramiona\u003c\/li\u003e\n\n\u003cli\u003eSzeroki kołnierz z klapami\u003c\/li\u003e\n\n\u003cli\u003eWiązany pasek z tego samego materiału\u003c\/li\u003e\n\n\u003cli\u003eDługość do bioder\u003c\/li\u003e\n\n\n\u003c\/ul\u003e\n\n\u003ch3\u003eJak stylizować\u003c\/h3\u003e\n\n\u003cp\u003eZałóż ją na cienki golf lub klasyczną koszulę. Całość dopełnią proste spodnie i mała torebka.\u003c\/p\u003e\n\n\u003ch3\u003eRozmiar i dopasowanie\u003c\/h3\u003e\n\n\u003cp\u003eDostępne rozmiary: XS, S, M, L.\u003c\/p\u003e\n\n\u003cp\u003eObwód w klatce piersiowej: 98 cm; długość: 74 cm; szerokość ramion: 46 cm. Podane wymiary nie odnoszą się do konkretnego rozmiaru.\u003c\/p\u003e\n\n\u003ch3\u003ePielęgnacja\u003c\/h3\u003e\n\n\u003cp\u003eTylko pranie chemiczne. Postępuj zgodnie z instrukcją na metce.\u003c\/p\u003e\n\n\u003cdetails class=\"jf-size-finder jf-size-finder-v2\" data-jf-config='{\"handle\":\"womens-oversized-belted-blazer-rothwell\",\"gender\":\"female\",\"sizes\":[\"XS\",\"S\",\"M\",\"L\"],\"colors\":[\"Black\",\"Gray\"],\"size_index\":0,\"color_index\":1,\"runs_small\":false}' style=\"margin:24px 0;border:1px solid #d4cec5;border-radius:14px;background:#f6f3ee;padding:0;color:#202020;font-family:inherit;overflow:hidden;box-shadow:0 2px 8px rgba(32,32,32,.04)\"\u003e\n\u003csummary style=\"display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;width:100%;box-sizing:border-box;list-style:none;cursor:pointer;padding:18px;text-align:left;user-select:none\"\u003e\n\u003cspan style=\"display:block;flex:1 1 190px;min-width:0\"\u003e\u003cspan style=\"display:block;font-size:16px;font-weight:650;line-height:1.35;color:#202020\"\u003eNie wiesz, jaki rozmiar wybrać?\u003c\/span\u003e\u003cspan style=\"display:block;margin-top:5px;font-size:13px;font-weight:400;line-height:1.45;color:#625b53\"\u003eUzyskaj orientacyjny rozmiar na podstawie wzrostu i wagi.\u003c\/span\u003e\u003c\/span\u003e\n\u003cspan class=\"jf-size-cta\" style=\"display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;min-height:44px;box-sizing:border-box;padding:11px 16px;border-radius:8px;background:#202020;color:#fff;font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap\"\u003e\u003cspan class=\"jf-size-open-label\"\u003eZnajdź mój rozmiar\u003c\/span\u003e\u003cspan class=\"jf-size-close-label\" style=\"display:none\"\u003eZamknij wyszukiwarkę rozmiarów\u003c\/span\u003e\u003cspan class=\"jf-size-chevron\" aria-hidden=\"true\" style=\"display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n\u003c\/summary\u003e\n\u003cstyle\u003e\n.jf-size-finder-v2\u003esummary::-webkit-details-marker{display:none}\n.jf-size-finder-v2\u003esummary::marker{content:\"\"}\n.jf-size-finder-v2\u003esummary:after{display:none!important}\n.jf-size-finder-v2\u003esummary:hover .jf-size-cta{background:#494136!important}\n.jf-size-finder-v2\u003esummary:focus-visible{outline:2px solid #695940;outline-offset:-4px;border-radius:12px}\n.jf-size-finder-v2[open]\u003esummary{border-bottom:1px solid #ded8d0}\n.jf-size-finder-v2[open] .jf-size-open-label{display:none}\n.jf-size-finder-v2[open] .jf-size-close-label{display:inline!important}\n.jf-size-finder-v2[open] .jf-size-chevron{transform:rotate(225deg)!important;margin-top:4px!important}\n.jf-size-finder-v2 input:focus-visible,.jf-size-finder-v2 select:focus-visible,.jf-size-finder-v2 button:focus-visible{outline:2px solid #695940;outline-offset:2px}\n.jf-size-finder-v2 [data-jf-calculate]:hover{background:#494136!important}\n.jf-size-finder-v2 [data-jf-calculate]:disabled{opacity:.6;cursor:wait!important}\n.jf-size-finder-v2 [data-jf-result]:not(:empty){background:#f2eee7;border-left:3px solid #8a7555;border-radius:6px;padding:12px}\n@media(max-width:480px){.jf-size-finder-v2 .jf-size-cta{width:100%;flex-basis:100%!important}.jf-size-finder-v2\u003esummary{gap:12px!important}}\n\u003c\/style\u003e\n\u003cdiv style=\"padding:18px;background:#fff\"\u003e\n\n\u003cp style=\"font-size:13px;line-height:1.6;margin:0 0 16px;color:#625b53\"\u003eUzyskaj przybliżony rozmiar startowy na podstawie wzrostu i wagi. Jest to szacunek, a nie gwarancja dopasowania. Kształt sylwetki, warstwy odzieży oraz krój ubrania mogą wpłynąć na ostateczne dopasowanie.\u003c\/p\u003e\n\n\u003cdiv data-jf-fields hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;margin:0 0 16px;font-size:13px;font-weight:600;line-height:1.5\"\u003eJednostki\u003cselect data-jf-units style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"us\"\u003eStopy, cale i funty\u003c\/option\u003e\n\n\u003coption value=\"metric\"\u003eCentymetry i kilogramy\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cdiv data-jf-us style=\"display:flex;gap:10px\"\u003e\n\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (ft)\u003cinput data-jf-ft type=\"number\" inputmode=\"numeric\" min=\"4\" max=\"7\" step=\"1\" placeholder=\"5\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWzrost (in)\u003cinput data-jf-in type=\"number\" inputmode=\"decimal\" min=\"0\" max=\"11.9\" step=\"0.1\" placeholder=\"6\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"flex:1;min-width:0;font-size:13px;font-weight:600;line-height:1.5\"\u003eWaga (lb)\u003cinput data-jf-lb type=\"number\" inputmode=\"decimal\" min=\"66\" max=\"441\" step=\"0.1\" placeholder=\"140\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 10px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003cdiv data-jf-metric hidden style=\"display:none\"\u003e\n\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0 0 14px;line-height:1.5\"\u003eWzrost (cm)\u003cinput data-jf-cm type=\"number\" inputmode=\"decimal\" min=\"140\" max=\"210\" step=\"0.1\" placeholder=\"168\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\u003clabel style=\"display:block;font-size:13px;font-weight:600;margin:0;line-height:1.5\"\u003eWaga (kg)\u003cinput data-jf-kg type=\"number\" inputmode=\"decimal\" min=\"30\" max=\"200\" step=\"0.1\" placeholder=\"64\" style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003c\/label\u003e\n\n\u003c\/div\u003e\n\n\u003clabel data-jf-cut-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eOdniesienie dopasowania\u003cselect data-jf-cut style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eWybierz odniesienie\u003c\/option\u003e\n\n\u003coption value=\"female\"\u003eRozmiarówka damska\u003c\/option\u003e\n\n\u003coption value=\"male\"\u003eRozmiarówka męska\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003clabel data-jf-color-label hidden style=\"display:none;font-size:13px;font-weight:600;margin:16px 0;line-height:1.5\"\u003eKolor\u003cselect data-jf-color style=\"display:block;box-sizing:border-box;width:100%;min-height:46px;padding:11px 12px;margin-top:6px;border:1px solid #d4cec5;border-radius:8px;background:#fff;color:#202020;font-family:inherit;font-size:16px;font-weight:400\"\u003e\u003coption value=\"\"\u003eDostępne kolory\u003c\/option\u003e\u003c\/select\u003e\u003c\/label\u003e\n\u003cbutton data-jf-calculate type=\"button\" style=\"display:block;width:100%;min-height:48px;margin-top:18px;padding:13px 16px;border:0;border-radius:8px;background:#202020;color:#fff;font:inherit;font-size:14px;font-weight:600;line-height:1.5;cursor:pointer\"\u003eZnajdź mój rozmiar startowy\u003c\/button\u003e\n\u003cp data-jf-result role=\"status\" aria-live=\"polite\" style=\"font-size:14px;line-height:1.6;margin:14px 0 0\"\u003e\u003c\/p\u003e\n\n\u003cp style=\"font-size:12px;line-height:1.6;margin:12px 0 0;color:#71685d\"\u003eWykorzystuje tylko rozmiary aktualnie dostępne w sprzedaży. Twoje wymiary pozostają w przeglądarce i nie są zapisywane.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp data-jf-fallback style=\"font-size:13px;line-height:1.6;margin:0\"\u003eOferowane rozmiary: XS, S, M, L. Jeśli narzędzie szacujące jest niedostępne, użyj powyższych szczegółów produktu oraz swojego standardowego rozmiaru jako punktu wyjścia.\u003c\/p\u003e\n\n\n\u003c\/div\u003e\n\n\u003c\/details\u003e\n\n\u003cscript\u003e(function () {\n  'use strict';\n  if (window.JuanaSizeFinder) { window.JuanaSizeFinder.init(); return; }\n  var ranks = {'2XS':0,'XXS':0,'XS':1,'S':2,'S\/M':2.5,'M':3,'M\/L':3.5,'L':4,'L\/XL':4.5,'XL':5,'XXL':6,'2XL':6,'3XL':7,'XXXL':7,'4XL':8,'5XL':9,'6XL':10};\n  function estimate(cm, kg, gender, small, sizes) {\n    if (!Number.isFinite(cm) || !Number.isFinite(kg) || cm \u003c 140 || cm \u003e 210 || kg \u003c 30 || kg \u003e 200) return {error:'Enter a height between 4 ft 7 in and 6 ft 10 in (140-210 cm) and a weight between 66 and 441 lb (30-200 kg).'};\n    if (gender !== 'female' \u0026\u0026 gender !== 'male') return {error:'Choose a sizing reference first.'};\n    \/\/ Broad starting estimates, not a manufacturer size chart or validated fit model.\n    var ref = gender === 'male' ? 175 : 165;\n    var centers = gender === 'male' ? [56,63,71,80,91,103,116,130,146,163,181] : [43,48,55,63,72,83,95,108,122,138,155];\n    var scaled = kg * Math.pow(ref \/ cm, 1.65);\n    if (scaled \u003c centers[0]-8 || scaled \u003e centers[10]+12) return {error:'Your measurements fall outside this estimator’s range. Please compare garment measurements before ordering.'};\n    var target = 0;\n    centers.forEach(function (x,i) { if (Math.abs(x-scaled) \u003c Math.abs(centers[target]-scaled)) target=i; });\n    if (small) target += 1;\n    var choices = sizes.filter(function (s) { return Object.prototype.hasOwnProperty.call(ranks,s); });\n    if (!choices.length) return {error:'No size is currently available for this selection.'};\n    choices.sort(function(a,b) { return Math.abs(ranks[a]-target)-Math.abs(ranks[b]-target) || ranks[b]-ranks[a]; });\n    if (Math.abs(ranks[choices[0]]-target) \u003e 0.75) return {error:'No currently available size is close enough to the estimate. Please check another color or compare garment measurements.'};\n    return {size:choices[0]};\n  }\n  function show(el, visible, display) { el.hidden=!visible; el.style.display=visible?(display||'block'):'none'; }\n  function num(el) { return el.value.trim()==='' ? NaN : Number(el.value); }\n  function init() {\n    document.querySelectorAll('.jf-size-finder[data-jf-config]').forEach(function (box) {\n      if (box.dataset.jfReady) return;\n      var cfg;\n      try { cfg=JSON.parse(box.getAttribute('data-jf-config')); } catch (_) { return; }\n      if (!cfg.handle || !Array.isArray(cfg.sizes)) return;\n      box.dataset.jfReady='true';\n      var q=function(s){return box.querySelector(s);};\n      var result=q('[data-jf-result]'), button=q('[data-jf-calculate]'), units=q('[data-jf-units]');\n      show(q('[data-jf-fields]'),true); show(q('[data-jf-fallback]'),false);\n      if (!cfg.gender) show(q('[data-jf-cut-label]'),true);\n      if (cfg.colors \u0026\u0026 cfg.colors.length \u0026\u0026 cfg.color_index !== null) {\n        cfg.colors.forEach(function(c){var o=document.createElement('option');o.value=c;o.textContent=c;q('[data-jf-color]').appendChild(o);});\n        show(q('[data-jf-color-label]'),true);\n      }\n      units.addEventListener('change',function(){\n        show(q('[data-jf-us]'),units.value==='us','flex'); show(q('[data-jf-metric]'),units.value==='metric');result.textContent='';\n      });\n      var generation=0;\n      box.addEventListener('input',function(){generation+=1;result.textContent='';});\n      box.addEventListener('change',function(){generation+=1;result.textContent='';});\n      button.addEventListener('click',async function(){\n        var ticket=++generation;\n        var cm,kg;\n        if(units.value==='metric'){cm=num(q('[data-jf-cm]'));kg=num(q('[data-jf-kg]'));}\n        else {\n          var ft=num(q('[data-jf-ft]')),inch=num(q('[data-jf-in]'));\n          if(!Number.isInteger(ft)||!Number.isFinite(inch)||inch\u003c0||inch\u003e=12){result.textContent='Enter feet and inches separately. Inches must be between 0 and 11.9.';return;}\n          cm=(ft*12+inch)*2.54;kg=num(q('[data-jf-lb]'))*0.45359237;\n        }\n        var gender=cfg.gender||q('[data-jf-cut]').value;\n        var early=estimate(cm,kg,gender,cfg.runs_small,cfg.sizes);\n        if(early.error){result.textContent=early.error;return;}\n        button.disabled=true;button.textContent='Checking available sizes…';result.textContent='';\n        var controller=new AbortController(),timeout=setTimeout(function(){controller.abort();},10000);\n        try {\n          var root=(window.Shopify\u0026\u0026window.Shopify.routes\u0026\u0026window.Shopify.routes.root)||'\/';\n          var response=await fetch(root+'products\/'+encodeURIComponent(cfg.handle)+'.js',{credentials:'same-origin',signal:controller.signal,cache:'no-store'});\n          if(!response.ok)throw new Error('Product unavailable');\n          var product=await response.json();\n          if(!Array.isArray(product.variants))throw new Error('Variants unavailable');\n          var desiredColor=q('[data-jf-color]').value;\n          var available=product.variants.filter(function(v){return v.available===true\u0026\u0026(!desiredColor||v.options[cfg.color_index]===desiredColor);});\n          var sizes=Array.from(new Set(available.map(function(v){return v.options[cfg.size_index];}))).filter(function(s){return cfg.sizes.indexOf(s)\u003e=0;});\n          var answer=estimate(cm,kg,gender,cfg.runs_small,sizes);\n          if(ticket!==generation)return;\n          if(answer.error){result.textContent=answer.error;return;}\n          var matching=available.filter(function(v){return v.options[cfg.size_index]===answer.size;});\n          var text='Suggested starting size: '+answer.size+'. This is a rough estimate; check the garment details and allow room for layers.';\n          if(cfg.runs_small)text+=' This style is listed as running small; the estimate includes one size up.';\n          if(cfg.color_index!==null){\n            var colorNames=Array.from(new Set(matching.map(function(v){return v.options[cfg.color_index];})));\n            text+=' Currently available in '+colorNames.slice(0,6).join(', ')+(colorNames.length\u003e6?' and other colors':'')+'.';\n          }\n          result.textContent=text;\n        } catch (_) {\n          if(ticket===generation)result.textContent='We could not confirm current availability. Please use the product’s size selector and try again.';\n        } finally {clearTimeout(timeout);button.disabled=false;button.textContent='Find my starting size';}\n      });\n    });\n  }\n  window.JuanaSizeFinder={init:init,estimate:estimate};\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',init);else init();\n  document.addEventListener('shopify:section:load',init);\n  var queued=false;\n  new MutationObserver(function(changes){\n    if(queued||!changes.some(function(c){return Array.from(c.addedNodes).some(function(n){return n.nodeType===1\u0026\u0026(n.matches('.jf-size-finder')||n.querySelector('.jf-size-finder'));});}))return;\n    queued=true;setTimeout(function(){queued=false;init();},0);\n  }).observe(document.documentElement,{childList:true,subtree:true});\n})();\n\u003c\/script\u003e\n\n\u003c\/div\u003e","brand":"Juana Fashion","offers":[{"title":"XS \/ Czarny","offer_id":55371997217105,"sku":"RW-19272-XS-BK","price":57.99,"currency_code":"USD","in_stock":true},{"title":"S \/ Czarny","offer_id":55371997249873,"sku":"RW-19272-S-BK","price":57.99,"currency_code":"USD","in_stock":true},{"title":"M \/ Czarny","offer_id":55371997282641,"sku":"RW-19272-M-BK","price":57.99,"currency_code":"USD","in_stock":true},{"title":"L \/ Czarny","offer_id":55371997315409,"sku":"RW-19272-L-BK","price":57.99,"currency_code":"USD","in_stock":true},{"title":"XS \/ Szary","offer_id":55371997348177,"sku":"RW-19272-XS-GY","price":57.99,"currency_code":"USD","in_stock":true},{"title":"S \/ Szary","offer_id":55371997380945,"sku":"RW-19272-S-GY","price":57.99,"currency_code":"USD","in_stock":true},{"title":"M \/ Szary","offer_id":55371997413713,"sku":"RW-19272-M-GY","price":57.99,"currency_code":"USD","in_stock":true},{"title":"L \/ Szary","offer_id":55371997446481,"sku":"RW-19272-L-GY","price":57.99,"currency_code":"USD","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1072\/2607\/1377\/files\/hf_20260906_122324_5573e61c-3117-48dd-87b5-7db4f1349e89.png?v=1792460428"}],"url":"https:\/\/juanafashion.com\/pl\/collections\/summer.oembed","provider":"Juana Fashion","version":"1.0","type":"link"}