{"product_id":"magnetchess","title":"MagnetChess - تخلّص من مغناطيساتك أولًا!","description":"\u003c!-- MAGNETCHESS TRUST BAR — plain Custom HTML block. Works with no Liquid.\n     Date = today in furthest-ahead timezone (UTC+14). Country: USA default, switches by IP. --\u003e\n\u003cstyle\u003e\n  .mc-card{\n    --mc-navy:#00142f; --mc-yellow:#fdce1c; --mc-text:#00142f; --mc-muted:#5b6678;\n    --mc-divider:rgba(0,20,47,0.10); --mc-radius:22px;\n    display:flex; flex-direction:row; justify-content:center; align-items:stretch; padding:26px 28px;\n    background:linear-gradient(135deg,#f6f8fc 0%,#eaeff7 100%);\n    border:1px solid rgba(0,20,47,0.10); border-radius:var(--mc-radius);\n    max-width:1000px; margin:6px auto 14px; font-family:inherit; box-sizing:border-box;\n    box-shadow:0 10px 28px rgba(0,20,47,0.10),0 2px 6px rgba(0,0,0,0.04);\n  }\n  .mc-item{flex:1 1 0; display:flex; flex-direction:column; align-items:center;\n    justify-content:flex-start; text-align:center; gap:14px; padding:6px 18px;}\n  .mc-item + .mc-item{border-left:1px solid var(--mc-divider);}\n  .mc-badge{width:92px; height:92px; border-radius:50%; background:#fff; flex:0 0 auto;\n    display:flex; align-items:center; justify-content:center;\n    box-shadow:0 12px 24px rgba(0,20,47,0.15),0 4px 8px rgba(0,20,47,0.07);}\n  .mc-ico{width:40px; height:40px; color:var(--mc-navy); display:flex; align-items:center; justify-content:center;}\n  .mc-ico svg{width:100%; height:100%; display:block;}\n  .mc-dot{position:relative; width:16px; height:16px; border-radius:50%; background:var(--mc-yellow);}\n  .mc-dot::after{content:\"\"; position:absolute; inset:0; border-radius:50%; background:var(--mc-yellow);\n    animation:mcPing 1.8s cubic-bezier(0,0,.2,1) infinite;}\n  @keyframes mcPing{0%{transform:scale(1); opacity:.5;} 100%{transform:scale(3.2); opacity:0;}}\n  .mc-flag{display:flex; align-items:center; justify-content:center; width:100%;}\n  .mc-flag img, .mc-flag svg{margin:0 auto; height:34px; width:auto; border-radius:4px; box-shadow:0 1px 4px rgba(0,0,0,0.20); display:block;}\n  .mc-title{font-size:18px; font-weight:800; line-height:1.25; color:var(--mc-text); margin:0;}\n  .mc-sub{font-size:14px; line-height:1.4; color:var(--mc-muted); margin:0;}\n  .mc-ship{display:inline-block; color:var(--mc-yellow); font-weight:800; letter-spacing:.3px;\n    background:var(--mc-navy); padding:3px 11px; border-radius:7px;\n    animation:mcShip 1.6s ease-in-out infinite;}\n  @keyframes mcShip{0%,100%{transform:scale(1); box-shadow:0 2px 6px rgba(0,20,47,0.25);}\n    50%{transform:scale(1.06); box-shadow:0 4px 14px rgba(0,20,47,0.45);}}\n  .mc-country{color:var(--mc-navy); font-weight:700; border-bottom:2px solid var(--mc-yellow); padding-bottom:1px;}\n  @media (max-width:749px){\n    .mc-card{padding:18px 12px;}\n    .mc-item{padding:4px 8px; gap:10px;}\n    .mc-badge{width:60px; height:60px; box-shadow:0 8px 16px rgba(0,20,47,0.15),0 3px 6px rgba(0,20,47,0.07);}\n    .mc-ico{width:28px; height:28px;} .mc-flag img,.mc-flag svg{height:24px;}\n    .mc-dot{width:12px; height:12px;}\n    .mc-title{font-size:13px;} .mc-sub{font-size:12px;}\n  }\n  @media (prefers-reduced-motion:reduce){.mc-dot::after{animation:none; opacity:0;} .mc-ship{animation:none;}}\n\u003c\/style\u003e\n\n\u003cdiv class=\"mc-card\" role=\"list\" aria-label=\"لماذا تتسوق من MagnetChess\"\u003e\n\n  \u003cdiv class=\"mc-item\" role=\"listitem\"\u003e\n    \u003cspan class=\"mc-badge\" aria-hidden=\"true\"\u003e\u003cspan class=\"mc-dot\"\u003e\u003c\/span\u003e\u003c\/span\u003e\n    \u003cp class=\"mc-title\"\u003eمتوفر\u003cbr\u003eيُشحن بحلول\u003c\/p\u003e\n    \u003cp class=\"mc-sub\"\u003e\u003cspan class=\"mc-ship\"\u003eاليوم\u003c\/span\u003e\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"mc-item\" role=\"listitem\"\u003e\n    \u003cspan class=\"mc-badge\" aria-hidden=\"true\"\u003e\u003cspan class=\"mc-ico\"\u003e\n      \u003csvg viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.7\" stroke-linecap=\"round\" stroke-linejoin=\"round\"\u003e\n        \u003cpolyline points=\"23 4 23 10 17 10\"\u003e\u003c\/polyline\u003e\n        \u003cpolyline points=\"1 20 1 14 7 14\"\u003e\u003c\/polyline\u003e\n        \u003cpath d=\"M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15\"\u003e\u003c\/path\u003e\n      \u003c\/svg\u003e\n    \u003c\/span\u003e\u003c\/span\u003e\n    \u003cp class=\"mc-title\"\u003eضمان 90 يومًا\u003c\/p\u003e\n    \u003cp class=\"mc-sub\"\u003eجرّبها بلا مخاطرة لمدة 90 يومًا\u003c\/p\u003e\n  \u003c\/div\u003e\n\n  \u003cdiv class=\"mc-item\" role=\"listitem\"\u003e\n    \u003cspan class=\"mc-badge\" aria-hidden=\"true\"\u003e\u003cspan class=\"mc-flag\"\u003e\n      \u003csvg viewbox=\"0 0 32 20\" aria-hidden=\"true\"\u003e\n        \u003crect width=\"32\" height=\"20\" fill=\"#fff\"\u003e\u003c\/rect\u003e\n        \u003cg fill=\"#b22234\"\u003e\n          \u003crect y=\"0\" width=\"32\" height=\"1.54\"\u003e\u003c\/rect\u003e\u003crect y=\"3.08\" width=\"32\" height=\"1.54\"\u003e\u003c\/rect\u003e\n          \u003crect y=\"6.15\" width=\"32\" height=\"1.54\"\u003e\u003c\/rect\u003e\u003crect y=\"9.23\" width=\"32\" height=\"1.54\"\u003e\u003c\/rect\u003e\n          \u003crect y=\"12.31\" width=\"32\" height=\"1.54\"\u003e\u003c\/rect\u003e\u003crect y=\"15.38\" width=\"32\" height=\"1.54\"\u003e\u003c\/rect\u003e\n          \u003crect y=\"18.46\" width=\"32\" height=\"1.54\"\u003e\u003c\/rect\u003e\n        \u003c\/g\u003e\n        \u003crect width=\"12.8\" height=\"10.77\" fill=\"#3c3b6e\"\u003e\u003c\/rect\u003e\n        \u003cg fill=\"#fff\"\u003e\n          \u003ccircle cx=\"1.8\" cy=\"1.6\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"4.6\" cy=\"1.6\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"7.4\" cy=\"1.6\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"10.2\" cy=\"1.6\" r=\".5\"\u003e\u003c\/circle\u003e\n          \u003ccircle cx=\"3.2\" cy=\"3.9\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"6\" cy=\"3.9\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"8.8\" cy=\"3.9\" r=\".5\"\u003e\u003c\/circle\u003e\n          \u003ccircle cx=\"1.8\" cy=\"6.2\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"4.6\" cy=\"6.2\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"7.4\" cy=\"6.2\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"10.2\" cy=\"6.2\" r=\".5\"\u003e\u003c\/circle\u003e\n          \u003ccircle cx=\"3.2\" cy=\"8.5\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"6\" cy=\"8.5\" r=\".5\"\u003e\u003c\/circle\u003e\u003ccircle cx=\"8.8\" cy=\"8.5\" r=\".5\"\u003e\u003c\/circle\u003e\n        \u003c\/g\u003e\n      \u003c\/svg\u003e\n    \u003c\/span\u003e\u003c\/span\u003e\n    \u003cp class=\"mc-title\"\u003eشحن\u003cbr\u003eمجاني\u003c\/p\u003e\n    \u003cp class=\"mc-sub mc-subship\"\u003eإلى \u003cspan class=\"mc-country\"\u003eالولايات المتحدة\u003c\/span\u003e\u003c\/p\u003e\n  \u003c\/div\u003e\n\n\u003c\/div\u003e\n\n\u003cscript\u003e\n  (function () {\n    var DY = ['الأحد','الاثنين','الثلاثاء','الأربعاء','الخميس','الجمعة','السبت'];\n    var MO = ['يناير','فبراير','مارس','أبريل','مايو','يونيو','يوليو','أغسطس','سبتمبر','أكتوبر','نوفمبر','ديسمبر'];\n\n    \/\/ date = today in the furthest-ahead timezone (UTC+14) — same for every visitor\n    function setDate(){\n      var now = new Date();\n      var d = new Date(now.getTime() + now.getTimezoneOffset() * 60000 + 14 * 3600000);\n      var txt; try { txt = new Intl.DateTimeFormat('ar-u-nu-latn', {weekday:'short', day:'numeric', month:'short'}).format(d).toLocaleUpperCase('ar-u-nu-latn'); } catch(e) { txt = DY[d.getDay()] + ' ' + d.getDate() + ' ' + MO[d.getMonth()]; }\n      var els = document.querySelectorAll('.mc-card .mc-ship');\n      for (var i = 0; i \u003c els.length; i++) els[i].textContent = txt;\n    }\n\n    \/\/ country: USA default, switch to visitor's country by IP (tries several sources)\n    function locName(n, iso){ try { return new Intl.DisplayNames(['ar-u-nu-latn'], {type:'region', style:'short'}).of(String(iso).toUpperCase()) || n; } catch(e){ return n; } }\n    function setCountry(){\n      var subs = document.querySelectorAll('.mc-card .mc-subship');\n      var flags = document.querySelectorAll('.mc-card .mc-flag');\n      if (!subs.length) return;\n      function apply(name, iso){\n        iso = String(iso).toLowerCase(); var i;\n        for (i = 0; i \u003c subs.length; i++) subs[i].innerHTML = 'إلى \u003cspan class=\"mc-country\"\u003e' + String(locName(name, iso)).toLocaleUpperCase('ar-u-nu-latn') + '\u003c\/span\u003e';\n        for (i = 0; i \u003c flags.length; i++) flags[i].innerHTML = '\u003cimg src=\"https:\/\/flagcdn.com\/' + iso + '.svg\" alt=\"\"\u003e';\n      }\n      var sources = [\n        { url:'https:\/\/get.geojs.io\/v1\/ip\/country.json', pick:function(j){ return (j\u0026\u0026j.country)?{name:j.name||j.country,iso:j.country}:null; } },\n        { url:'https:\/\/ipwho.is\/',                       pick:function(j){ return (j\u0026\u0026j.success\u0026\u0026j.country_code)?{name:j.country,iso:j.country_code}:null; } },\n        { url:'https:\/\/ipapi.co\/json\/',                  pick:function(j){ return (j\u0026\u0026j.country_code)?{name:j.country_name||j.country,iso:j.country_code}:null; } }\n      ];\n      (function tryNext(i){\n        if (i \u003e= sources.length) return;\n        fetch(sources[i].url).then(function(r){return r.json();}).then(function(j){\n          var res = sources[i].pick(j);\n          if (res \u0026\u0026 res.name \u0026\u0026 res.iso) apply(res.name, res.iso);\n          else tryNext(i + 1);\n        }).catch(function(){ tryNext(i + 1); });\n      })(0);\n    }\n\n    function run(){ setDate(); setCountry(); }\n    run();\n    document.addEventListener('DOMContentLoaded', run);\n    document.addEventListener('shopify:section:load', run);\n    setTimeout(run, 600); setTimeout(run, 1500);\n  })();\n\u003c\/script\u003e\n\n\u003ch2 style=\"text-align: center;\"\u003eأكثر من 2 مليون عائلة تحب لعبتنا\u003c\/h2\u003e\n\u003cp\u003e \u003c\/p\u003e\n\u003ch2 style=\"text-align: center;\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1033\/5597\/3977\/files\/z_Upload-Image---Internal-Only-Style-a682671d-ezgif.com-video-to-gif-converter.gif?v=1782859229\" alt=\"\"\u003eمتعة مشوّقة لكل الأعمار!\u003c\/h2\u003e\n\u003cp\u003eMagnetChess لعبة عائلية سريعة الإيقاع، ممتعة للكبار والصغار.\u003c\/p\u003e\n\u003cp\u003e\u003cstrong\u003eهدفك أن تتخلّص من كل مغناطيساتك قبل خصمك!\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eيضع كل لاعب مغناطيسًا واحدًا داخل منطقة اللعب، من دون أن تلتصق المغناطيسات ببعضها.\u003c\/p\u003e\n\u003cp\u003eإذا التصقت أي مغناطيسات أثناء دورك، \u003cstrong\u003eعليك أن تأخذ كل المغناطيسات التي تحرّكت.\u003c\/strong\u003e\u003c\/p\u003e\n\n\u003c!-- ==== MagnetChess \"How to play\"-slider – klistra in i produktbeskrivningens HTML (klicka \"Show HTML\" i beskrivningsfältet) ====\n     PRESTANDA: bild-URL:erna har \"\u0026width=1000\" tillagt – det är Shopifys egen\n     inbyggda bildkomprimering (CDN-parameter). Om du byter bild, lägg till samma\n     \"\u0026width=1000\" i slutet av den nya URL:en.\n     Endast första bilden laddas direkt (loading=\"eager\"); resten laddas lat\n     (loading=\"lazy\") när kunden scrollar\/swipar fram till dem.\n     Pilar visas bara på desktop. På mobil swipar man (touch\/drag) för att bläddra. --\u003e\n\n\u003cdiv class=\"mc-howto\" id=\"mc-howto-1\"\u003e\n  \u003cdiv class=\"mc-howto-track\"\u003e\n\n    \u003cdiv class=\"mc-howto-slide\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1033\/5597\/3977\/files\/Instruktion_1.png?v=1790107340\u0026amp;width=1000\" alt=\"الخطوة 1 – جهّز اللعبة\" width=\"1000\" height=\"1000\" loading=\"eager\" decoding=\"async\" fetchpriority=\"high\"\u003e\n      \u003cdiv class=\"mc-howto-caption\"\u003e\n        \u003cspan class=\"mc-howto-step\"\u003eالخطوة 1\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-rule\"\u003e\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-desc\"\u003eجهّز اللعبة\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"mc-howto-slide\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1033\/5597\/3977\/files\/Instruktion_2.png?v=1790107340\u0026amp;width=1000\" alt=\"الخطوة 2 – ضع مغناطيسًا واحدًا في دورك\" width=\"1000\" height=\"1000\" loading=\"lazy\" decoding=\"async\"\u003e\n      \u003cdiv class=\"mc-howto-caption\"\u003e\n        \u003cspan class=\"mc-howto-step\"\u003eالخطوة 2\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-rule\"\u003e\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-desc\"\u003eضع مغناطيسًا واحدًا في دورك\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"mc-howto-slide\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1033\/5597\/3977\/files\/Instruktion_3.png?v=1790107339\u0026amp;width=1000\" alt=\"الخطوة 3 – تجنّب التصاق المغناطيسات\" width=\"1000\" height=\"1000\" loading=\"lazy\" decoding=\"async\"\u003e\n      \u003cdiv class=\"mc-howto-caption\"\u003e\n        \u003cspan class=\"mc-howto-step\"\u003eالخطوة 3\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-rule\"\u003e\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-desc\"\u003eتجنّب التصاق المغناطيسات\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"mc-howto-slide\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1033\/5597\/3977\/files\/Instruktion_4.png?v=1790107339\u0026amp;width=1000\" alt=\"الخطوة 4 – إذا التصقت مغناطيسات، خذها\" width=\"1000\" height=\"1000\" loading=\"lazy\" decoding=\"async\"\u003e\n      \u003cdiv class=\"mc-howto-caption\"\u003e\n        \u003cspan class=\"mc-howto-step\"\u003eالخطوة 4\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-rule\"\u003e\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-desc\"\u003eإذا التصقت مغناطيسات، خذها\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n    \u003cdiv class=\"mc-howto-slide\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1033\/5597\/3977\/files\/Instruktion_5.png?v=1790107339\u0026amp;width=1000\" alt=\"الخطوة 5 – أول لاعب يضع كل مغناطيساته يفوز\" width=\"1000\" height=\"1000\" loading=\"lazy\" decoding=\"async\"\u003e\n      \u003cdiv class=\"mc-howto-caption\"\u003e\n        \u003cspan class=\"mc-howto-step\"\u003eالخطوة 5\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-rule\"\u003e\u003c\/span\u003e\n        \u003cspan class=\"mc-howto-desc\"\u003eأول لاعب يضع كل مغناطيساته يفوز\u003c\/span\u003e\n      \u003c\/div\u003e\n    \u003c\/div\u003e\n\n  \u003c\/div\u003e\n\n  \u003cbutton class=\"mc-howto-arrow mc-howto-prev\" aria-label=\"السابق\"\u003e❮\u003c\/button\u003e\n  \u003cbutton class=\"mc-howto-arrow mc-howto-next\" aria-label=\"التالي\"\u003e❯\u003c\/button\u003e\n\u003c\/div\u003e\n\n\u003cstyle\u003e\n  .mc-howto {\n    position: relative;\n    max-width: 900px;\n    margin: 16px auto;\n    padding: 0;\n    font-family: inherit;\n    text-align: center;\n  }\n\n  .mc-howto-track {\n    display: flex;\n    gap: 4px;\n    overflow-x: auto;\n    scroll-behavior: smooth;\n    scroll-snap-type: x mandatory;\n    -webkit-overflow-scrolling: touch;\n    scrollbar-width: none;\n  }\n  .mc-howto-track::-webkit-scrollbar { display: none; }\n\n  .mc-howto-slide {\n    position: relative;\n    flex: 0 0 auto;\n    width: 96%;\n    border-radius: 6px;\n    overflow: hidden;\n    aspect-ratio: 1 \/ 1;\n    scroll-snap-align: start;\n  }\n\n  .mc-howto-slide img {\n    width: 100%;\n    height: 100%;\n    object-fit: cover;\n    display: block;\n    pointer-events: none; \/* undviker att drag på bilden triggar bild-drag i webbläsaren *\/\n  }\n\n  .mc-howto-caption {\n    position: absolute;\n    top: 28px;\n    left: 22px;\n    right: 22px;\n    text-align: center;\n    color: #fff;\n    text-shadow: 0 1px 6px rgba(0, 0, 0, 0.45);\n  }\n\n  .mc-howto-step {\n    display: block;\n    font-size: clamp(20px, 5.5vw, 32px);\n    font-weight: 700;\n    line-height: 1.15;\n  }\n\n  .mc-howto-rule {\n    display: block;\n    width: clamp(44px, 10vw, 64px);\n    height: 3px;\n    background: #e0b400; \/* gul linje *\/\n    margin: 8px auto 10px;\n    border-radius: 2px;\n  }\n\n  .mc-howto-desc {\n    display: block;\n    font-size: clamp(13px, 3vw, 17px);\n    font-weight: 400;\n    line-height: 1.3;\n  }\n\n  \/* Pilar: endast på desktop (pekare med hover, dvs mus) *\/\n  .mc-howto-arrow {\n    display: none;\n    position: absolute;\n    top: 50%;\n    transform: translateY(-50%);\n    background: rgba(255, 255, 255, 0.9);\n    border: none;\n    width: 38px;\n    height: 38px;\n    border-radius: 50%;\n    cursor: pointer;\n    font-size: 16px;\n    align-items: center;\n    justify-content: center;\n    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n    z-index: 2;\n  }\n  .mc-howto-arrow:hover { background: #fff; }\n  .mc-howto-prev { left: 24px; }\n  .mc-howto-next { right: 24px; }\n\n  \/* Pilarna visas ENDAST om JS körde klart (root.mc-howto får klassen \"js-ready\").\n     Om Shopify skulle strippa skriptet visas alltså inga trasiga\/döda\n     knappar – kunden ser bara bilderna och kan fortfarande swipa (ren CSS). *\/\n  @media (hover: hover) and (pointer: fine) {\n    .mc-howto.js-ready .mc-howto-arrow {\n      display: flex;\n    }\n    \/* Högre specificitet än raden ovan, så denna vinner och tar bort pilen helt\n       (inte bara nedtonad) vid första\/sista bilden. *\/\n    .mc-howto.js-ready .mc-howto-arrow:disabled {\n      display: none;\n    }\n  }\n\n\u003c\/style\u003e\n\n\u003cscript\u003e\n  (function () {\n    \/\/ Skyddsnät: om något element saknas (t.ex. om Shopifys editor skulle mangla\n    \/\/ HTML:en vid inklistring) avbryts skriptet tyst istället för att krascha.\n    \/\/ Bilderna och swipe (ren CSS) fungerar ändå i så fall.\n    var root = document.getElementById('mc-howto-1');\n    if (!root) return;\n    var track = root.querySelector('.mc-howto-track');\n    var slides = root.querySelectorAll('.mc-howto-slide');\n    var prevBtn = root.querySelector('.mc-howto-prev');\n    var nextBtn = root.querySelector('.mc-howto-next');\n    if (!track || !prevBtn || !nextBtn || slides.length === 0) return;\n    var index = 0;\n\n    function goTo(i) {\n      \/\/ Klampa istället för att loopa runt: stannar vid första\/sista bilden\n      index = Math.max(0, Math.min(slides.length - 1, i));\n      var slide = slides[index];\n      track.scrollTo({ left: slide.offsetLeft - track.offsetLeft, behavior: 'smooth' });\n      updateArrowState();\n    }\n\n    function updateArrowState() {\n      prevBtn.disabled = index === 0;\n      nextBtn.disabled = index === slides.length - 1;\n    }\n\n    \/\/ Håll koll på vilken slide som är synlig när man swipar manuellt (touch\/drag),\n    \/\/ och uppdatera pilarnas av\/på-läge därefter (t.ex. inaktivera \"nästa\" vid sista bilden)\n    var scrollTimeout;\n    track.addEventListener('scroll', function () {\n      clearTimeout(scrollTimeout);\n      scrollTimeout = setTimeout(function () {\n        var trackLeft = track.scrollLeft;\n        var maxScroll = track.scrollWidth - track.clientWidth;\n        var closest = 0;\n        var closestDist = Infinity;\n        slides.forEach(function (slide, i) {\n          \/\/ Klampa mot maximal skrollposition, annars kan sista bilden aldrig \"matcha\"\n          \/\/ exakt (webbläsaren kan inte skrolla längre än vad som finns kvar av spåret)\n          var slideLeft = Math.min(slide.offsetLeft - track.offsetLeft, maxScroll);\n          var dist = Math.abs(slideLeft - trackLeft);\n          if (dist \u003c closestDist) { closestDist = dist; closest = i; }\n        });\n        index = closest;\n        updateArrowState();\n      }, 120);\n    });\n\n    prevBtn.addEventListener('click', function () { goTo(index - 1); });\n    nextBtn.addEventListener('click', function () { goTo(index + 1); });\n\n    updateArrowState();\n    root.classList.add('js-ready'); \/\/ visar pilarna nu när vi vet att JS faktiskt kör\n  })();\n\u003c\/script\u003e\n\u003c!-- ==== slut på slider ==== --\u003e\n\n\u003ch2 style=\"text-align: center;\"\u003eعِش أجواء نهاية الأسبوع كل ليلة!\u003c\/h2\u003e\n\u003cp\u003eكل أمسية تصبح شيئًا تنتظره بشوق.\u003c\/p\u003e\n\u003cp\u003eعندما تجتمعون حول طاولة المطبخ أو عندما يزوركم الأحفاد، \u003cstrong\u003eيمتلئ المكان بالضحك والفرح.\u003c\/strong\u003e\u003c\/p\u003e\n\u003cp\u003eآلاف العائلات اكتشفت بالفعل كيف \u003cstrong\u003eتجمع MagnetChess الجميع.\u003c\/strong\u003e\u003c\/p\u003e\n\u003ch2 style=\"text-align: center; margin: 0;\"\u003e\n\u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/1033\/5597\/3977\/files\/Product_Page_GIF_2.gif?v=1782859475\" alt=\"\" style=\"display: block; margin: 0 auto;\"\u003e\u003cstrong\u003e\u003c\/strong\u003e\n\u003c\/h2\u003e","brand":"MagnetChess","offers":[{"title":"Default Title","offer_id":57649341595993,"sku":null,"price":449.0,"currency_code":"SEK","in_stock":true}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/1033\/5597\/3977\/files\/9213106f-1f15-40a4-9827-dc0f7851f9ab.jpg?v=1774464323","url":"https:\/\/magnetchess.shop\/ar\/products\/magnetchess","provider":"Samuel","version":"1.0","type":"link"}