{
  "version": 3,
  "sources": ["/cdn/shop/t/107/assets/panel-led-v4.share-r17g-v5.js?p2cr4p120dqr=20261005r1&p2cr6r35ownerroot=20261003r1"],
  "sourcesContent": ["/* =========================================================\r\n   PANEL LED V4 \u2014 4A SHARE / DEEPLINK FOUNDATION\r\n   M\u00FCh\u00FCr: PANEL-V4-4A-SHARE-DEEPLINK-FOUNDATION\r\n\r\n   G\u00F6rev:\r\n   - Se\u00E7ilen \u00FCr\u00FCnleri, kullan\u0131m amac\u0131n\u0131 ve compare state'ini payla\u015F\u0131labilir linke yazar.\r\n   - Link a\u00E7\u0131ld\u0131\u011F\u0131nda paneli a\u00E7ar, \u00FCr\u00FCnleri yeniden se\u00E7er, kar\u015F\u0131la\u015Ft\u0131rmay\u0131 yeniden \u00FCretir.\r\n   - PNG / QR \u00FCretmez. Bu faz sadece deep-link temelidir.\r\n   ========================================================= */\r\n(function (window, document) {\r\n  \"use strict\";\r\n\r\n  if (window.GDX_PANEL_LED_V4_SHARE_READY) return;\r\n  window.GDX_PANEL_LED_V4_SHARE_READY = true;\r\n\r\n  var VERSION = \"PANEL-V4-R4PA-P1.20D-R2-QR-COMPACT-DEEPLINK-RESTORE-V1\";\r\n  var PARAM = \"gdx_panel_v4\";\r\n  var COMPACT_PARAM = \"gdx_pv4\";\r\n  var QR_PARAM = \"gdx_qv4\";\r\n  var LAST_RESTORE = null;\r\n  var LAST_COPY = null;\r\n  var LAST_SHARE_PACKAGE = null;\r\n  var COMPARE_SHARE_RENDER_STATE = {\r\n    calls: 0,\r\n    rebuilds: 0,\r\n    reuses: 0,\r\n    lastSignature: \"\",\r\n    lastReason: \"\",\r\n    lastAt: 0\r\n  };\r\n  var COMPARE_NATIVE_SHARE_STATE = {\r\n    calls: 0,\r\n    lastAt: 0,\r\n    userActivationAtCall: null,\r\n    packageFileReady: false,\r\n    fileShareSupported: false,\r\n    payloadHadFile: false,\r\n    invocationStarted: false,\r\n    lastResult: null\r\n  };\r\n  var COMPARE_LOADER_STATE = {\r\n    version: \"PANEL-COMPARE-UL02-UNIVERSAL-LOADER-V1\",\r\n    requested: false,\r\n    token: \"\",\r\n    payload: null,\r\n    startedAt: 0,\r\n    finishedAt: 0,\r\n    finalTarget: null,\r\n    restoreResult: null\r\n  };\r\n\r\n  function ready(fn) {\r\n    if (document.readyState === \"loading\") {\r\n      document.addEventListener(\"DOMContentLoaded\", fn, { once: true });\r\n    } else {\r\n      fn();\r\n    }\r\n  }\r\n\r\n  function cleanText(value) {\r\n    return String(value || \"\").replace(/\\s+/g, \" \").trim();\r\n  }\r\n\r\n  function escapeHtml(value) {\r\n    return String(value || \"\").replace(/[&<>\"']/g, function (char) {\r\n      return {\r\n        \"&\": \"&amp;\",\r\n        \"<\": \"&lt;\",\r\n        \">\": \"&gt;\",\r\n        '\"': \"&quot;\",\r\n        \"'\": \"&#39;\"\r\n      }[char];\r\n    });\r\n  }\r\n\r\n  function encodePayload(payload) {\r\n    var json = JSON.stringify(payload || {});\r\n    return window.btoa(unescape(encodeURIComponent(json)))\r\n      .replace(/\\+/g, \"-\")\r\n      .replace(/\\//g, \"_\")\r\n      .replace(/=+$/g, \"\");\r\n  }\r\n\r\n  function decodePayload(value) {\r\n    try {\r\n      value = String(value || \"\").replace(/-/g, \"+\").replace(/_/g, \"/\");\r\n\r\n      while (value.length % 4) {\r\n        value += \"=\";\r\n      }\r\n\r\n      return JSON.parse(decodeURIComponent(escape(window.atob(value))));\r\n    } catch (error) {\r\n      return null;\r\n    }\r\n  }\r\n\r\n  function getDataApi() {\r\n    return window.GDX_PANEL_LED_V4 || null;\r\n  }\r\n\r\n  function getUiApi() {\r\n    return window.GDX_PANEL_LED_V4_UI || null;\r\n  }\r\n\r\n  function getCompareApi() {\r\n    return window.GDX_PANEL_LED_V4_COMPARE || null;\r\n  }\r\n\r\n  function getProducts() {\r\n    var API = getDataApi();\r\n    if (!API || !API.state || !Array.isArray(API.state.products)) return [];\r\n    return API.state.products;\r\n  }\r\n\r\n  function root() {\r\n    return document.getElementById(\"gdx-panel-led-v4-root\");\r\n  }\r\n\r\n  function resultEl() {\r\n    return document.getElementById(\"gdxPanelV4ResultPreview\");\r\n  }\r\n\r\n  function commerceEl() {\r\n    return document.getElementById(\"gdxPanelV4CommercePreview\");\r\n  }\r\n\r\n  function recommendationEl() {\r\n    return document.getElementById(\"gdxPanelV4RecommendationPreview\");\r\n  }\r\n\r\n  function getShareMount() {\r\n    var existing = document.getElementById(\"gdxPanelV4SharePreview\");\r\n    if (existing) return existing;\r\n\r\n    var r = root();\r\n    if (!r) return null;\r\n\r\n    var anchor = commerceEl() || recommendationEl() || resultEl();\r\n    if (!anchor || !anchor.parentNode) return null;\r\n\r\n    var el = document.createElement(\"div\");\r\n    el.id = \"gdxPanelV4SharePreview\";\r\n    el.className = \"gdx-panel-v4-share-mount\";\r\n\r\n    anchor.parentNode.insertBefore(el, anchor.nextSibling);\r\n    return el;\r\n  }\r\n\r\n  function productKey(product) {\r\n    return cleanText(product && (product.key || product.handle || product.id || \"\"));\r\n  }\r\n\r\n  function normalizeProductKey(value) {\r\n  value = cleanText(value).toLocaleLowerCase(\"tr-TR\");\r\n\r\n  value = value.replace(/^\\/products\\//i, \"\");\r\n  value = value.split(\"?\")[0].split(\"#\")[0];\r\n\r\n  return value;\r\n}\r\n\r\nfunction getProductCandidates(product) {\r\n  product = product || {};\r\n\r\n  var urlHandle = \"\";\r\n\r\n  if (product.url && String(product.url).indexOf(\"/products/\") > -1) {\r\n    urlHandle = String(product.url).split(\"/products/\")[1];\r\n  }\r\n\r\n  return [\r\n    product.key,\r\n    product.handle,\r\n    product.id,\r\n    product.productId,\r\n    product.url,\r\n    urlHandle,\r\n    product.title,\r\n    product.shortTitle\r\n  ].map(normalizeProductKey).filter(Boolean);\r\n}\r\n\r\nfunction findProduct(key) {\r\n  var wanted = normalizeProductKey(key);\r\n\r\n  if (!wanted) return null;\r\n\r\n  var products = getProducts();\r\n\r\n  var exact = products.find(function (product) {\r\n    return getProductCandidates(product).indexOf(wanted) > -1;\r\n  });\r\n\r\n  if (exact) return exact;\r\n\r\n  var contains = products.find(function (product) {\r\n    var candidates = getProductCandidates(product);\r\n\r\n    return candidates.some(function (candidate) {\r\n      return candidate === wanted ||\r\n        candidate.indexOf(wanted) > -1 ||\r\n        wanted.indexOf(candidate) > -1;\r\n    });\r\n  });\r\n\r\n  if (contains) return contains;\r\n\r\n  return null;\r\n}\r\n\r\n  function activeComparisonState(state) {\r\n    state = state || {};\r\n\r\n    var poolActive = !!(\r\n      state.resultSource === \"POOL\" &&\r\n      state.poolCompareResult &&\r\n      state.poolCompareResult.ok === true &&\r\n      state.poolSelected &&\r\n      state.poolSelected[1] &&\r\n      state.poolSelected[2]\r\n    );\r\n\r\n    return {\r\n      source: poolActive ? \"POOL\" : \"TOP3\",\r\n      selected: (poolActive ? state.poolSelected : state.selected) || { 1:null, 2:null },\r\n      result: (poolActive ? state.poolCompareResult : state.compareResult) || null\r\n    };\r\n  }\r\n\r\n  function currentPayload() {\r\n    var UI = getUiApi();\r\n    var state = UI && UI.state ? UI.state : null;\r\n\r\n    if (!state) return null;\r\n\r\n    var active = activeComparisonState(state);\r\n    var p1 = active.selected && active.selected[1] ? active.selected[1] : null;\r\n    var p2 = active.selected && active.selected[2] ? active.selected[2] : null;\r\n\r\n    if (!p1 || !p2) return null;\r\n\r\n    return {\r\n      v: 1,\r\n      source: VERSION,\r\n      resultSource: active.source,\r\n      p1: productKey(p1),\r\n      p2: productKey(p2),\r\n      profile: cleanText(state.compareProfileKey || \"general\"),\r\n      useCase: cleanText(state.recommendFamilyKey || \"content_creation\"),\r\n      scenario: cleanText(state.recommendScenarioKey || \"\"),\r\n      compare: !!(active.result && active.result.ok),\r\n      ts: Date.now()\r\n    };\r\n  }\r\n\r\n  function currentCompactPayload() {\r\n  var payload = currentPayload();\r\n\r\n  if (!payload) return null;\r\n\r\n  return {\r\n    v: 2,\r\n    a: payload.p1,\r\n    b: payload.p2,\r\n    p: payload.profile || \"general\",\r\n    u: payload.useCase || \"content_creation\",\r\n    s: payload.scenario || \"\",\r\n    c: payload.compare ? 1 : 0,\r\n    r: payload.resultSource === \"POOL\" ? \"P\" : \"T\"\r\n  };\r\n}\r\n\r\nfunction expandCompactPayload(payload) {\r\n  if (!payload || payload.v !== 2) return payload;\r\n\r\n  return {\r\n    v: 1,\r\n    source: VERSION,\r\n    p1: cleanText(payload.a || \"\"),\r\n    p2: cleanText(payload.b || \"\"),\r\n    profile: cleanText(payload.p || \"general\"),\r\n    useCase: cleanText(payload.u || \"content_creation\"),\r\n    scenario: cleanText(payload.s || \"\"),\r\n    compare: !!payload.c,\r\n    resultSource: payload.r === \"P\" ? \"POOL\" : \"TOP3\",\r\n    ts: Date.now()\r\n  };\r\n}\r\n\r\n  function buildShareUrl(payload) {\r\n  var compactPayload = payload ? null : currentCompactPayload();\r\n\r\n  payload = payload || compactPayload || currentPayload();\r\n\r\n  if (!payload) return \"\";\r\n\r\n  // Compare share must be route-isolated. Never inherit Setup / Top3 / WHY / other\r\n  // share-route query state from the current page URL; those parameters can make\r\n  // the local QR payload exceed its fixed byte capacity and abort PNG rendering.\r\n  var url = new URL(window.location.pathname, window.location.origin);\r\n\r\n  if (compactPayload) {\r\n    url.searchParams.set(COMPACT_PARAM, encodePayload(compactPayload));\r\n  } else {\r\n    url.searchParams.set(PARAM, encodePayload(payload));\r\n  }\r\n\r\n  url.hash = \"\";\r\n\r\n  return url.toString();\r\n}\r\n\r\n  function buildQrShareUrl(payload) {\r\n  payload = payload || currentPayload();\r\n\r\n  if (!payload || !payload.p1 || !payload.p2) return \"\";\r\n\r\n  /*\r\n   * P1.20D-R2 \u2014 QR uses the SAME proven comparison transport as the\r\n   * working textual deeplink: gdx_pv4.\r\n   *\r\n   * The earlier QR-only gdx_qv4 transport could be decoded by this runtime,\r\n   * but it was not equivalent to the established page-entry route contract.\r\n   * New comparison PNG QR codes therefore use gdx_pv4 directly.\r\n   */\r\n  var compact = {\r\n    v: 2,\r\n    a: cleanText(payload.p1 || \"\"),\r\n    b: cleanText(payload.p2 || \"\"),\r\n    p: cleanText(payload.profile || \"general\"),\r\n    u: cleanText(payload.useCase || \"content_creation\"),\r\n    s: cleanText(payload.scenario || \"\"),\r\n    c: payload.compare ? 1 : 0,\r\n    r: payload.resultSource === \"POOL\" ? \"P\" : \"T\"\r\n  };\r\n\r\n  function makeUrl() {\r\n    var url = new URL(\"https://canfoto.com/pages/panel-led-secim-motoru\");\r\n    url.searchParams.set(COMPACT_PARAM, encodePayload(compact));\r\n    return url;\r\n  }\r\n\r\n  var url = makeUrl();\r\n  var safeLimit = 410;\r\n\r\n  /*\r\n   * Keep A/B + compare + resultSource mandatory.\r\n   * Remove only optional context if a long product handle pushes the URL\r\n   * toward the local QR byte envelope.\r\n   */\r\n  if (url.toString().length > safeLimit && compact.s) {\r\n    compact.s = \"\";\r\n    url = makeUrl();\r\n  }\r\n\r\n  if (url.toString().length > safeLimit && compact.u !== \"content_creation\") {\r\n    compact.u = \"content_creation\";\r\n    url = makeUrl();\r\n  }\r\n\r\n  if (url.toString().length > safeLimit && compact.p !== \"general\") {\r\n    compact.p = \"general\";\r\n    url = makeUrl();\r\n  }\r\n\r\n  return url.toString();\r\n}\r\n\r\nfunction decodeQrPayload(url) {\r\n  if (!url || url.searchParams.get(QR_PARAM) !== \"1\") return null;\r\n\r\n  var p1 = cleanText(url.searchParams.get(\"a\") || \"\");\r\n  var p2 = cleanText(url.searchParams.get(\"b\") || \"\");\r\n\r\n  if (!p1 || !p2) return null;\r\n\r\n  return {\r\n    v: 1,\r\n    source: VERSION,\r\n    p1: p1,\r\n    p2: p2,\r\n    profile: cleanText(url.searchParams.get(\"p\") || \"general\"),\r\n    useCase: cleanText(url.searchParams.get(\"u\") || \"content_creation\"),\r\n    scenario: cleanText(url.searchParams.get(\"s\") || \"\"),\r\n    compare: url.searchParams.get(\"c\") === \"1\",\r\n    resultSource: url.searchParams.get(\"r\") === \"P\" ? \"POOL\" : \"TOP3\",\r\n    ts: Date.now()\r\n  };\r\n}\r\n\r\n  function decodeFromUrl(urlValue) {\r\n  var url;\r\n  var qrPayload;\r\n  var compact;\r\n  var legacy;\r\n\r\n  try {\r\n    url = new URL(urlValue || window.location.href, window.location.origin);\r\n  } catch (error) {\r\n    return null;\r\n  }\r\n\r\n  qrPayload = decodeQrPayload(url);\r\n  if (qrPayload) return qrPayload;\r\n\r\n  compact = decodePayload(url.searchParams.get(COMPACT_PARAM) || \"\");\r\n  if (compact) return expandCompactPayload(compact);\r\n\r\n  legacy = decodePayload(url.searchParams.get(PARAM) || \"\");\r\n  return legacy;\r\n}\r\n\r\n  function comparisonUniversalLoader() {\r\n    return window.GDX_NORA_UNIVERSAL_SHARE_LOADER_V1 || null;\r\n  }\r\n\r\n  function beginComparisonLoaderDeferred(payload) {\r\n    COMPARE_LOADER_STATE.requested = true;\r\n    COMPARE_LOADER_STATE.payload = payload || null;\r\n\r\n    if (COMPARE_LOADER_STATE.token) {\r\n      return Promise.resolve(COMPARE_LOADER_STATE.token);\r\n    }\r\n\r\n    return new Promise(function (resolve) {\r\n      var attempts = 0;\r\n      (function tryBegin() {\r\n        var loader = comparisonUniversalLoader();\r\n\r\n        if (loader && typeof loader.begin === \"function\") {\r\n          var token = loader.begin(\"panel\", \"compare\");\r\n          COMPARE_LOADER_STATE.token = token || \"\";\r\n          COMPARE_LOADER_STATE.startedAt = Date.now();\r\n\r\n          if (token && typeof loader.stage === \"function\") {\r\n            loader.stage(\r\n              token,\r\n              14,\r\n              \"Kar\u015F\u0131la\u015Ft\u0131rma ba\u011Flant\u0131s\u0131 okunuyor\u2026\",\r\n              \"Kar\u015F\u0131la\u015Ft\u0131rma haz\u0131rlan\u0131yor\"\r\n            );\r\n          }\r\n\r\n          resolve(token || \"\");\r\n          return;\r\n        }\r\n\r\n        attempts += 1;\r\n\r\n        /*\r\n         * The universal loader service is defined later in this same share.js file.\r\n         * A short deferred lookup lets the whole file finish evaluating without\r\n         * touching comparison restore timing or core state.\r\n         */\r\n        if (attempts < 80) {\r\n          setTimeout(tryBegin, 25);\r\n          return;\r\n        }\r\n\r\n        resolve(\"\");\r\n      })();\r\n    });\r\n  }\r\n\r\n  function stageComparisonLoader(token, percent, label, step) {\r\n    var loader = comparisonUniversalLoader();\r\n    if (!token || !loader || typeof loader.stage !== \"function\") return false;\r\n    return loader.stage(token, percent, label, step);\r\n  }\r\n\r\n  function finishComparisonLoader(token, success, restoreResult) {\r\n    COMPARE_LOADER_STATE.finishedAt = Date.now();\r\n    COMPARE_LOADER_STATE.restoreResult = restoreResult || null;\r\n\r\n    var loader = comparisonUniversalLoader();\r\n    if (!token || !loader || typeof loader.finish !== \"function\") return false;\r\n\r\n    return loader.finish(token, !!success, restoreResult || null);\r\n  }\r\n\r\n  function compareFinalSnapshot(payload) {\r\n    var UI = getUiApi();\r\n    var state = UI && UI.state ? UI.state : null;\r\n    var active = activeComparisonState(state);\r\n    var p1 = active.selected && active.selected[1] ? active.selected[1] : null;\r\n    var p2 = active.selected && active.selected[2] ? active.selected[2] : null;\r\n    var result = resultEl();\r\n    var mount = document.getElementById(\"gdxPanelV4SharePreview\");\r\n    var signature = state && payload ? comparisonShareSignature(state, payload) : \"\";\r\n    var mountSignature = mount\r\n      ? cleanText(mount.getAttribute(\"data-gdx-panel-compare-share-signature\"))\r\n      : \"\";\r\n\r\n    var exactProducts = !!(\r\n      payload &&\r\n      p1 &&\r\n      p2 &&\r\n      productKey(p1) === cleanText(payload.p1) &&\r\n      productKey(p2) === cleanText(payload.p2)\r\n    );\r\n\r\n    var compareOk = !!(\r\n      state &&\r\n      active.result &&\r\n      active.result.ok\r\n    );\r\n\r\n    var resultVisible = !!(\r\n      result &&\r\n      !result.hidden &&\r\n      result.getAttribute(\"aria-hidden\") !== \"true\"\r\n    );\r\n\r\n    var shareMounted = !!(\r\n      mount &&\r\n      signature &&\r\n      mountSignature === signature\r\n    );\r\n\r\n    return {\r\n      exact: !!(exactProducts && compareOk && resultVisible && shareMounted),\r\n      exactProducts: exactProducts,\r\n      compareOk: compareOk,\r\n      resultVisible: resultVisible,\r\n      shareMounted: shareMounted,\r\n      targetP1: payload ? cleanText(payload.p1) : \"\",\r\n      targetP2: payload ? cleanText(payload.p2) : \"\",\r\n      activeP1: p1 ? productKey(p1) : \"\",\r\n      activeP2: p2 ? productKey(p2) : \"\",\r\n      signature: signature,\r\n      mountSignature: mountSignature\r\n    };\r\n  }\r\n\r\n  function waitForComparisonFinalTarget(payload, timeoutMs) {\r\n    timeoutMs = Number(timeoutMs) || 12000;\r\n\r\n    return new Promise(function (resolve) {\r\n      var started = Date.now();\r\n\r\n      (function tick() {\r\n        var snap = compareFinalSnapshot(payload);\r\n\r\n        if (snap.exact) {\r\n          /*\r\n           * Observation-only stability check. No state is written here.\r\n           * Require the exact A/B comparison to remain exact across one quiet window\r\n           * before the loader is allowed to disappear.\r\n           */\r\n          setTimeout(function () {\r\n            var stable = compareFinalSnapshot(payload);\r\n            stable.stableAfterQuietWindow = !!stable.exact;\r\n            resolve(stable);\r\n          }, 260);\r\n          return;\r\n        }\r\n\r\n        if (Date.now() - started >= timeoutMs) {\r\n          snap.stableAfterQuietWindow = false;\r\n          resolve(snap);\r\n          return;\r\n        }\r\n\r\n        setTimeout(tick, 90);\r\n      })();\r\n    });\r\n  }\r\n\r\n  function setStatus(message, state) {\r\n  var el = document.querySelector(\"#gdxPanelV4SharePreview .gdx-panel-v4-share-status\");\r\n  if (!el) return;\r\n\r\n  el.textContent = message || \"\";\r\n  el.classList.remove(\"is-success\", \"is-error\", \"success\", \"error\");\r\n\r\n  if (state === \"success\") {\r\n    el.classList.add(\"is-success\");\r\n  } else if (state === \"error\") {\r\n    el.classList.add(\"is-error\");\r\n  } else if (state) {\r\n    el.classList.add(state);\r\n  }\r\n}\r\n\r\n  function setCopyButtonState(button, label, state) {\r\n  if (!button) return;\r\n\r\n  button.textContent = label || \"Sonucu Payla\u015F\";\r\n  button.classList.remove(\"is-success\", \"is-error\", \"is-loading\");\r\n\r\n  if (state) button.classList.add(state);\r\n}\r\n\r\nfunction getShareInputValue() {\r\n  var input = document.querySelector(\"#gdxPanelV4SharePreview [data-gdx-panel-share-url]\");\r\n  return input ? cleanText(input.value) : buildShareUrl();\r\n}\r\n\r\nfunction selectShareInput() {\r\n  var input = document.querySelector(\"#gdxPanelV4SharePreview [data-gdx-panel-share-url]\");\r\n  if (!input) return false;\r\n\r\n  try {\r\n    input.focus();\r\n    input.select();\r\n    return true;\r\n  } catch (error) {\r\n    return false;\r\n  }\r\n}\r\n\r\nfunction nativeShareAvailable() {\r\n  return !!(navigator.share);\r\n}\r\n\r\nfunction nativeShareCurrentUrl() {\r\n  var url = getShareInputValue();\r\n\r\n  if (!url || !navigator.share) {\r\n    LAST_COPY = {\r\n      ok: false,\r\n      version: VERSION,\r\n      reason: \"native-share-not-supported\"\r\n    };\r\n\r\n    setStatus(\"Bu taray\u0131c\u0131 sistem payla\u015F\u0131m\u0131n\u0131 desteklemiyor. Payla\u015F\u0131m g\u00F6rseli haz\u0131rland\u0131\u011F\u0131nda alternatif y\u00F6ntem g\u00F6sterilir.\", \"error\");\r\n    return Promise.resolve(LAST_COPY);\r\n  }\r\n\r\n  return navigator.share({\r\n    title: \"Panel LED Kar\u015F\u0131la\u015Ft\u0131rmas\u0131\",\r\n    text: \"Panel LED kar\u015F\u0131la\u015Ft\u0131rmas\u0131n\u0131 inceleyin:\",\r\n    url: url\r\n  }).then(function () {\r\n    LAST_COPY = {\r\n      ok: true,\r\n      version: VERSION,\r\n      method: \"native-share\",\r\n      url: url\r\n    };\r\n\r\n    setStatus(\"Payla\u015F\u0131m penceresi a\u00E7\u0131ld\u0131.\", \"success\");\r\n    return LAST_COPY;\r\n  }).catch(function (error) {\r\n    LAST_COPY = {\r\n      ok: false,\r\n      version: VERSION,\r\n      method: \"native-share\",\r\n      reason: error && error.message ? error.message : \"native-share-cancelled\"\r\n    };\r\n\r\n    setStatus(\"Payla\u015F\u0131m tamamlanmad\u0131. Linki kopyalayarak veya WhatsApp ile g\u00F6nderebilirsiniz.\", \"error\");\r\n    return LAST_COPY;\r\n  });\r\n} \r\n\r\n\r\nfunction getShareCardApi() {\r\n  return window.GDX_PANEL_LED_V4_SHARE_CARD || null;\r\n}\r\n\r\nfunction setShareStatusHidden(hidden) {\r\n  var el = document.querySelector(\"#gdxPanelV4SharePreview .gdx-panel-v4-share-status\");\r\n  if (el) el.hidden = !!hidden;\r\n}\r\n\r\nfunction dataUrlToBlob(dataUrl) {\r\n  try {\r\n    var parts = String(dataUrl || \"\").split(\",\");\r\n    var meta = parts[0] || \"\";\r\n    var mimeMatch = meta.match(/data:([^;]+);base64/i);\r\n    var mime = mimeMatch ? mimeMatch[1] : \"image/png\";\r\n    var binary = window.atob(parts[1] || \"\");\r\n    var len = binary.length;\r\n    var bytes = new Uint8Array(len);\r\n\r\n    for (var i = 0; i < len; i += 1) {\r\n      bytes[i] = binary.charCodeAt(i);\r\n    }\r\n\r\n    return new Blob([bytes], { type: mime });\r\n  } catch (error) {\r\n    return null;\r\n  }\r\n}\r\n\r\nfunction dataUrlToFile(dataUrl, filename) {\r\n  var blob = dataUrlToBlob(dataUrl);\r\n  if (!blob) return null;\r\n\r\n  try {\r\n    return new File([blob], filename || \"panel-led-karsilastirma-sonucu.png\", { type: blob.type || \"image/png\" });\r\n  } catch (error) {\r\n    blob.name = filename || \"panel-led-karsilastirma-sonucu.png\";\r\n    blob.lastModified = Date.now();\r\n    return blob;\r\n  }\r\n}\r\n\r\nfunction updatePreparedPreview(dataUrl) {\r\n  var preview = document.querySelector(\"#gdxPanelV4SharePreview [data-gdx-panel-share-prepared-preview]\");\r\n  var readyPanel = document.querySelector(\"#gdxPanelV4SharePreview [data-gdx-panel-share-ready-panel]\");\r\n  var shareNow = document.querySelector(\"#gdxPanelV4SharePreview [data-gdx-panel-share-now]\");\r\n\r\n  if (preview) {\r\n    preview.innerHTML = '<img src=\"' + String(dataUrl || \"\") + '\" alt=\"Panel LED F/P payla\u015F\u0131m kart\u0131\">';\r\n  }\r\n\r\n  if (readyPanel) readyPanel.hidden = false;\r\n  if (shareNow) shareNow.hidden = false;\r\n}\r\n\r\nfunction triggerFallbackDownload(dataUrl) {\r\n  var fallback = document.querySelector(\"#gdxPanelV4SharePreview [data-gdx-panel-share-fallback-download]\");\r\n  if (!fallback || !dataUrl) return false;\r\n\r\n  fallback.href = dataUrl;\r\n  fallback.download = \"panel-led-karsilastirma-sonucu.png\";\r\n\r\n  try {\r\n    fallback.click();\r\n    return true;\r\n  } catch (error) {\r\n    return false;\r\n  }\r\n}\r\n\r\n\r\nfunction setButtonState(button, label, state) {\r\n  if (!button) return;\r\n\r\n  button.textContent = label || \"Sonucu Payla\u015F\";\r\n  button.classList.remove(\"is-success\", \"is-error\", \"is-loading\");\r\n\r\n  if (state) {\r\n    button.classList.add(state);\r\n  }\r\n\r\n  if (state === \"is-loading\") {\r\n    button.disabled = true;\r\n    button.setAttribute(\"aria-busy\", \"true\");\r\n  } else {\r\n    button.disabled = false;\r\n    button.removeAttribute(\"aria-busy\");\r\n  }\r\n}\r\n\r\nfunction prepareSharePackage(triggerButton) {\r\n  var SHARE_CARD = getShareCardApi();\r\n  var shareUrl = buildShareUrl();\r\n\r\n  if (!shareUrl) {\r\n    LAST_SHARE_PACKAGE = {\r\n      ok: false,\r\n      version: VERSION,\r\n      reason: \"missing-share-url\"\r\n    };\r\n\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Payla\u015F\u0131m i\u00E7in \u00F6nce iki \u00FCr\u00FCn\u00FC kar\u015F\u0131la\u015Ft\u0131r\u0131n.\", \"error\");\r\n    return Promise.resolve(LAST_SHARE_PACKAGE);\r\n  }\r\n\r\n  if (!SHARE_CARD || typeof SHARE_CARD.renderPng !== \"function\") {\r\n    LAST_SHARE_PACKAGE = {\r\n      ok: false,\r\n      version: VERSION,\r\n      reason: \"missing-share-card-api\"\r\n    };\r\n\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Payla\u015F\u0131m kart\u0131 motoru hen\u00FCz haz\u0131r de\u011Fil. Sayfay\u0131 yenileyip tekrar deneyin.\", \"error\");\r\n    return Promise.resolve(LAST_SHARE_PACKAGE);\r\n  }\r\n\r\n  var input = document.querySelector(\"#gdxPanelV4SharePreview [data-gdx-panel-share-url]\");\r\n  if (input) input.value = shareUrl;\r\n\r\n  if (triggerButton) {\r\n    setButtonState(triggerButton, \"Haz\u0131rlan\u0131yor...\", \"is-loading\");\r\n    triggerButton.disabled = true;\r\n  }\r\n\r\n  setShareStatusHidden(false);\r\n  setStatus(\"Payla\u015F\u0131m kart\u0131 haz\u0131rlan\u0131yor...\", \"is-loading\");\r\n\r\n  return SHARE_CARD.renderPng(triggerButton).then(function (renderResult) {\r\n    var dataUrl = renderResult && renderResult.dataUrl ? renderResult.dataUrl : \"\";\r\n\r\n    if (!renderResult || !renderResult.ok || !dataUrl) {\r\n      LAST_SHARE_PACKAGE = {\r\n        ok: false,\r\n        version: VERSION,\r\n        reason: renderResult && renderResult.reason ? renderResult.reason : \"share-card-render-failed\"\r\n      };\r\n\r\n      if (triggerButton) {\r\n        triggerButton.disabled = false;\r\n        setButtonState(triggerButton, \"Tekrar Dene\", \"is-error\");\r\n      }\r\n\r\n      setShareStatusHidden(false);\r\n      setStatus(\"Payla\u015F\u0131m kart\u0131 haz\u0131rlanamad\u0131. Tekrar deneyin.\", \"error\");\r\n      return LAST_SHARE_PACKAGE;\r\n    }\r\n\r\n    var preparedFile = dataUrlToFile(dataUrl, \"panel-led-karsilastirma-sonucu.png\");\r\n    var fileShareSupported = !!(\r\n      preparedFile &&\r\n      navigator.share &&\r\n      navigator.canShare &&\r\n      navigator.canShare({ files: [preparedFile] })\r\n    );\r\n\r\n    LAST_SHARE_PACKAGE = {\r\n      ok: true,\r\n      version: VERSION,\r\n      method: \"prepared-png-link\",\r\n      url: shareUrl,\r\n      dataUrl: dataUrl,\r\n      preparedFile: preparedFile || null,\r\n      preparedFileReady: !!preparedFile,\r\n      fileShareSupported: fileShareSupported,\r\n      width: renderResult.width || 0,\r\n      height: renderResult.height || 0,\r\n      ratio: renderResult.ratio || \"3:4\",\r\n      renderVersion: renderResult.version || \"\",\r\n      qrHasCompactParam: !!renderResult.qrHasCompactParam\r\n    };\r\n\r\n    updatePreparedPreview(dataUrl);\r\n\r\n    if (triggerButton) {\r\n      triggerButton.hidden = true;\r\n      triggerButton.disabled = false;\r\n      triggerButton.removeAttribute(\"aria-busy\");\r\n      triggerButton.classList.remove(\"is-loading\", \"is-error\", \"is-success\");\r\n    }\r\n\r\n    setStatus(\"\", \"success\");\r\n    setShareStatusHidden(true);\r\n\r\n    return LAST_SHARE_PACKAGE;\r\n  }).catch(function (error) {\r\n    LAST_SHARE_PACKAGE = {\r\n      ok: false,\r\n      version: VERSION,\r\n      reason: error && error.message ? error.message : \"share-prepare-error\"\r\n    };\r\n\r\n    if (triggerButton) {\r\n      triggerButton.disabled = false;\r\n      setButtonState(triggerButton, \"Tekrar Dene\", \"is-error\");\r\n    }\r\n\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Payla\u015F\u0131m haz\u0131rlan\u0131rken sorun olu\u015Ftu. Tekrar deneyin.\", \"error\");\r\n    return LAST_SHARE_PACKAGE;\r\n  });\r\n}\r\n\r\nfunction sharePreparedPackage(triggerButton) {\r\n  var pkg = LAST_SHARE_PACKAGE;\r\n\r\n  /*\r\n   * IMPORTANT: navigator.share() requires transient user activation.\r\n   * Never do PNG decoding / dataUrl->Blob->File conversion here.\r\n   * That work is intentionally completed in prepareSharePackage().\r\n   */\r\n  if (!pkg || !pkg.ok || !pkg.dataUrl) {\r\n    LAST_COPY = {\r\n      ok: false,\r\n      version: VERSION,\r\n      method: \"native-share\",\r\n      reason: \"share-package-not-prepared\",\r\n      requiresPreparedUserClick: true\r\n    };\r\n\r\n    if (triggerButton) setButtonState(triggerButton, \"\u00D6nce Haz\u0131rla\", \"is-error\");\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Payla\u015F\u0131m g\u00F6rseli hen\u00FCz haz\u0131r de\u011Fil. Sonucu yeniden haz\u0131rlay\u0131p tekrar payla\u015F\u0131n.\", \"error\");\r\n    return Promise.resolve(LAST_COPY);\r\n  }\r\n\r\n  var shareUrl = pkg.url || getShareInputValue() || buildShareUrl();\r\n  var shareText = \"Panel LED kar\u015F\u0131la\u015Ft\u0131rma sonucu \u2014 detayl\u0131 sonucu a\u00E7mak i\u00E7in ba\u011Flant\u0131y\u0131 inceleyin\";\r\n  var payload = {\r\n    title: \"Panel LED F/P Sonucu\",\r\n    text: shareText,\r\n    url: shareUrl\r\n  };\r\n\r\n  var preparedFile = pkg.preparedFile || null;\r\n  var fileShareSupported = !!(preparedFile && pkg.fileShareSupported);\r\n\r\n  if (fileShareSupported) {\r\n    payload.files = [preparedFile];\r\n    payload.text = shareText + \"\\n\" + shareUrl;\r\n  }\r\n\r\n  COMPARE_NATIVE_SHARE_STATE.calls += 1;\r\n  COMPARE_NATIVE_SHARE_STATE.lastAt = Date.now();\r\n  COMPARE_NATIVE_SHARE_STATE.userActivationAtCall =\r\n    navigator.userActivation && typeof navigator.userActivation.isActive === \"boolean\"\r\n      ? navigator.userActivation.isActive\r\n      : null;\r\n  COMPARE_NATIVE_SHARE_STATE.packageFileReady = !!preparedFile;\r\n  COMPARE_NATIVE_SHARE_STATE.fileShareSupported = fileShareSupported;\r\n  COMPARE_NATIVE_SHARE_STATE.payloadHadFile = !!payload.files;\r\n  COMPARE_NATIVE_SHARE_STATE.invocationStarted = false;\r\n  COMPARE_NATIVE_SHARE_STATE.lastResult = null;\r\n\r\n  if (!navigator.share) {\r\n    triggerFallbackDownload(pkg.dataUrl);\r\n\r\n    LAST_COPY = {\r\n      ok: false,\r\n      version: VERSION,\r\n      method: \"native-share\",\r\n      reason: \"native-share-not-supported\",\r\n      fallbackDownload: true\r\n    };\r\n    COMPARE_NATIVE_SHARE_STATE.lastResult = LAST_COPY;\r\n\r\n    if (triggerButton) setButtonState(triggerButton, \"\u015Eimdi Payla\u015F\", \"is-error\");\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Bu taray\u0131c\u0131 sistem payla\u015F\u0131m\u0131n\u0131 desteklemiyor. PNG g\u00F6rseli cihaz\u0131n\u0131za indirildi.\", \"error\");\r\n    return Promise.resolve(LAST_COPY);\r\n  }\r\n\r\n  /*\r\n   * Call navigator.share() as the FIRST privileged action in this branch.\r\n   * Do not await, decode, fetch or rebuild DOM before this invocation.\r\n   */\r\n  var nativeSharePromise;\r\n  try {\r\n    nativeSharePromise = navigator.share(payload);\r\n    COMPARE_NATIVE_SHARE_STATE.invocationStarted = true;\r\n  } catch (error) {\r\n    LAST_COPY = {\r\n      ok: false,\r\n      version: VERSION,\r\n      method: \"native-share\",\r\n      reason: error && error.message ? error.message : \"native-share-call-failed\",\r\n      userActivationAtCall: COMPARE_NATIVE_SHARE_STATE.userActivationAtCall\r\n    };\r\n    COMPARE_NATIVE_SHARE_STATE.lastResult = LAST_COPY;\r\n\r\n    if (triggerButton) setButtonState(triggerButton, \"\u015Eimdi Payla\u015F\", \"is-error\");\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Cihaz payla\u015F\u0131m\u0131 a\u00E7\u0131lamad\u0131. Tekrar deneyebilirsiniz.\", \"error\");\r\n    return Promise.resolve(LAST_COPY);\r\n  }\r\n\r\n  if (triggerButton) {\r\n    setButtonState(triggerButton, \"Payla\u015F\u0131m A\u00E7\u0131l\u0131yor...\", \"is-loading\");\r\n  }\r\n\r\n  return nativeSharePromise.then(function () {\r\n    LAST_COPY = {\r\n      ok: true,\r\n      version: VERSION,\r\n      method: payload.files ? \"native-share-file-url\" : \"native-share-url\",\r\n      url: shareUrl,\r\n      hasFile: !!payload.files,\r\n      userActivationAtCall: COMPARE_NATIVE_SHARE_STATE.userActivationAtCall\r\n    };\r\n    COMPARE_NATIVE_SHARE_STATE.lastResult = LAST_COPY;\r\n\r\n    if (triggerButton) setButtonState(triggerButton, \"Payla\u015F\u0131ld\u0131\", \"is-success\");\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Payla\u015F\u0131m penceresi a\u00E7\u0131ld\u0131.\", \"success\");\r\n    return LAST_COPY;\r\n  }).catch(function (error) {\r\n    /*\r\n     * Do NOT call navigator.share() a second time here.\r\n     * A second call would no longer be guaranteed to have transient user activation.\r\n     */\r\n    LAST_COPY = {\r\n      ok: false,\r\n      version: VERSION,\r\n      method: \"native-share\",\r\n      reason: error && error.message ? error.message : \"native-share-cancelled\",\r\n      name: error && error.name ? error.name : \"\",\r\n      userActivationAtCall: COMPARE_NATIVE_SHARE_STATE.userActivationAtCall,\r\n      payloadHadFile: !!payload.files\r\n    };\r\n    COMPARE_NATIVE_SHARE_STATE.lastResult = LAST_COPY;\r\n\r\n    if (triggerButton) setButtonState(triggerButton, \"\u015Eimdi Payla\u015F\", \"is-error\");\r\n    setShareStatusHidden(false);\r\n\r\n    if (error && error.name === \"AbortError\") {\r\n      setStatus(\"Payla\u015F\u0131m iptal edildi. \u0130sterseniz tekrar a\u00E7abilirsiniz.\", \"error\");\r\n    } else {\r\n      setStatus(\"Cihaz payla\u015F\u0131m\u0131 a\u00E7\u0131lamad\u0131. Tekrar deneyebilirsiniz.\", \"error\");\r\n    }\r\n    return LAST_COPY;\r\n  });\r\n}\r\n\r\n  function comparisonShareSignature(state, payload) {\r\n    if (!state || !payload) return \"\";\r\n    var active = activeComparisonState(state);\r\n    var p1 = active.selected && active.selected[1] ? active.selected[1] : null;\r\n    var p2 = active.selected && active.selected[2] ? active.selected[2] : null;\r\n    if (!p1 || !p2) return \"\";\r\n    return [\r\n      active.source,\r\n      productKey(p1),\r\n      productKey(p2),\r\n      cleanText(state.compareProfileKey || \"general\"),\r\n      cleanText(state.recommendFamilyKey || \"content_creation\"),\r\n      cleanText(state.recommendScenarioKey || \"\"),\r\n      active.result && active.result.ok ? \"1\" : \"0\"\r\n    ].join(\"|\");\r\n  }\r\n\r\n  function renderSharePanel() {\r\n  var mount = getShareMount();\r\n  if (!mount) return false;\r\n\r\n  COMPARE_SHARE_RENDER_STATE.calls += 1;\r\n  COMPARE_SHARE_RENDER_STATE.lastAt = Date.now();\r\n\r\n  var UI = getUiApi();\r\n  var state = UI && UI.state ? UI.state : null;\r\n  var active = activeComparisonState(state);\r\n  var payload = currentPayload();\r\n\r\n  if (!state || !payload || !active.result || !active.result.ok) {\r\n    mount.hidden = true;\r\n    mount.innerHTML = \"\";\r\n    mount.removeAttribute(\"data-gdx-panel-compare-share-signature\");\r\n    LAST_SHARE_PACKAGE = null;\r\n    COMPARE_SHARE_RENDER_STATE.lastSignature = \"\";\r\n    COMPARE_SHARE_RENDER_STATE.lastReason = \"INVALID_COMPARE_STATE\";\r\n    return false;\r\n  }\r\n\r\n  /*\r\n   * R1.6D \u2014 canonical compare share owns the visible surface.\r\n   * The helper service may have pre-created this mount as service-only.\r\n   * Remove that presentation-only hide class only after a valid compare\r\n   * result exists; comparison state/math remain untouched.\r\n   */\r\n  mount.classList.remove(\"is-service-only\");\r\n  mount.removeAttribute(\"aria-hidden\");\r\n\r\n  var shareUrl = buildShareUrl();\r\n  var p1 = active.selected && active.selected[1] ? active.selected[1] : null;\r\n  var p2 = active.selected && active.selected[2] ? active.selected[2] : null;\r\n  var signature = comparisonShareSignature(state, payload);\r\n  var existingSignature = cleanText(mount.getAttribute(\"data-gdx-panel-compare-share-signature\"));\r\n  var existingSection = mount.querySelector('[data-gdx-panel-share-single-cta=\"1\"]');\r\n\r\n  /*\r\n   * DEEPLINK SHARE STABILITY GUARD\r\n   * Cold-start restore can schedule several late renderSharePanel() calls.\r\n   * If the exact same comparison is already mounted, DO NOT replace innerHTML.\r\n   * Replacing it can erase an in-flight/prepared PNG UI or the \"\u015Eimdi Payla\u015F\" state.\r\n   */\r\n  if (existingSection && signature && existingSignature === signature) {\r\n    var existingInput = mount.querySelector(\"[data-gdx-panel-share-url]\");\r\n    if (existingInput) existingInput.value = shareUrl;\r\n\r\n    mount.hidden = false;\r\n    bindSharePanelButtons(mount);\r\n\r\n    COMPARE_SHARE_RENDER_STATE.reuses += 1;\r\n    COMPARE_SHARE_RENDER_STATE.lastSignature = signature;\r\n    COMPARE_SHARE_RENDER_STATE.lastReason = \"REUSED_SAME_COMPARISON\";\r\n    return true;\r\n  }\r\n\r\n  if (existingSignature && signature && existingSignature !== signature) {\r\n    LAST_SHARE_PACKAGE = null;\r\n  }\r\n\r\n  var title1 = p1 ? (p1.shortTitle || p1.title || \"1. \u00DCr\u00FCn\") : \"1. \u00DCr\u00FCn\";\r\n  var title2 = p2 ? (p2.shortTitle || p2.title || \"2. \u00DCr\u00FCn\") : \"2. \u00DCr\u00FCn\";\r\n\r\n  mount.hidden = false;\r\n  mount.setAttribute(\"data-gdx-panel-compare-share-signature\", signature);\r\n\r\n  mount.innerHTML =\r\n    '<section class=\"gdx-panel-v4-share-section is-single-cta-share\" data-gdx-panel-share-single-cta=\"1\">' +\r\n      '<input type=\"hidden\" value=\"' + escapeHtml(shareUrl) + '\" data-gdx-panel-share-url aria-hidden=\"true\" tabindex=\"-1\">' +\r\n      '<a href=\"#\" data-gdx-panel-share-fallback-download hidden>PNG \u0130ndir</a>' +\r\n\r\n      '<button type=\"button\" class=\"gdx-panel-v4-share-main-btn\" data-gdx-panel-share-prepare aria-busy=\"false\">' +\r\n        'Sonucu Payla\u015F' +\r\n      '</button>' +\r\n\r\n      '<div class=\"gdx-panel-v4-share-brand-signature\" data-gdx-panel-share-brand-signature=\"1\">CAN FOTO | EST. 1994</div>' +\r\n      '<div class=\"gdx-panel-v4-share-status\" hidden></div>' +\r\n\r\n      '<div class=\"gdx-panel-v4-share-ready-panel\" data-gdx-panel-share-ready-panel hidden>' +\r\n        '<div class=\"gdx-panel-v4-share-ready-line\">' +\r\n          '<strong>Payla\u015F\u0131m haz\u0131r</strong>' +\r\n        '</div>' +\r\n        '<div class=\"gdx-panel-v4-share-prepared-preview\" data-gdx-panel-share-prepared-preview></div>' +\r\n        '<button type=\"button\" class=\"gdx-panel-v4-share-now-btn\" data-gdx-panel-share-now hidden>\u015Eimdi Payla\u015F</button>' +\r\n      '</div>' +\r\n    '</section>';\r\n\r\n  bindSharePanelButtons(mount);\r\n\r\n  COMPARE_SHARE_RENDER_STATE.rebuilds += 1;\r\n  COMPARE_SHARE_RENDER_STATE.lastSignature = signature;\r\n  COMPARE_SHARE_RENDER_STATE.lastReason = existingSignature ? \"COMPARISON_CHANGED_REBUILT\" : \"INITIAL_BUILD\";\r\n  return true;\r\n}\r\n\r\n  \r\nfunction runPrepareFromButton(button, event) {\r\n  if (event) {\r\n    event.preventDefault();\r\n    event.stopPropagation();\r\n  }\r\n\r\n  if (!button || button.disabled || button.getAttribute(\"aria-busy\") === \"true\") {\r\n    return Promise.resolve(false);\r\n  }\r\n\r\n  button.setAttribute(\"aria-busy\", \"true\");\r\n\r\n  return prepareSharePackage(button).then(function (result) {\r\n    button.removeAttribute(\"aria-busy\");\r\n    return result;\r\n  }).catch(function (error) {\r\n    button.removeAttribute(\"aria-busy\");\r\n    LAST_SHARE_PACKAGE = {\r\n      ok: false,\r\n      version: VERSION,\r\n      reason: error && error.message ? error.message : \"prepare-click-error\"\r\n    };\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Payla\u015F\u0131m haz\u0131rlan\u0131rken sorun olu\u015Ftu. Tekrar deneyin.\", \"error\");\r\n    return LAST_SHARE_PACKAGE;\r\n  });\r\n}\r\n\r\nfunction runShareNowFromButton(button, event) {\r\n  if (event) {\r\n    event.preventDefault();\r\n    event.stopPropagation();\r\n  }\r\n\r\n  if (!button || button.disabled || button.getAttribute(\"aria-busy\") === \"true\") {\r\n    return Promise.resolve(false);\r\n  }\r\n\r\n  button.setAttribute(\"aria-busy\", \"true\");\r\n\r\n  return sharePreparedPackage(button).then(function (result) {\r\n    button.removeAttribute(\"aria-busy\");\r\n    return result;\r\n  }).catch(function (error) {\r\n    button.removeAttribute(\"aria-busy\");\r\n    LAST_COPY = {\r\n      ok: false,\r\n      version: VERSION,\r\n      reason: error && error.message ? error.message : \"share-now-click-error\"\r\n    };\r\n    setShareStatusHidden(false);\r\n    setStatus(\"Payla\u015F\u0131m a\u00E7\u0131l\u0131rken sorun olu\u015Ftu. Tekrar deneyin.\", \"error\");\r\n    return LAST_COPY;\r\n  });\r\n}\r\n\r\nfunction bindSharePanelButtons(mount) {\r\n  if (!mount) return false;\r\n\r\n  var prepare = mount.querySelector(\"[data-gdx-panel-share-prepare]\");\r\n  var shareNow = mount.querySelector(\"[data-gdx-panel-share-now]\");\r\n\r\n  if (prepare && !prepare.__gdxPanelV4ShareDirectBound) {\r\n    prepare.__gdxPanelV4ShareDirectBound = true;\r\n    prepare.addEventListener(\"click\", function (event) {\r\n      runPrepareFromButton(prepare, event);\r\n    });\r\n  }\r\n\r\n  if (shareNow && !shareNow.__gdxPanelV4ShareDirectBound) {\r\n    shareNow.__gdxPanelV4ShareDirectBound = true;\r\n    shareNow.addEventListener(\"click\", function (event) {\r\n      runShareNowFromButton(shareNow, event);\r\n    });\r\n  }\r\n\r\n  return true;\r\n}\r\n\r\n\r\nfunction copyText(text) {\r\n    text = cleanText(text);\r\n\r\n    if (!text) return Promise.reject(new Error(\"empty-text\"));\r\n\r\n    if (navigator.clipboard && navigator.clipboard.writeText) {\r\n      return navigator.clipboard.writeText(text);\r\n    }\r\n\r\n    return new Promise(function (resolve, reject) {\r\n      try {\r\n        var input = document.createElement(\"textarea\");\r\n        input.value = text;\r\n        input.setAttribute(\"readonly\", \"readonly\");\r\n        input.style.position = \"fixed\";\r\n        input.style.opacity = \"0\";\r\n        document.body.appendChild(input);\r\n        input.select();\r\n        document.execCommand(\"copy\");\r\n        document.body.removeChild(input);\r\n        resolve();\r\n      } catch (error) {\r\n        reject(error);\r\n      }\r\n    });\r\n  }\r\n\r\n  function copyShareUrl(triggerButton) {\r\n  var value = getShareInputValue();\r\n\r\n  setCopyButtonState(triggerButton, \"Kopyalan\u0131yor...\", \"is-loading\");\r\n\r\n  return copyText(value).then(function () {\r\n    LAST_COPY = {\r\n      ok: true,\r\n      version: VERSION,\r\n      method: \"clipboard\",\r\n      url: value\r\n    };\r\n\r\n    setCopyButtonState(triggerButton, \"Kopyaland\u0131\", \"is-success\");\r\n    setStatus(\"Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 haz\u0131rland\u0131.\", \"success\");\r\n    selectShareInput();\r\n\r\n    return LAST_COPY;\r\n  }).catch(function (error) {\r\n    LAST_COPY = {\r\n      ok: false,\r\n      version: VERSION,\r\n      method: \"clipboard\",\r\n      reason: error && error.message ? error.message : \"copy-error\"\r\n    };\r\n\r\n    setCopyButtonState(triggerButton, \"Manuel Kopyala\", \"is-error\");\r\n    setStatus(\"Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 otomatik haz\u0131rlanamad\u0131. Tekrar deneyin.\", \"error\");\r\n    selectShareInput();\r\n\r\n    return LAST_COPY;\r\n  });\r\n}\r\n\r\n  function applyPayload(payload) {\r\n    var UI = getUiApi();\r\n    var COMPARE = getCompareApi();\r\n\r\n    if (!payload || !UI || !UI.state) {\r\n      LAST_RESTORE = {\r\n        ok: false,\r\n        version: VERSION,\r\n        reason: \"missing-ui-or-payload\"\r\n      };\r\n      return false;\r\n    }\r\n\r\n    var p1 = findProduct(payload.p1);\r\n    var p2 = findProduct(payload.p2);\r\n\r\n    if (!p1 || !p2) {\r\n      LAST_RESTORE = {\r\n        ok: false,\r\n        version: VERSION,\r\n        reason: \"products-not-found\",\r\n        p1: payload.p1 || \"\",\r\n        p2: payload.p2 || \"\"\r\n      };\r\n      return false;\r\n    }\r\n\r\n    var restoreSource = payload.resultSource === \"POOL\" ? \"POOL\" : \"TOP3\";\r\n\r\n    UI.state.compareProfileKey = payload.profile || \"general\";\r\n    UI.state.recommendFamilyKey = payload.useCase || \"content_creation\";\r\n    UI.state.recommendScenarioKey = payload.scenario || \"\";\r\n    UI.state.recommendationResult = null;\r\n    UI.state.recommendationExpandedKey = \"\";\r\n\r\n    if (restoreSource === \"POOL\") {\r\n      UI.state.poolSelected = UI.state.poolSelected || { 1:null, 2:null };\r\n      UI.state.poolSelected[1] = p1;\r\n      UI.state.poolSelected[2] = p2;\r\n      UI.state.poolActiveSlot = 1;\r\n      UI.state.resultSource = \"POOL\";\r\n\r\n      if (payload.compare && COMPARE && typeof COMPARE.compareProducts === \"function\") {\r\n        UI.state.poolCompareResult = COMPARE.compareProducts(p1, p2, {\r\n          profileKey: UI.state.compareProfileKey || \"general\"\r\n        });\r\n        UI.state.poolCompareRenderedAt = new Date().toISOString();\r\n      }\r\n\r\n      if (typeof UI.renderPool === \"function\") UI.renderPool();\r\n      if (typeof UI.renderResultOnly === \"function\") UI.renderResultOnly();\r\n      if (typeof UI.syncResultVisibility === \"function\") {\r\n        UI.syncResultVisibility(\"share_deeplink_pool_restore\");\r\n      }\r\n    } else {\r\n      UI.state.selected[1] = p1;\r\n      UI.state.selected[2] = p2;\r\n      UI.state.activeSlot = 1;\r\n      UI.state.resultSource = \"TOP3\";\r\n\r\n      if (payload.compare && COMPARE && typeof COMPARE.compareProducts === \"function\") {\r\n        UI.state.compareResult = COMPARE.compareProducts(p1, p2, {\r\n          profileKey: UI.state.compareProfileKey || \"general\"\r\n        });\r\n        UI.state.compareRenderedAt = new Date().toISOString();\r\n      }\r\n\r\n      if (typeof UI.render === \"function\") UI.render();\r\n    }\r\n\r\n    window.setTimeout(function () {\r\n      renderSharePanel();\r\n\r\n      var target = resultEl();\r\n      if (target && target.scrollIntoView) {\r\n        target.scrollIntoView({ behavior: \"smooth\", block: \"start\" });\r\n      }\r\n    }, 120);\r\n\r\n    LAST_RESTORE = {\r\n      ok: true,\r\n      version: VERSION,\r\n      p1: productKey(p1),\r\n      p2: productKey(p2),\r\n      profile: UI.state.compareProfileKey,\r\n      useCase: UI.state.recommendFamilyKey,\r\n      resultSource: restoreSource,\r\n      compareRestored: restoreSource === \"POOL\"\r\n        ? !!(UI.state.poolCompareResult && UI.state.poolCompareResult.ok)\r\n        : !!(UI.state.compareResult && UI.state.compareResult.ok)\r\n    };\r\n\r\n    return true;\r\n  }\r\n\r\n  function restoreFromCurrentUrl() {\r\n    var payload = decodeFromUrl(window.location.href);\r\n\r\n    if (!payload) return false;\r\n\r\n    /*\r\n     * UL02 is presentation-only.\r\n     * Start the universal comparison loader as soon as a valid comparison deeplink\r\n     * is detected, but never make restore wait for the loader service itself.\r\n     */\r\n    var loaderPromise = beginComparisonLoaderDeferred(payload);\r\n\r\n    loaderPromise.then(function (token) {\r\n      stageComparisonLoader(\r\n        token,\r\n        26,\r\n        \"Panel LED motoru haz\u0131rlan\u0131yor\u2026\",\r\n        \"\u00DCr\u00FCn verileri y\u00FCkleniyor\"\r\n      );\r\n    });\r\n\r\n    var UI = getUiApi();\r\n    var API = getDataApi();\r\n\r\n    if (UI && typeof UI.open === \"function\") {\r\n      UI.open();\r\n    }\r\n\r\n    if (!API || typeof API.loadProducts !== \"function\") {\r\n      LAST_RESTORE = {\r\n        ok: false,\r\n        version: VERSION,\r\n        reason: \"missing-data-api\"\r\n      };\r\n\r\n      loaderPromise.then(function (token) {\r\n        finishComparisonLoader(token, false, LAST_RESTORE);\r\n      });\r\n\r\n      return false;\r\n    }\r\n\r\n    API.loadProducts().then(function (products) {\r\n      products = Array.isArray(products) && products.length ? products : getProducts();\r\n\r\n      if (!products || !products.length) {\r\n        LAST_RESTORE = {\r\n          ok: false,\r\n          version: VERSION,\r\n          reason: \"products-empty-after-load\",\r\n          p1: payload.p1 || \"\",\r\n          p2: payload.p2 || \"\"\r\n        };\r\n\r\n        loaderPromise.then(function (token) {\r\n          finishComparisonLoader(token, false, LAST_RESTORE);\r\n        });\r\n\r\n        return false;\r\n      }\r\n\r\n      return loaderPromise.then(function (token) {\r\n        stageComparisonLoader(\r\n          token,\r\n          54,\r\n          \"Kar\u015F\u0131la\u015Ft\u0131r\u0131lacak \u00FCr\u00FCnler e\u015Fle\u015Ftiriliyor\u2026\",\r\n          \"A/B se\u00E7imi haz\u0131rlan\u0131yor\"\r\n        );\r\n\r\n        var applied = applyPayload(payload);\r\n\r\n        if (!applied) {\r\n          var failed = LAST_RESTORE || {\r\n            ok: false,\r\n            version: VERSION,\r\n            reason: \"comparison-apply-failed\"\r\n          };\r\n\r\n          finishComparisonLoader(token, false, failed);\r\n          return false;\r\n        }\r\n\r\n        stageComparisonLoader(\r\n          token,\r\n          76,\r\n          \"Kar\u015F\u0131la\u015Ft\u0131rma sonucu yerle\u015Ftiriliyor\u2026\",\r\n          \"Final ekran do\u011Frulan\u0131yor\"\r\n        );\r\n\r\n        return waitForComparisonFinalTarget(payload, 12000).then(function (finalTarget) {\r\n          COMPARE_LOADER_STATE.finalTarget = finalTarget;\r\n\r\n          var success = !!(\r\n            finalTarget &&\r\n            finalTarget.exact &&\r\n            finalTarget.stableAfterQuietWindow\r\n          );\r\n\r\n          var restoreResult = {\r\n            ok: success,\r\n            version: \"PANEL-COMPARE-UL02-UNIVERSAL-LOADER-V1\",\r\n            code: success\r\n              ? \"COMPARISON_FINAL_TARGET_STABLE\"\r\n              : \"COMPARISON_FINAL_TARGET_NOT_STABLE\",\r\n            p1: payload.p1 || \"\",\r\n            p2: payload.p2 || \"\",\r\n            finalTarget: finalTarget,\r\n            foundationRestore: LAST_RESTORE || null\r\n          };\r\n\r\n          finishComparisonLoader(token, success, restoreResult);\r\n          return success;\r\n        });\r\n      });\r\n    }).catch(function (error) {\r\n      LAST_RESTORE = {\r\n        ok: false,\r\n        version: VERSION,\r\n        reason: \"data-load-failed\",\r\n        message: error && error.message ? error.message : \"unknown-data-error\",\r\n        p1: payload.p1 || \"\",\r\n        p2: payload.p2 || \"\"\r\n      };\r\n\r\n      loaderPromise.then(function (token) {\r\n        finishComparisonLoader(token, false, LAST_RESTORE);\r\n      });\r\n\r\n      return false;\r\n    });\r\n\r\n    return true;\r\n  }\r\n\r\n  function scheduleRender() {\r\n    [80, 220, 480, 980].forEach(function (delay) {\r\n      window.setTimeout(renderSharePanel, delay);\r\n    });\r\n  }\r\n\r\n  function bindEvents() {\r\n    document.addEventListener(\"click\", function (event) {\r\n      var prepare = event.target.closest(\"[data-gdx-panel-share-prepare]\");\r\n      if (prepare) {\r\n        runPrepareFromButton(prepare, event);\r\n        return;\r\n      }\r\n\r\n      var shareNow = event.target.closest(\"[data-gdx-panel-share-now]\");\r\n      if (shareNow) {\r\n        runShareNowFromButton(shareNow, event);\r\n        return;\r\n      }\r\n\r\n      if (\r\n        event.target.closest(\"#gdxPanelV4CompareBtn\") ||\r\n        event.target.closest(\"[data-gdx-r11-action='r2j-run']\") ||\r\n        event.target.closest(\"[data-gdx-pool-r3-compare='1']\") ||\r\n        event.target.closest(\"[data-gdx-pool-r3-clear='1']\") ||\r\n        event.target.closest(\"[data-gdx-panel-product]\") ||\r\n        event.target.closest(\"[data-gdx-panel-usecase]\") ||\r\n        event.target.closest(\"[data-gdx-panel-rec-why]\") ||\r\n        event.target.closest(\"[data-gdx-panel-commerce-add]\")\r\n      ) {\r\n        LAST_SHARE_PACKAGE = null;\r\n        scheduleRender();\r\n      }\r\n    }, true);\r\n\r\n    var API = getDataApi();\r\n    if (API && typeof API.on === \"function\") {\r\n      API.on(\"data:loaded\", scheduleRender);\r\n      API.on(\"data:error\", scheduleRender);\r\n    }\r\n  }\r\n\r\n  ready(function () {\r\n    bindEvents();\r\n    scheduleRender();\r\n\r\n    window.debugPanelV4ComparisonShareDiagnosticV1 = function () {\r\n      var UI = getUiApi();\r\n      var state = UI && UI.state ? UI.state : null;\r\n      var share = window.GDX_PANEL_LED_V4_SHARE || null;\r\n      var card = window.GDX_PANEL_LED_V4_SHARE_CARD || null;\r\n      var mount = document.getElementById(\"gdxPanelV4SharePreview\");\r\n      var prepare = mount ? mount.querySelector(\"[data-gdx-panel-share-prepare]\") : null;\r\n      var shareNow = mount ? mount.querySelector(\"[data-gdx-panel-share-now]\") : null;\r\n      var selected = state && state.selected ? [state.selected[1], state.selected[2]].filter(Boolean) : [];\r\n      var result = {\r\n        ok: !!(\r\n          state &&\r\n          state.compareResult &&\r\n          state.compareResult.ok &&\r\n          selected.length === 2 &&\r\n          share &&\r\n          share.ready === true &&\r\n          card &&\r\n          typeof card.renderPng === \"function\" &&\r\n          mount &&\r\n          prepare\r\n        ),\r\n        version: \"PANEL-COMPARE-SHARE-READONLY-DIAGNOSTIC-V1\",\r\n        readOnly: true,\r\n        selectedCount: selected.length,\r\n        selectedKeys: selected.map(productKey),\r\n        compareOk: !!(state && state.compareResult && state.compareResult.ok),\r\n        shareApiReady: !!(share && share.ready === true),\r\n        shareBuildUrlReady: !!(share && typeof share.buildUrl === \"function\"),\r\n        shareCardExists: !!card,\r\n        shareCardReadyFlag: !!(card && card.ready === true),\r\n        shareCardRenderPngReady: !!(card && typeof card.renderPng === \"function\"),\r\n        shareMountExists: !!mount,\r\n        prepareButtonExists: !!prepare,\r\n        prepareButtonDisabled: !!(prepare && prepare.disabled),\r\n        prepareButtonAriaBusy: prepare ? cleanText(prepare.getAttribute(\"aria-busy\")) : \"\",\r\n        prepareDirectBound: !!(prepare && prepare.__gdxPanelV4ShareDirectBound),\r\n        shareNowButtonExists: !!shareNow,\r\n        shareNowHidden: !!(shareNow && shareNow.hidden),\r\n        generatedShareUrl: share && typeof share.buildUrl === \"function\" ? cleanText(share.buildUrl()) : \"\",\r\n        lastPackage: share && typeof share.getLastPackage === \"function\" ? share.getLastPackage() : null,\r\n        lastCopy: share && typeof share.getLastCopy === \"function\" ? share.getLastCopy() : null,\r\n        note: \"READ-ONLY. This diagnostic does not click, render PNG, mutate compare state or open native share.\"\r\n      };\r\n      console.log(result);\r\n      return result;\r\n    };\r\n\r\n    window.debugPanelV4ComparisonShareDeepLinkStabilityQaV1 = function () {\r\n      var UI = getUiApi();\r\n      var state = UI && UI.state ? UI.state : null;\r\n      var mount = document.getElementById(\"gdxPanelV4SharePreview\");\r\n      var params = new URL(window.location.href).searchParams;\r\n      var isDeepLink = !!(params.get(COMPACT_PARAM) || params.get(QR_PARAM) || params.get(PARAM));\r\n      var prepare = mount ? mount.querySelector(\"[data-gdx-panel-share-prepare]\") : null;\r\n      var shareNow = mount ? mount.querySelector(\"[data-gdx-panel-share-now]\") : null;\r\n      var readyPanel = mount ? mount.querySelector(\"[data-gdx-panel-share-ready-panel]\") : null;\r\n      var preview = mount ? mount.querySelector(\"[data-gdx-panel-share-prepared-preview] img\") : null;\r\n      var pkg = LAST_SHARE_PACKAGE;\r\n      var result = {\r\n        ok: !!(\r\n          state &&\r\n          state.compareResult &&\r\n          state.compareResult.ok &&\r\n          mount &&\r\n          prepare &&\r\n          COMPARE_SHARE_RENDER_STATE.lastSignature\r\n        ),\r\n        version: \"PANEL-COMPARE-DL01-DEEPLINK-SHARE-STABILITY-V1\",\r\n        deeplinkMode: isDeepLink,\r\n        compareOk: !!(state && state.compareResult && state.compareResult.ok),\r\n        selectedCount: state && state.selected ? [state.selected[1], state.selected[2]].filter(Boolean).length : 0,\r\n        mountSignature: mount ? cleanText(mount.getAttribute(\"data-gdx-panel-compare-share-signature\")) : \"\",\r\n        renderCalls: COMPARE_SHARE_RENDER_STATE.calls,\r\n        renderRebuilds: COMPARE_SHARE_RENDER_STATE.rebuilds,\r\n        renderReuses: COMPARE_SHARE_RENDER_STATE.reuses,\r\n        lastRenderReason: COMPARE_SHARE_RENDER_STATE.lastReason,\r\n        prepareExists: !!prepare,\r\n        prepareBusy: !!(prepare && prepare.getAttribute(\"aria-busy\") === \"true\"),\r\n        packageReady: !!(pkg && pkg.ok && pkg.dataUrl),\r\n        previewVisible: !!preview,\r\n        readyPanelVisible: !!(readyPanel && !readyPanel.hidden),\r\n        shareNowVisible: !!(shareNow && !shareNow.hidden),\r\n        lastPackage: pkg || null,\r\n        note: \"DL01 makes comparison share rendering idempotent for the same restored comparison so late deeplink renders cannot wipe an in-flight or prepared share UI.\"\r\n      };\r\n      console.log(result);\r\n      return result;\r\n    };\r\n\r\n    window.debugPanelV4ComparisonNativeShareQaV1 = function () {\r\n      var pkg = LAST_SHARE_PACKAGE;\r\n      var result = {\r\n        ok: !!(\r\n          pkg &&\r\n          pkg.ok &&\r\n          pkg.dataUrl &&\r\n          pkg.preparedFileReady &&\r\n          navigator.share\r\n        ),\r\n        version: \"PANEL-COMPARE-DL02-NATIVE-SHARE-USER-ACTIVATION-V1\",\r\n        packageReady: !!(pkg && pkg.ok && pkg.dataUrl),\r\n        preparedFileReady: !!(pkg && pkg.preparedFileReady),\r\n        fileShareSupported: !!(pkg && pkg.fileShareSupported),\r\n        navigatorShareReady: !!navigator.share,\r\n        navigatorCanShareReady: !!navigator.canShare,\r\n        userActivationCurrentlyActive:\r\n          navigator.userActivation && typeof navigator.userActivation.isActive === \"boolean\"\r\n            ? navigator.userActivation.isActive\r\n            : null,\r\n        nativeShareCalls: COMPARE_NATIVE_SHARE_STATE.calls,\r\n        lastUserActivationAtCall: COMPARE_NATIVE_SHARE_STATE.userActivationAtCall,\r\n        invocationStarted: COMPARE_NATIVE_SHARE_STATE.invocationStarted,\r\n        payloadHadFile: COMPARE_NATIVE_SHARE_STATE.payloadHadFile,\r\n        lastResult: COMPARE_NATIVE_SHARE_STATE.lastResult,\r\n        note: \"DL02 precomputes File during PNG preparation and invokes navigator.share immediately from the physical \u015Eimdi Payla\u015F user gesture. No second navigator.share fallback is attempted.\"\r\n      };\r\n      console.log(result);\r\n      return result;\r\n    };\r\n\r\n    window.debugPanelV4ComparisonFinalTargetQaV1 = function () {\r\n      var payload = decodeFromUrl(window.location.href);\r\n      var snapshot = payload ? compareFinalSnapshot(payload) : null;\r\n      var result = {\r\n        ok: !!(payload && snapshot && snapshot.exact),\r\n        version: \"PANEL-COMPARE-UL02-FINAL-TARGET-QA-V1\",\r\n        deeplinkMode: !!payload,\r\n        snapshot: snapshot,\r\n        loaderFinalTarget: COMPARE_LOADER_STATE.finalTarget || null,\r\n        foundationRestore: LAST_RESTORE || null,\r\n        note: \"Observation-only. PASS requires exact A/B products, compare result visible and the same comparison share signature mounted.\"\r\n      };\r\n      console.log(result);\r\n      return result;\r\n    };\r\n\r\n    window.debugPanelV4ComparisonLoaderQaV1 = function () {\r\n      var loader = comparisonUniversalLoader();\r\n      var loaderQa = loader && typeof loader.qa === \"function\"\r\n        ? loader.qa(\"compare\")\r\n        : null;\r\n      var result = {\r\n        ok: !!(\r\n          loaderQa &&\r\n          loaderQa.ok &&\r\n          loaderQa.completed &&\r\n          !loaderQa.failed &&\r\n          COMPARE_LOADER_STATE.finalTarget &&\r\n          COMPARE_LOADER_STATE.finalTarget.exact\r\n        ),\r\n        version: \"PANEL-COMPARE-UL02-UNIVERSAL-LOADER-V1\",\r\n        loader: loaderQa,\r\n        requested: COMPARE_LOADER_STATE.requested,\r\n        tokenExists: !!COMPARE_LOADER_STATE.token,\r\n        startedAt: COMPARE_LOADER_STATE.startedAt,\r\n        finishedAt: COMPARE_LOADER_STATE.finishedAt,\r\n        finalTarget: COMPARE_LOADER_STATE.finalTarget || null,\r\n        restoreResult: COMPARE_LOADER_STATE.restoreResult || null,\r\n        note: \"Visual-only comparison loader. It does not alter A/B selection, comparison math, ranking, F/P, DL01 or DL02.\"\r\n      };\r\n      console.log(result);\r\n      return result;\r\n    };\r\n\r\n    window.GDX_PANEL_LED_V4_SHARE = {\r\n  ready: true,\r\n  version: VERSION,\r\n  param: PARAM,\r\n  compactParam: COMPACT_PARAM,\r\n  qrParam: QR_PARAM,\r\n  render: renderSharePanel,\r\n  buildUrl: buildShareUrl,\r\n  buildQrUrl: buildQrShareUrl,\r\n  decodeFromUrl: decodeFromUrl,\r\n  restore: restoreFromCurrentUrl,\r\n  applyPayload: applyPayload,\r\n  prepare: prepareSharePackage,\r\n  shareNow: sharePreparedPackage,\r\n  runPrepareButton: runPrepareFromButton,\r\n  runShareNowButton: runShareNowFromButton,\r\n  copy: copyShareUrl,\r\n  nativeShare: nativeShareCurrentUrl,\r\n  selectInput: selectShareInput,\r\n  getLastRestore: function () { return LAST_RESTORE; },\r\n  getLastCopy: function () { return LAST_COPY; },\r\n  getLastPackage: function () { return LAST_SHARE_PACKAGE; }\r\n};\r\n\r\n    restoreFromCurrentUrl();\r\n  });\r\n})(window, document);\r\n\r\n/* =========================================================\r\n   PANEL LED V4 \u2014 FAZ07-D02.1 R11 TOP3 RESULT SHARE V1\r\n   Correct owner: #gdxPanelV4RecommendationPreview / R11.\r\n   Result-level prepared 3:4 PNG + exact Top3 deeplink restore.\r\n   SHARE-LAYER ONLY. PANEL CORE / RANKING / SCORING NO-TOUCH.\r\n   ========================================================= */\r\n(function(window,document){\r\n  'use strict';\r\n  if(window.GDX_PANEL_LED_V4_R11_TOP3_SHARE_V1_READY)return;\r\n  window.GDX_PANEL_LED_V4_R11_TOP3_SHARE_V1_READY=true;\r\n\r\n  var VERSION='CANFOTO-ETAP2-P2C-R5-R3-TOP3-QR-COMPACT-V1';\r\n  var W=1080,H=1440;\r\n  var SHARE='gdx_share',SHARE_VALUE='top3',OPEN='gdx_open';\r\n  var PURPOSE='gdx_panel_purpose',SUB='gdx_panel_sub',KEYS='gdx_panel_top3';\r\n  var CANONICAL_PATH='/pages/panel-led-secim-motoru';\r\n  var LAST={prepared:null,restoreResult:null,signature:'',mounted:false,progress:{active:false,percent:0,label:'',completed:false,failed:false,startedAt:0,endedAt:0}};\r\n  var observer=null,refreshTimer=null;\r\n\r\n  function clean(v){return String(v==null?'':v).replace(/\\s+/g,' ').trim()}\r\n  function esc(v){return String(v==null?'':v).replace(/[&<>\"']/g,function(c){return{'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#39;'}[c]})}\r\n  function finite(v){return v!==null&&v!==undefined&&v!==''&&Number.isFinite(Number(v))}\r\n  function clamp(v){return Math.max(0,Math.min(100,Math.round(Number(v)||0)))}\r\n  function root(){return document.getElementById('gdxPanelV4RecommendationPreview')}\r\n  function owner(){return window.GDX_PANEL_LED_V4_UI_RECO_15_R11_R5||null}\r\n  function selection(){return window.GDX_PANEL_V4_R28_SELECTION_STATE||null}\r\n  function qr(){return window.GDX_PANEL_LED_V4_QR||null}\r\n\r\n  function waitFor(fn,timeout,interval){\r\n    timeout=Number(timeout)||10000;interval=Number(interval)||90;\r\n    return new Promise(function(resolve){\r\n      var start=Date.now();\r\n      (function tick(){\r\n        var v=null;try{v=fn()}catch(_){}\r\n        if(v)return resolve(v);\r\n        if(Date.now()-start>=timeout)return resolve(null);\r\n        setTimeout(tick,interval)\r\n      })()\r\n    })\r\n  }\r\n\r\n  function sleep(ms){return new Promise(function(resolve){setTimeout(resolve,Math.max(0,Number(ms)||0))})}\r\n\r\n  var UNIVERSAL_LOADER_VERSION='NORA-UNIVERSAL-SHARE-LOADER-V1';\r\n  var UNIVERSAL_LOADER_PALETTES={\r\n    panel:{\r\n      dark:{\r\n        overlay:'#030b14',card:'#07131c',card2:'#102429',border:'#25d6e3',\r\n        text:'#f7fbfa',muted:'#cbd9d6',meta:'#91aaa5',nora:'#67f3da',\r\n        accent:'#2bd8e5',accent2:'#16b5a6',track:'#173038',\r\n        success:'#21cf70',warning:'#d9a51d'\r\n      },\r\n      light:{\r\n        overlay:'#eeeae2',card:'#fffefd',card2:'#f6f0e8',border:'#bcae9d',\r\n        text:'#1f2933',muted:'#53606b',meta:'#78838d',nora:'#0f766e',\r\n        accent:'#0f766e',accent2:'#2b6f8a',track:'#e9f2ef',\r\n        success:'#2f855a',warning:'#a66c0d'\r\n      }\r\n    },\r\n    cob:{\r\n      dark:{\r\n        overlay:'#030b14',card:'#0b1720',card2:'#132530',border:'#ff9b35',\r\n        text:'#f5f9fb',muted:'#bdced7',meta:'#8fa9b7',nora:'#67f3da',\r\n        accent:'#ff9b35',accent2:'#ff7a3d',track:'#19303d',\r\n        success:'#69d59b',warning:'#ffc56b'\r\n      },\r\n      light:{\r\n        overlay:'#eef4f7',card:'#ffffff',card2:'#f8fbfc',border:'#bfd0dc',\r\n        text:'#102a43',muted:'#486581',meta:'#6b8292',nora:'#006d96',\r\n        accent:'#f15a24',accent2:'#006d96',track:'#dbe7ed',\r\n        success:'#177245',warning:'#9a5b00'\r\n      }\r\n    }\r\n  };\r\n\r\n  function universalLoaderTheme(engine){\r\n    engine=clean(engine||'panel').toLowerCase()==='cob'?'cob':'panel';\r\n    var theme='dark';\r\n    if(engine==='panel'){\r\n      var pr=document.getElementById('gdx-panel-led-v4-root');\r\n      theme=pr&&clean(pr.getAttribute('data-gdx-panel-theme')).toLowerCase()==='light'?'light':'dark'\r\n    }else{\r\n      var cr=document.querySelector('.gdx-cob-v5');\r\n      var raw=cr?clean(cr.getAttribute('data-gdx-cob-v5-theme')).toLowerCase():'';\r\n      if(raw==='light')theme='light';\r\n      else if(raw==='system'&&window.matchMedia&&window.matchMedia('(prefers-color-scheme: light)').matches)theme='light'\r\n    }\r\n    return{engine:engine,theme:theme,palette:UNIVERSAL_LOADER_PALETTES[engine][theme]}\r\n  }\r\n\r\n  function universalLoaderContext(engine,kind){\r\n    engine=clean(engine||'panel').toLowerCase()==='cob'?'cob':'panel';\r\n    kind=clean(kind||'top3').toLowerCase();\r\n    var engineLabel=engine==='cob'?'COB LED':'PANEL LED';\r\n    var kindLabel={\r\n      top3:'TOP3 \u00D6NER\u0130',\r\n      why:'NEDEN BU \u00DCR\u00DCN?',\r\n      setup:'KURULUM',\r\n      compare:'KAR\u015EILA\u015ETIRMA',\r\n      visual:'\u00DCR\u00DCN G\u00D6RSEL\u0130'\r\n    }[kind]||'PAYLA\u015EILAN SONU\u00C7';\r\n    return engineLabel+' \u00B7 '+kindLabel\r\n  }\r\n\r\n  function applyUniversalLoaderPalette(el,engine){\r\n    if(!el)return;\r\n    var t=universalLoaderTheme(engine),p=t.palette;\r\n    el.setAttribute('data-engine',t.engine);\r\n    el.setAttribute('data-theme',t.theme);\r\n    el.style.setProperty('--nora-loader-overlay',p.overlay);\r\n    el.style.setProperty('--nora-loader-card',p.card);\r\n    el.style.setProperty('--nora-loader-card2',p.card2);\r\n    el.style.setProperty('--nora-loader-border',p.border);\r\n    el.style.setProperty('--nora-loader-text',p.text);\r\n    el.style.setProperty('--nora-loader-muted',p.muted);\r\n    el.style.setProperty('--nora-loader-meta',p.meta);\r\n    el.style.setProperty('--nora-loader-nora',p.nora);\r\n    el.style.setProperty('--nora-loader-accent',p.accent);\r\n    el.style.setProperty('--nora-loader-accent2',p.accent2);\r\n    el.style.setProperty('--nora-loader-track',p.track);\r\n    el.style.setProperty('--nora-loader-success',p.success);\r\n    el.style.setProperty('--nora-loader-warning',p.warning)\r\n  }\r\n\r\n  function ensureDeepLinkProgressStyles(){\r\n    if(document.getElementById('gdxPanelV4Top3DeepLinkProgressStylesV1'))return;\r\n    var st=document.createElement('style');\r\n    st.id='gdxPanelV4Top3DeepLinkProgressStylesV1';\r\n    st.textContent=''\r\n      +'.gdx-panel-v4-top3-deeplink-progress{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;background:var(--nora-loader-overlay,#030b14);padding:22px;font-family:Arial,Helvetica,sans-serif}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__card{width:min(560px,calc(100vw - 36px));border:1px solid var(--nora-loader-border,#25d6e3);border-radius:24px;background:linear-gradient(145deg,var(--nora-loader-card,#07131c),var(--nora-loader-card2,#102429));color:var(--nora-loader-text,#f7fbfa);box-shadow:0 18px 56px rgba(0,0,0,.28);padding:24px}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__eyebrow{font:900 12px/1.2 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:var(--nora-loader-nora,#67f3da)}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__context{display:inline-flex;margin-top:10px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--nora-loader-accent) 44%,transparent);border-radius:999px;background:color-mix(in srgb,var(--nora-loader-accent) 10%,transparent);color:var(--nora-loader-accent);font:900 10px/1 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__title{margin:12px 0 0;font:900 24px/1.12 Arial,sans-serif;color:var(--nora-loader-text,#fff)}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__label{margin:10px 0 0;font:700 14px/1.45 Arial,sans-serif;color:var(--nora-loader-muted,#cbd9d6);min-height:40px}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__wave{height:42px;display:flex;align-items:stretch;gap:7px;margin-top:18px;overflow:hidden}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__wave span{flex:1;min-width:0;height:100%;border-radius:999px;background:linear-gradient(180deg,var(--nora-loader-nora),var(--nora-loader-accent) 52%,var(--nora-loader-accent2));opacity:.72;transform:scaleY(.18);transform-origin:center bottom;will-change:transform,opacity;animation:gdxPanelTop3Wave 1.02s ease-in-out infinite alternate}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__wave span:nth-child(2){animation-delay:.09s}.gdx-panel-v4-top3-deeplink-progress__wave span:nth-child(3){animation-delay:.18s}.gdx-panel-v4-top3-deeplink-progress__wave span:nth-child(4){animation-delay:.27s}.gdx-panel-v4-top3-deeplink-progress__wave span:nth-child(5){animation-delay:.36s}.gdx-panel-v4-top3-deeplink-progress__wave span:nth-child(6){animation-delay:.45s}'\r\n      +'@keyframes gdxPanelTop3Wave{0%{transform:scaleY(.18);opacity:.48}55%{transform:scaleY(.72);opacity:.82}100%{transform:scaleY(1);opacity:1}}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__track{height:9px;margin-top:12px;border-radius:999px;overflow:hidden;background:var(--nora-loader-track,#173038);border:1px solid color-mix(in srgb,var(--nora-loader-border) 28%,transparent)}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__bar{height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--nora-loader-accent2),var(--nora-loader-accent),var(--nora-loader-nora));transition:width .34s cubic-bezier(.2,.8,.2,1)}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress__meta{display:flex;justify-content:space-between;gap:12px;margin-top:9px;font:800 11px/1.2 Arial,sans-serif;color:var(--nora-loader-meta,#91aaa5)}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress[data-state=\"done\"] .gdx-panel-v4-top3-deeplink-progress__bar{background:linear-gradient(90deg,var(--nora-loader-success),var(--nora-loader-nora))}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress[data-state=\"done\"] .gdx-panel-v4-top3-deeplink-progress__wave span{animation-duration:.42s;background:linear-gradient(180deg,var(--nora-loader-nora),var(--nora-loader-success))}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress[data-state=\"fail\"] .gdx-panel-v4-top3-deeplink-progress__bar{background:var(--nora-loader-warning)}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress[data-state=\"fail\"] .gdx-panel-v4-top3-deeplink-progress__wave span{background:linear-gradient(180deg,var(--nora-loader-warning),var(--nora-loader-accent2));animation-duration:1.35s}'\r\n      +'.gdx-panel-v4-top3-deeplink-progress.is-leaving{opacity:0;transition:opacity .22s ease}'\r\n      +'@media(max-width:760px){.gdx-panel-v4-top3-deeplink-progress{padding:14px}.gdx-panel-v4-top3-deeplink-progress__card{width:100%;padding:22px 18px;border-radius:22px}.gdx-panel-v4-top3-deeplink-progress__title{font-size:22px}.gdx-panel-v4-top3-deeplink-progress__label{font-size:14px;min-height:44px}.gdx-panel-v4-top3-deeplink-progress__wave{height:46px;gap:6px;margin-top:17px}.gdx-panel-v4-top3-deeplink-progress__track{height:10px;margin-top:10px}}'\r\n      +'@media(prefers-reduced-motion:reduce){.gdx-panel-v4-top3-deeplink-progress__wave span{animation-duration:2.2s}.gdx-panel-v4-top3-deeplink-progress__bar{transition-duration:.01ms}}';\r\n    document.head.appendChild(st)\r\n  }\r\n\r\n  function progressRoot(){\r\n    return document.querySelector('[data-gdx-panel-top3-deeplink-progress=\"1\"]')\r\n  }\r\n\r\n  function showDeepLinkProgress(){\r\n    ensureDeepLinkProgressStyles();\r\n    var existing=progressRoot();\r\n    if(existing){applyUniversalLoaderPalette(existing,'panel');return existing}\r\n\r\n    var el=document.createElement('div');\r\n    el.className='gdx-panel-v4-top3-deeplink-progress';\r\n    el.setAttribute('data-gdx-panel-top3-deeplink-progress','1');\r\n    el.setAttribute('data-state','active');\r\n    el.setAttribute('data-loader-version',UNIVERSAL_LOADER_VERSION);\r\n    el.innerHTML=''\r\n      +'<div class=\"gdx-panel-v4-top3-deeplink-progress__card\" role=\"status\" aria-live=\"polite\">'\r\n      +'<div class=\"gdx-panel-v4-top3-deeplink-progress__eyebrow\">NORA \u00B7 PAYLA\u015EILAN SONU\u00C7</div>'\r\n      +'<div class=\"gdx-panel-v4-top3-deeplink-progress__context\">'+esc(universalLoaderContext('panel','top3'))+'</div>'\r\n      +'<div class=\"gdx-panel-v4-top3-deeplink-progress__title\">Payla\u015F\u0131lan sonu\u00E7 haz\u0131rlan\u0131yor</div>'\r\n      +'<div class=\"gdx-panel-v4-top3-deeplink-progress__label\" data-progress-label>Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 okunuyor\u2026</div>'\r\n      +'<div class=\"gdx-panel-v4-top3-deeplink-progress__wave\" data-progress-wave aria-hidden=\"true\"><span></span><span></span><span></span><span></span><span></span><span></span></div>'\r\n      +'<div class=\"gdx-panel-v4-top3-deeplink-progress__track\" aria-hidden=\"true\"><div class=\"gdx-panel-v4-top3-deeplink-progress__bar\" data-progress-bar></div></div>'\r\n      +'<div class=\"gdx-panel-v4-top3-deeplink-progress__meta\"><span data-progress-step>Ba\u015Flat\u0131l\u0131yor</span><span data-progress-percent>8%</span></div>'\r\n      +'</div>';\r\n\r\n    applyUniversalLoaderPalette(el,'panel');\r\n    (document.body||document.documentElement).appendChild(el);\r\n    LAST.progress={active:true,percent:8,label:'Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 okunuyor\u2026',completed:false,failed:false,startedAt:Date.now(),endedAt:0};\r\n    requestAnimationFrame(function(){\r\n      var bar=el.querySelector('[data-progress-bar]');\r\n      if(bar)bar.style.width='8%'\r\n    });\r\n    return el\r\n  }\r\n\r\n  function updateDeepLinkProgress(percent,label,step){\r\n    var el=progressRoot()||showDeepLinkProgress();\r\n    applyUniversalLoaderPalette(el,'panel');\r\n    var p=Math.max(0,Math.min(100,Math.round(Number(percent)||0)));\r\n    var bar=el&&el.querySelector('[data-progress-bar]');\r\n    var lab=el&&el.querySelector('[data-progress-label]');\r\n    var stp=el&&el.querySelector('[data-progress-step]');\r\n    var pct=el&&el.querySelector('[data-progress-percent]');\r\n    if(bar)bar.style.width=p+'%';\r\n    if(lab)lab.textContent=clean(label);\r\n    if(stp)stp.textContent=clean(step||'Haz\u0131rlan\u0131yor');\r\n    if(pct)pct.textContent=p+'%';\r\n    LAST.progress.active=true;\r\n    LAST.progress.percent=p;\r\n    LAST.progress.label=clean(label);\r\n  }\r\n\r\n  function finishDeepLinkProgress(success,message){\r\n    var el=progressRoot();\r\n    LAST.progress.active=false;\r\n    LAST.progress.completed=!!success;\r\n    LAST.progress.failed=!success;\r\n    LAST.progress.percent=100;\r\n    LAST.progress.label=clean(message);\r\n    LAST.progress.endedAt=Date.now();\r\n\r\n    if(!el)return;\r\n    applyUniversalLoaderPalette(el,'panel');\r\n    el.setAttribute('data-state',success?'done':'fail');\r\n    var bar=el.querySelector('[data-progress-bar]');\r\n    var lab=el.querySelector('[data-progress-label]');\r\n    var stp=el.querySelector('[data-progress-step]');\r\n    var pct=el.querySelector('[data-progress-percent]');\r\n    if(bar)bar.style.width='100%';\r\n    if(lab)lab.textContent=clean(message||(success?'Sonu\u00E7 haz\u0131r.':'Sonu\u00E7 a\u00E7\u0131lamad\u0131.'));\r\n    if(stp)stp.textContent=success?'Tamamland\u0131':'Mevcut sayfa a\u00E7\u0131l\u0131yor';\r\n    if(pct)pct.textContent='100%';\r\n\r\n    setTimeout(function(){\r\n      var current=progressRoot();\r\n      if(!current)return;\r\n      current.classList.add('is-leaving');\r\n      setTimeout(function(){try{current.remove()}catch(_){}},240)\r\n    },success?320:1100)\r\n  }\r\n\r\n  function currentOpenIntent(){\r\n    try{return clean(new URL(location.href).searchParams.get(OPEN))}catch(_){return''}\r\n  }\r\n\r\n  function shellVisible(){\r\n    var s=document.getElementById('gdxPanelV4Shell');\r\n    return !!(s&&!s.hidden&&s.getAttribute('aria-hidden')!=='true')\r\n  }\r\n\r\n  function exactSelection(p){\r\n    var s=selection()||{};\r\n    return !!(\r\n      p&&\r\n      clean(s.activePurposeKey)===clean(p.purposeKey)&&\r\n      clean(s.activeSubPurposeKey)===clean(p.subPurposeKey)\r\n    )\r\n  }\r\n\r\n  function exactR11Keys(p){\r\n    var cards=liveCards();\r\n    if(!p||cards.length!==3)return false;\r\n    var keys=cards.map(function(c){return clean(c.getAttribute('data-gdx-r11-card'))});\r\n    return keys.length===3&&p.offerKeys.every(function(k,i){return clean(k)===clean(keys[i])})\r\n  }\r\n\r\n  async function waitForGenericOpenToSettle(){\r\n    var initialOpen=currentOpenIntent();\r\n    var started=Date.now();\r\n\r\n    var shell=await waitFor(function(){return shellVisible()?document.getElementById('gdxPanelV4Shell'):null},8000,80);\r\n    if(!shell)return{ok:false,code:'PANEL_SHELL_NOT_VISIBLE',initialOpen:initialOpen,elapsedMs:Date.now()-started};\r\n\r\n    var setter=await waitFor(function(){\r\n      return typeof window.setPanelV4R28Selection==='function'?window.setPanelV4R28Selection:null\r\n    },8000,80);\r\n    if(!setter)return{ok:false,code:'SELECTION_API_NOT_READY',initialOpen:initialOpen,elapsedMs:Date.now()-started};\r\n\r\n    var ownerReady=await waitFor(function(){\r\n      var o=owner();return o&&typeof o.visualAudit==='function'?o:null\r\n    },8000,80);\r\n    if(!ownerReady)return{ok:false,code:'R11_OWNER_NOT_READY',initialOpen:initialOpen,elapsedMs:Date.now()-started};\r\n\r\n    /*\r\n      gdx_open=panel-usecase is intentionally PRESERVED in generated links.\r\n      Previous Panel WHY experiments proved that deleting it could strand navigation\r\n      at the hub/gateway. For Top3 we instead wait until the generic opener has\r\n      consumed/cleared its own routing hint, then apply the exact share target.\r\n    */\r\n    if(initialOpen==='panel-usecase'){\r\n      await waitFor(function(){return currentOpenIntent()!=='panel-usecase'?true:null},5000,70);\r\n    }\r\n\r\n    /*\r\n      Give the generic opener one short quiet window to publish its default R28\r\n      selection before the share layer writes the exact target. This prevents the\r\n      default selection from overwriting the Top3 target immediately afterwards.\r\n    */\r\n    await waitFor(function(){\r\n      var s=selection();\r\n      return s&&clean(s.activePurposeKey)&&clean(s.activeSubPurposeKey)?s:null\r\n    },5000,70);\r\n    await sleep(180);\r\n\r\n    return{\r\n      ok:true,\r\n      code:'GENERIC_OPEN_SETTLED',\r\n      initialOpen:initialOpen,\r\n      finalOpen:currentOpenIntent(),\r\n      openIntentConsumed:currentOpenIntent()!=='panel-usecase',\r\n      elapsedMs:Date.now()-started\r\n    }\r\n  }\r\n\r\n  function liveCards(){\r\n    var host=root();\r\n    if(!host)return[];\r\n    return Array.prototype.slice.call(\r\n      host.querySelectorAll('.gdx-r11-card[data-gdx-r11-card]')\r\n    ).sort(function(a,b){\r\n      return Number(a.getAttribute('data-rank')||0)-Number(b.getAttribute('data-rank')||0)\r\n    })\r\n  }\r\n\r\n  function auditRows(){\r\n    var O=owner();\r\n    if(!O||typeof O.visualAudit!=='function')return[];\r\n    try{\r\n      var a=O.visualAudit();\r\n      return a&&Array.isArray(a.rows)?a.rows.slice():[]\r\n    }catch(_){return[]}\r\n  }\r\n\r\n  function scoreFromText(card,label){\r\n    var txt=clean(card&&card.innerText);\r\n    if(!txt)return null;\r\n    var source=label==='purpose'?'Ama\u00E7 Uyumu':(label==='fp'?'Genel F/P(?: Skoru)?':'Rol Uyumu');\r\n    var re=new RegExp(source+'[\\\\s\\\\S]{0,120}?(\\\\d{1,3})\\\\s*(?:\\\\/\\\\s*100)?','i');\r\n    var m=txt.match(re);\r\n    return m&&finite(m[1])?clamp(m[1]):null\r\n  }\r\n\r\n  function rowForCard(card,rank,title,rows){\r\n    return rows.find(function(r){return Number(r.rank||0)===rank})||\r\n           rows.find(function(r){return clean(r.title)===clean(title)})||\r\n           null\r\n  }\r\n\r\n  function stockFromCard(card){\r\n    var txt=clean(card&&card.innerText).toLocaleLowerCase('tr-TR');\r\n    if(/stok d\u0131\u015F\u0131|stokta de\u011Fil/.test(txt))return{label:'STOK DI\u015EI',available:false};\r\n    if(/sepete ekle|stokta/.test(txt))return{label:'STOKTA',available:true};\r\n    return{label:'STOK B\u0130LG\u0130S\u0130 YOK',available:null}\r\n  }\r\n\r\n  function sourceNora(){\r\n    var host=root();\r\n    if(!host)return'';\r\n    var blocks=Array.prototype.slice.call(\r\n      host.querySelectorAll('.gdx-r11-nora-context .gdx-r11-nora-block p')\r\n    ).map(function(el){return clean(el.textContent)}).filter(Boolean);\r\n    if(blocks.length)return blocks.slice(0,2).join(' ');\r\n    var h=host.querySelector('.gdx-r11-head p');\r\n    return clean(h&&h.textContent)\r\n  }\r\n\r\n  /* R45 share-only canonical narrative: selection-scoped, no photometric certification. */\r\n  var R45_PURPOSE_COPY=Object.freeze({\r\n    \"product_ecommerce::small_product_tabletop\":\"K\u00FC\u00E7\u00FCk \u00FCr\u00FCn \u00E7ekiminde yak\u0131n mesafeli, kontroll\u00FC ve dengeli ayd\u0131nlatma \u00F6nceliklidir.\",\r\n    \"product_ecommerce::large_product_model\":\"B\u00FCy\u00FCk \u00FCr\u00FCn ve model \u00E7ekiminde geni\u015F alan\u0131 dengeli ayd\u0131nlatmak ve g\u00F6lgeleri y\u00F6netmek \u00F6nemlidir.\",\r\n    \"product_ecommerce::marketplace_catalog\":\"Pazar yeri katalog \u00E7ekiminde \u00FCr\u00FCnler aras\u0131nda tutarl\u0131 \u0131\u015F\u0131k ve do\u011Fru renk sunumu \u00F6nemlidir.\",\r\n    \"youtube_reels_social::single_person_video\":\"Tek ki\u015Filik videoda y\u00FCz ayd\u0131nlatmas\u0131, g\u00F6lge kontrol\u00FC ve \u00E7al\u0131\u015Fma mesafesi birlikte de\u011Ferlendirilir.\",\r\n    \"youtube_reels_social::reels_tiktok_short\":\"K\u0131sa videoda h\u0131zl\u0131 kurulum, kontroll\u00FC y\u00FCz \u0131\u015F\u0131\u011F\u0131 ve kadraj i\u00E7inde kolay yerle\u015Fim \u00F6ne \u00E7\u0131kar.\",\r\n    \"youtube_reels_social::live_stream_talk\":\"Canl\u0131 yay\u0131nda uzun s\u00FCreli kullan\u0131m, y\u00FCz ayd\u0131nlatmas\u0131 ve \u0131\u015F\u0131\u011F\u0131n yerle\u015Fimi \u00F6nemlidir.\",\r\n    \"interview_talking_head::single_interview\":\"Tek ki\u015Filik r\u00F6portajda y\u00FCz\u00FCn dengeli g\u00F6r\u00FCnmesi ve arka plan\u0131n kontroll\u00FC ayr\u0131lmas\u0131 hedeflenir.\",\r\n    \"interview_talking_head::two_person_interview\":\"\u0130ki ki\u015Filik r\u00F6portajda iki y\u00FCz\u00FCn dengeli ayd\u0131nlat\u0131lmas\u0131 ve g\u00F6lgelerin y\u00F6netilmesi gerekir.\",\r\n    \"interview_talking_head::corporate_training\":\"Kurumsal e\u011Fitim \u00E7ekiminde y\u00FCz ve sunum alan\u0131 aras\u0131nda dengeli, tekrar kurulabilir \u0131\u015F\u0131k hedeflenir.\",\r\n    \"clinic_aesthetic_dental::skin_face_shoot\":\"Cilt ve y\u00FCz \u00E7ekiminde renk tutarl\u0131l\u0131\u011F\u0131, yumu\u015Fak ge\u00E7i\u015Fler ve kontroll\u00FC yak\u0131n plan \u00F6nemlidir.\",\r\n    \"clinic_aesthetic_dental::dental_support\":\"Dental destek \u00E7ekiminde yak\u0131n \u00E7al\u0131\u015Fma alan\u0131, yerle\u015Fim a\u00E7\u0131kl\u0131\u011F\u0131 ve kontroll\u00FC ayd\u0131nlatma \u00F6nemlidir.\",\r\n    \"clinic_aesthetic_dental::clinic_social_content\":\"Klinik sosyal medya \u00E7ekiminde y\u00FCz \u0131\u015F\u0131\u011F\u0131, renk tutarl\u0131l\u0131\u011F\u0131 ve h\u0131zl\u0131 konumland\u0131rma \u00F6ne \u00E7\u0131kar.\",\r\n    \"rgb_creative_video::background_color_effect\":\"Renkli arka plan \u00E7ekiminde konu \u0131\u015F\u0131\u011F\u0131 ile arka plan rengini ayr\u0131 kontrol etmek \u00F6nemlidir.\",\r\n    \"rgb_creative_video::music_clip_creative_scene\":\"Kreatif klip \u00E7ekiminde renk ayr\u0131m\u0131, \u0131\u015F\u0131k y\u00F6n\u00FC ve tekrarlanabilir efekt kontrol\u00FC \u00F6nemlidir.\",\r\n    \"rgb_creative_video::product_color_separation\":\"Renk ayr\u0131ml\u0131 \u00FCr\u00FCn \u00E7ekiminde \u00FCr\u00FCn renginin korunmas\u0131 ve arka plan \u0131\u015F\u0131\u011F\u0131n\u0131n ayr\u0131lmas\u0131 \u00F6nemlidir.\",\r\n    \"studio_professional::model_shoot\":\"Model \u00E7ekiminde y\u00FCz ve v\u00FCcut \u00FCzerindeki \u0131\u015F\u0131k da\u011F\u0131l\u0131m\u0131 ile g\u00F6lge ge\u00E7i\u015Fleri \u00F6nemlidir.\",\r\n    \"studio_professional::ad_campaign_visual\":\"Reklam \u00E7ekiminde tutarl\u0131 renk, kontroll\u00FC yans\u0131malar ve tekrar edilebilir \u0131\u015F\u0131k kurulumu hedeflenir.\",\r\n    \"studio_professional::fixed_studio_setup\":\"Sabit st\u00FCdyoda tekrarlanabilir yerle\u015Fim, geni\u015F alan kontrol\u00FC ve \u0131\u015F\u0131k g\u00F6revlerinin ayr\u0131m\u0131 \u00F6nemlidir.\",\r\n    \"mobile_outdoor::battery_shoot\":\"Bataryal\u0131 d\u0131\u015F \u00E7ekimde g\u00FC\u00E7 kayna\u011F\u0131 uyumu, ta\u015F\u0131nabilirlik ve ortam \u0131\u015F\u0131\u011F\u0131yla denge \u00F6ne \u00E7\u0131kar.\",\r\n    \"mobile_outdoor::portable_team\":\"Ta\u015F\u0131nabilir ekip \u00E7ekiminde ta\u015F\u0131ma kolayl\u0131\u011F\u0131, kurulum s\u00FCresi ve konum esnekli\u011Fi \u00F6nemlidir.\",\r\n    \"mobile_outdoor::fast_location_setup\":\"H\u0131zl\u0131 lokasyon kurulumunda pratik yerle\u015Fim, g\u00FCvenli enerji ve ortam \u0131\u015F\u0131\u011F\u0131na uyum aran\u0131r.\",\r\n    \"starter_budget_practical::first_light_choice\":\"\u0130lk \u0131\u015F\u0131k se\u00E7iminde kullan\u0131m alan\u0131na uygun rol, kolay kurulum ve b\u00FCt\u00E7e dengesi \u00F6nemlidir.\",\r\n    \"starter_budget_practical::budget_setup\":\"Ekonomik kurulumda temel \u0131\u015F\u0131k rol\u00FCn\u00FC kar\u015F\u0131lamak ve gerekli aksesuarlar\u0131 do\u011Fru se\u00E7mek \u00F6nemlidir.\",\r\n    \"starter_budget_practical::compact_solution\":\"Kompakt alanda \u00E7al\u0131\u015Fma mesafesi, \u0131\u015F\u0131k y\u00FCzeyi ve fiziksel yerle\u015Fim \u00F6nceliklidir.\",\r\n    \"rgb_creative_video::subject_rim_edge\":\"Kenar \u0131\u015F\u0131\u011F\u0131nda konuyu arka plandan ay\u0131ran y\u00F6n ve renk kontrol\u00FC \u00F6nemlidir.\",\r\n  });\r\n  /* R45B GLOBAL: 25 native purpose/subpurpose contexts x either lane.\r\n     Share-only human prose; current visible Top3 is authoritative.\r\n     Never infer relative device performance, measured suitability, or mutate ranking. */\r\n  function shareDecisionNarrative(sel,items){\r\n    var key=clean(sel.activePurposeKey)+'::'+clean(sel.activeSubPurposeKey);\r\n    var context=R45_PURPOSE_COPY[key]||'Bu \u00E7ekimde \u0131\u015F\u0131k rol\u00FC ve yerle\u015Fim, se\u00E7ilen kullan\u0131m amac\u0131yla birlikte de\u011Ferlendirilir.';\r\n    if(!items||items.length!==3)return context+' \u00DC\u00E7 \u00FCr\u00FCn \u00F6nerisinin tamam\u0131 hen\u00FCz y\u00FCklenmedi.';\r\n    var first=items[0],second=items[1],third=items[2];\r\n    var lead=clean(first.title)||'\u0130lk s\u0131radaki model';\r\n    var alternative2=clean(second.title)||'\u0130kinci model';\r\n    var alternative3=clean(third.title)||'\u00DC\u00E7\u00FCnc\u00FC model';\r\n    var explanation=' NORA bu se\u00E7imde '+lead+' modelini ilk s\u0131raya yerle\u015Ftiriyor.';\r\n    if(finite(first.purposeScore)&&finite(second.purposeScore)){\r\n      var gap=Math.round(first.purposeScore)-Math.round(second.purposeScore);\r\n      if(gap>0)explanation+=' Ama\u00E7 Uyumu puan\u0131 ikinci \u00F6neriden '+gap+' puan y\u00FCksek.';\r\n      else if(gap===0)explanation+=' \u0130lk iki \u00F6nerinin Ama\u00E7 Uyumu puanlar\u0131 e\u015Fit.';\r\n      /* No fictitious lead if scores or ordering conflict. */\r\n    }\r\n    explanation+=' '+alternative2+' ve '+alternative3+' ise s\u0131ras\u0131yla ikinci ve \u00FC\u00E7\u00FCnc\u00FC se\u00E7enekler.';\r\n    return context+explanation+' Son se\u00E7imde \u00E7ekim mesafesini, \u0131\u015F\u0131\u011F\u0131n yumu\u015Fat\u0131lmas\u0131n\u0131 ve kurulum alan\u0131n\u0131 dikkate al\u0131n. Kar\u015F\u0131la\u015Ft\u0131rma ayr\u0131nt\u0131lar\u0131n\u0131 ve \u00F6nerilen \u00FCr\u00FCnleri incelemek i\u00E7in QR kodunu okutun.';\r\n  }\r\n  function currentModel(){\r\n    var cards=liveCards(),sel=selection(),rows=auditRows();\r\n    if(cards.length!==3||!sel||!clean(sel.activePurposeKey)||!clean(sel.activeSubPurposeKey))return null;\r\n\r\n    var items=cards.map(function(card,i){\r\n      var rank=Number(card.getAttribute('data-rank')||i+1);\r\n      var key=clean(card.getAttribute('data-gdx-r11-card'));\r\n      var title=clean((card.querySelector('h4')||{}).textContent)||'Panel LED';\r\n      var vendor=clean((card.querySelector('.gdx-r11-brand')||{}).textContent)||'GDX';\r\n      var price=clean((card.querySelector('.gdx-r11-price')||{}).textContent)||'Fiyat bilgisi yok';\r\n      var img=card.querySelector('.gdx-r11-imgbox img');\r\n      var image=img?clean(img.currentSrc||img.src):'';\r\n      var row=rowForCard(card,rank,title,rows);\r\n      var purpose=row&&finite(row.purpose)?clamp(row.purpose):scoreFromText(card,'purpose');\r\n      var fp=row&&finite(row.fp)?clamp(row.fp):scoreFromText(card,'fp');\r\n      var role=row&&finite(row.role)?clamp(row.role):scoreFromText(card,'role');\r\n      var stock=stockFromCard(card);\r\n      return{\r\n        rank:rank,key:key,title:title,vendor:vendor,price:price,image:image,\r\n        purposeScore:purpose,fpScore:fp,roleScore:role,\r\n        stock:stock.label,available:stock.available\r\n      }\r\n    });\r\n\r\n    if(items.some(function(x){return !x.key||!x.title||!finite(x.purposeScore)||!finite(x.fpScore)||!finite(x.roleScore)}))return null;\r\n    if(new Set(items.map(function(x){return x.key})).size!==3)return null;\r\n\r\n    var purposeTitle=clean(sel.activePurposeTitle);\r\n    var subTitle=clean(sel.activeSubPurposeTitle);\r\n    var model={\r\n      version:VERSION,\r\n      purposeKey:clean(sel.activePurposeKey),\r\n      subPurposeKey:clean(sel.activeSubPurposeKey),\r\n      purposeLabel:[purposeTitle,subTitle].filter(Boolean).join(' \u00B7 ')||'Panel LED kullan\u0131m amac\u0131',\r\n      items:items,\r\n      nora:shareDecisionNarrative(sel,items),\r\n      url:''\r\n    };\r\n    model.url=buildDeepLink(model);\r\n    model.qrUrl=buildQrDeepLink(model);\r\n    model.signature=model.purposeKey+'::'+model.subPurposeKey+'::'+items.map(function(x){return x.key}).join('|');\r\n    return model\r\n  }\r\n\r\n  function buildDeepLink(model){\r\n    try{\r\n      var u=new URL('https://www.canfoto.com'+CANONICAL_PATH);\r\n      u.searchParams.set(OPEN,'panel-usecase');\r\n      u.searchParams.set(SHARE,SHARE_VALUE);\r\n      u.searchParams.set(PURPOSE,clean(model.purposeKey));\r\n      u.searchParams.set(SUB,clean(model.subPurposeKey));\r\n      u.searchParams.set(KEYS,model.items.map(function(x){return clean(x.key)}).join('~'));\r\n      u.hash='';\r\n      return u.toString()\r\n    }catch(_){return 'https://www.canfoto.com'+CANONICAL_PATH}\r\n  }\r\n\r\n  /* QR payload is intentionally compact so the sealed local QR engine\r\n     never overflows its fixed Version-13 byte capacity. The visible/share\r\n     deep-link remains the canonical long form above. */\r\n  function buildQrDeepLink(model){\r\n    try{\r\n      var u=new URL('https://www.canfoto.com'+CANONICAL_PATH);\r\n      u.searchParams.set(OPEN,'panel-usecase');\r\n      u.searchParams.set('s','t3');\r\n      u.searchParams.set('p',clean(model.purposeKey));\r\n      u.searchParams.set('u',clean(model.subPurposeKey));\r\n      u.searchParams.set('k',model.items.map(function(x){return clean(x.key)}).join('~'));\r\n      u.hash='';\r\n      return u.toString()\r\n    }catch(_){return buildDeepLink(model)}\r\n  }\r\n\r\n  function parseDeepLink(value){\r\n    try{\r\n      var u=new URL(value||location.href,location.origin);\r\n      var compact=clean(u.searchParams.get('s'))==='t3';\r\n      var legacy=clean(u.searchParams.get(SHARE))===SHARE_VALUE;\r\n      if(!compact&&!legacy)return null;\r\n      var purposeKey=clean(u.searchParams.get(compact?'p':PURPOSE));\r\n      var subPurposeKey=clean(u.searchParams.get(compact?'u':SUB));\r\n      var offerKeys=clean(u.searchParams.get(compact?'k':KEYS)).split('~').map(clean).filter(Boolean);\r\n      if(!purposeKey||!subPurposeKey||offerKeys.length!==3||new Set(offerKeys).size!==3)return null;\r\n      return{purposeKey:purposeKey,subPurposeKey:subPurposeKey,offerKeys:offerKeys,url:u.toString(),compact:compact}\r\n    }catch(_){return null}\r\n  }\r\n\r\n  async function restoreDeepLink(value){\r\n    var p=parseDeepLink(value||location.href);\r\n    if(!p){\r\n      LAST.restoreResult={ok:false,code:'NO_TOP3_DEEPLINK',version:VERSION};\r\n      return LAST.restoreResult\r\n    }\r\n\r\n    showDeepLinkProgress();\r\n    updateDeepLinkProgress(10,'Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 okunuyor\u2026','Ba\u015Flat\u0131l\u0131yor');\r\n\r\n    var startedAt=Date.now(),attempts=0;\r\n    var launcher=await waitFor(function(){return document.getElementById('gdxPanelV4Launcher')},8000,100);\r\n    var shell=document.getElementById('gdxPanelV4Shell');\r\n\r\n    if(launcher&&(!shell||shell.hidden||shell.getAttribute('aria-hidden')==='true')){\r\n      try{launcher.click()}catch(_){}\r\n    }\r\n\r\n    updateDeepLinkProgress(24,'Se\u00E7im motoru haz\u0131rlan\u0131yor\u2026','Motor haz\u0131rlan\u0131yor');\r\n\r\n    var gate=await waitForGenericOpenToSettle();\r\n    if(!gate.ok){\r\n      finishDeepLinkProgress(false,'Panel LED sonucu a\u00E7\u0131lamad\u0131.');\r\n      LAST.restoreResult={\r\n        ok:false,code:gate.code,version:VERSION,\r\n        routeGate:gate,attempts:attempts,elapsedMs:Date.now()-startedAt\r\n      };\r\n      return LAST.restoreResult\r\n    }\r\n\r\n    updateDeepLinkProgress(46,'Payla\u015F\u0131lan se\u00E7imler y\u00FCkleniyor\u2026','Se\u00E7imler y\u00FCkleniyor');\r\n\r\n    var setter=window.setPanelV4R28Selection;\r\n\r\n    async function applyExactTarget(reason){\r\n      attempts+=1;\r\n      var selected=null;\r\n      try{selected=setter(p.purposeKey,p.subPurposeKey)}\r\n      catch(error){\r\n        return{\r\n          ok:false,code:'SELECTION_RESTORE_FAILED',\r\n          reason:reason,message:String(error&&error.message||error)\r\n        }\r\n      }\r\n      if(!selected)return{ok:false,code:'SELECTION_NOT_FOUND',reason:reason};\r\n\r\n      updateDeepLinkProgress(68,'\u00DCr\u00FCn ve karar bilgileri e\u015Fle\u015Ftiriliyor\u2026','Veriler e\u015Fle\u015Ftiriliyor');\r\n\r\n      /*\r\n        IMPORTANT D02.3 readiness rule:\r\n        A correct R28 selection can become active BEFORE the R11 cards have finished\r\n        replacing the previous/default Top3 DOM. Therefore \"three cards exist\" is\r\n        not sufficient readiness. Wait for the exact ordered target keys.\r\n      */\r\n      var ready=await waitFor(function(){\r\n        if(!exactSelection(p))return null;\r\n        var cards=liveCards();\r\n        if(cards.length!==3)return null;\r\n        var keys=cards.map(function(c){return clean(c.getAttribute('data-gdx-r11-card'))});\r\n        if(!keys.every(Boolean))return null;\r\n        var exact=keys.length===3&&p.offerKeys.every(function(k,i){\r\n          return clean(k)===clean(keys[i])\r\n        });\r\n        return exact?{keys:keys}:null\r\n      },2600,70);\r\n\r\n      if(ready){\r\n        updateDeepLinkProgress(86,'Hedef sonu\u00E7 do\u011Frulan\u0131yor\u2026','Sonu\u00E7 do\u011Frulan\u0131yor');\r\n        return{ok:true,code:'EXACT_TARGET_APPLIED',reason:reason,keys:ready.keys}\r\n      }\r\n\r\n      var nowSelectionExact=exactSelection(p);\r\n      var nowCards=liveCards();\r\n      var nowKeys=nowCards.map(function(c){return clean(c.getAttribute('data-gdx-r11-card'))});\r\n      var nowExact=nowSelectionExact&&nowKeys.length===3&&p.offerKeys.every(function(k,i){\r\n        return clean(k)===clean(nowKeys[i])\r\n      });\r\n\r\n      if(nowExact){\r\n        updateDeepLinkProgress(86,'Hedef sonu\u00E7 do\u011Frulan\u0131yor\u2026','Sonu\u00E7 do\u011Frulan\u0131yor');\r\n        return{ok:true,code:'EXACT_TARGET_APPLIED_LATE_EDGE',reason:reason,keys:nowKeys}\r\n      }\r\n\r\n      if(nowSelectionExact&&nowKeys.length===3){\r\n        return{\r\n          ok:false,code:'TOP3_RESULT_CHANGED',reason:reason,\r\n          targetOfferKeys:p.offerKeys,activeOfferKeys:nowKeys\r\n        }\r\n      }\r\n\r\n      return{\r\n        ok:false,code:'TOP3_R11_NOT_READY',reason:reason,\r\n        targetOfferKeys:p.offerKeys,activeOfferKeys:nowKeys\r\n      }\r\n    }\r\n\r\n    var first=await applyExactTarget('PRIMARY_AFTER_GENERIC_OPEN');\r\n    if(!first.ok){\r\n      finishDeepLinkProgress(false,'Payla\u015F\u0131lan Top3 sonucu a\u00E7\u0131lamad\u0131.');\r\n      LAST.restoreResult={\r\n        ok:false,code:first.code,version:VERSION,\r\n        routeGate:gate,attempts:attempts,\r\n        targetOfferKeys:p.offerKeys,\r\n        activeOfferKeys:first.activeOfferKeys||[],\r\n        purposeKey:p.purposeKey,subPurposeKey:p.subPurposeKey,\r\n        elapsedMs:Date.now()-startedAt\r\n      };\r\n      return LAST.restoreResult\r\n    }\r\n\r\n    /*\r\n      Final-state guard: wait past the generic opener's late mobile/desktop\r\n      selection work. If the exact selection is overwritten, re-apply ONCE via\r\n      the existing public R28 API. Ranking is never forced; the ordered Top3 must\r\n      still be what the sealed R11 owner naturally produces.\r\n    */\r\n    updateDeepLinkProgress(92,'Sonu\u00E7 ekrana yerle\u015Ftiriliyor\u2026','Son ekran haz\u0131rlan\u0131yor');\r\n    await sleep(360);\r\n    var finalExact=exactSelection(p)&&exactR11Keys(p);\r\n    var recovery=null;\r\n\r\n    if(!finalExact){\r\n      updateDeepLinkProgress(74,'Hedef sonu\u00E7 yeniden e\u015Fle\u015Ftiriliyor\u2026','Sonu\u00E7 yeniden do\u011Frulan\u0131yor');\r\n      recovery=await applyExactTarget('ONE_LATE_ROUTE_RECOVERY');\r\n      if(!recovery.ok){\r\n        finishDeepLinkProgress(false,'Payla\u015F\u0131lan Top3 sonucu a\u00E7\u0131lamad\u0131.');\r\n        LAST.restoreResult={\r\n          ok:false,code:recovery.code,version:VERSION,\r\n          routeGate:gate,attempts:attempts,recoveryAttempted:true,\r\n          targetOfferKeys:p.offerKeys,\r\n          activeOfferKeys:recovery.activeOfferKeys||liveCards().map(function(c){return clean(c.getAttribute('data-gdx-r11-card'))}),\r\n          purposeKey:p.purposeKey,subPurposeKey:p.subPurposeKey,\r\n          elapsedMs:Date.now()-startedAt\r\n        };\r\n        return LAST.restoreResult\r\n      }\r\n      await sleep(360);\r\n      finalExact=exactSelection(p)&&exactR11Keys(p)\r\n    }\r\n\r\n    if(!finalExact){\r\n      finishDeepLinkProgress(false,'Final Top3 sonucu sabitlenemedi.');\r\n      LAST.restoreResult={\r\n        ok:false,code:'FINAL_TARGET_NOT_STABLE',version:VERSION,\r\n        routeGate:gate,attempts:attempts,recoveryAttempted:!!recovery,\r\n        purposeKey:p.purposeKey,subPurposeKey:p.subPurposeKey,\r\n        targetOfferKeys:p.offerKeys,\r\n        activeOfferKeys:liveCards().map(function(c){return clean(c.getAttribute('data-gdx-r11-card'))}),\r\n        elapsedMs:Date.now()-startedAt\r\n      };\r\n      return LAST.restoreResult\r\n    }\r\n\r\n    var host=root();\r\n    if(host){try{host.scrollIntoView({block:'start',behavior:'auto'})}catch(_){}}\r\n\r\n    updateDeepLinkProgress(100,'Sonu\u00E7 haz\u0131r.','Tamamland\u0131');\r\n    finishDeepLinkProgress(true,'Sonu\u00E7 haz\u0131r.');\r\n\r\n    LAST.restoreResult={\r\n      ok:true,code:'TOP3_DEEPLINK_RESTORED',version:VERSION,\r\n      purposeKey:p.purposeKey,subPurposeKey:p.subPurposeKey,\r\n      targetOfferKeys:p.offerKeys,\r\n      activeOfferKeys:liveCards().map(function(c){return clean(c.getAttribute('data-gdx-r11-card'))}),\r\n      routeGate:gate,\r\n      attempts:attempts,\r\n      recoveryAttempted:!!recovery,\r\n      finalStable:true,\r\n      elapsedMs:Date.now()-startedAt\r\n    };\r\n    scheduleRefresh();\r\n    return LAST.restoreResult\r\n  }\r\n\r\n  function rounded(ctx,x,y,w,h,r,fill,stroke,sw){\r\n    var rr=Math.min(r,w/2,h/2);\r\n    ctx.beginPath();ctx.moveTo(x+rr,y);ctx.arcTo(x+w,y,x+w,y+h,rr);ctx.arcTo(x+w,y+h,x,y+h,rr);ctx.arcTo(x,y+h,x,y,rr);ctx.arcTo(x,y,x+w,y,rr);ctx.closePath();\r\n    if(fill){ctx.fillStyle=fill;ctx.fill()}\r\n    if(stroke){ctx.strokeStyle=stroke;ctx.lineWidth=sw||1;ctx.stroke()}\r\n  }\r\n  function text(ctx,v,x,y,opt){\r\n    opt=opt||{};ctx.save();ctx.font=opt.font||'700 16px Arial';ctx.fillStyle=opt.color||'#fff';ctx.textAlign=opt.align||'left';ctx.textBaseline=opt.base||'alphabetic';ctx.fillText(clean(v),x,y);ctx.restore()\r\n  }\r\n  function wrap(ctx,v,x,y,maxW,lineH,maxLines,opt){\r\n    opt=opt||{};ctx.save();ctx.font=opt.font||'700 16px Arial';ctx.fillStyle=opt.color||'#fff';ctx.textAlign=opt.align||'left';ctx.textBaseline='top';\r\n    var words=clean(v).split(' '),lines=[],line='';\r\n    words.forEach(function(word){\r\n      var test=line?line+' '+word:word;\r\n      if(ctx.measureText(test).width<=maxW||!line)line=test;\r\n      else{lines.push(line);line=word}\r\n    });\r\n    if(line)lines.push(line);\r\n    if(maxLines&&lines.length>maxLines){\r\n      lines=lines.slice(0,maxLines);\r\n      var last=lines.length-1;\r\n      while(ctx.measureText(lines[last]+'\u2026').width>maxW&&lines[last].length>2)lines[last]=lines[last].slice(0,-1);\r\n      lines[last]+='\u2026'\r\n    }\r\n    lines.forEach(function(l,i){ctx.fillText(l,x,y+i*lineH)});\r\n    ctx.restore();return lines.length\r\n  }\r\n  function loadImage(src){\r\n    if(!src)return Promise.resolve(null);\r\n    return new Promise(function(resolve){\r\n      var img=new Image(),settled=false;\r\n      var timer=setTimeout(function(){finish(null)},2500);\r\n      function finish(value){\r\n        if(settled)return;\r\n        settled=true;\r\n        clearTimeout(timer);\r\n        img.onload=null;img.onerror=null;\r\n        resolve(value)\r\n      }\r\n      img.crossOrigin='anonymous';\r\n      img.decoding='async';\r\n      img.onload=function(){finish(img)};\r\n      img.onerror=function(){finish(null)};\r\n      try{img.src=src}catch(_){finish(null)}\r\n    })\r\n  }\r\n  function drawContain(ctx,img,x,y,w,h){\r\n    rounded(ctx,x,y,w,h,18,'#fff','#55d8ca',1.5);\r\n    if(!img)return;\r\n    var scale=Math.min((w-18)/img.width,(h-18)/img.height),dw=img.width*scale,dh=img.height*scale;\r\n    ctx.drawImage(img,x+(w-dw)/2,y+(h-dh)/2,dw,dh)\r\n  }\r\n  function scoreText(v){return finite(v)?String(clamp(v))+'/100':'\u2014'}\r\n\r\n  async function renderPng(){\r\n    var model=currentModel();\r\n    if(!model)return{ok:false,code:'R11_TOP3_MODEL_NOT_READY',version:VERSION};\r\n\r\n    /* R5: QR is mandatory for Top3 PNG.\r\n       panel-led-v4.qr.js is loaded before this share runtime by the section.\r\n       Keep image loading parallel, but never serialize a QR-less fallback PNG. */\r\n    var imagePromise=Promise.all(model.items.map(function(x){return loadImage(x.image)}));\r\n    var Q=await waitFor(function(){\r\n      var q=qr();return q&&q.ready&&typeof q.drawToCanvas==='function'?q:null\r\n    },6500,60);\r\n\r\n    if(!Q){\r\n      return {ok:false,code:'TOP3_QR_NOT_READY',version:VERSION,qrRequired:true}\r\n    }\r\n\r\n    /* One bounded quiet frame pair closes late custom-script readiness races. */\r\n    await new Promise(function(resolve){\r\n      requestAnimationFrame(function(){requestAnimationFrame(resolve)})\r\n    });\r\n\r\n    var c=document.createElement('canvas');c.width=W;c.height=H;\r\n    var ctx=c.getContext('2d',{alpha:false});\r\n    if(!ctx)return{ok:false,code:'NO_CANVAS',version:VERSION};\r\n\r\n    var BG='#04131b',TEAL='#63f1d7',CYAN='#40c3e0',GOLD='#ffd65c',INK='#f4fffd',MUTED='#b7d6d2';\r\n    ctx.fillStyle=BG;ctx.fillRect(0,0,W,H);\r\n    var grad=ctx.createLinearGradient(0,0,W,H);\r\n    grad.addColorStop(0,'rgba(26,142,137,.16)');\r\n    grad.addColorStop(1,'rgba(64,195,224,.08)');\r\n    ctx.fillStyle=grad;ctx.fillRect(0,0,W,H);\r\n\r\n    rounded(ctx,22,22,1036,1396,28,null,TEAL,2);\r\n    rounded(ctx,42,42,996,1356,24,null,'rgba(99,241,215,.22)',1);\r\n    rounded(ctx,150,24,780,76,22,'#06151d',TEAL,2);\r\n    text(ctx,'NORA \u00B7 PANEL LED \u00B7 TOP3 \u00D6NER\u0130 SONUCU',540,72,{font:'950 27px Arial',color:TEAL,align:'center'});\r\n    text(ctx,'SANA UYGUN 3 PANEL LED',540,156,{font:'950 46px Arial',color:INK,align:'center'});\r\n    wrap(ctx,model.purposeLabel,540,205,900,28,2,{font:'850 22px Arial',color:'#d9f4ef',align:'center'});\r\n\r\n    var images=await imagePromise;\r\n    var accents=[GOLD,CYAN,'#d678ff'];\r\n    var labels=['EN UYGUN \u00D6NER\u0130','G\u00DC\u00C7L\u00DC ALTERNAT\u0130F','ALTERNAT\u0130F'];\r\n    var cardY=300,cardW=310,cardH=708,gap=15,startX=52;\r\n\r\n    model.items.forEach(function(item,i){\r\n      var x=startX+i*(cardW+gap),accent=accents[i];\r\n      rounded(ctx,x,cardY,cardW,cardH,22,'rgba(5,23,29,.96)',accent,2);\r\n      rounded(ctx,x+18,cardY+18,52,42,13,accent,null,0);\r\n      text(ctx,'#'+item.rank,x+44,cardY+47,{font:'950 18px Arial',color:'#04131b',align:'center'});\r\n      text(ctx,labels[i],x+82,cardY+45,{font:'950 11px Arial',color:accent});\r\n      wrap(ctx,item.title,x+cardW/2,cardY+88,cardW-36,24,2,{font:'900 18px Arial',color:INK,align:'center'});\r\n      drawContain(ctx,images[i],x+48,cardY+150,214,188);\r\n\r\n      var stockColor=item.available===false?'#f5b942':(item.available===true?'#2ad477':'#94a3b8');\r\n      rounded(ctx,x+48,cardY+352,214,34,11,'rgba(255,255,255,.04)',stockColor,1.2);\r\n      text(ctx,item.stock,x+155,cardY+375,{font:'900 11px Arial',color:stockColor,align:'center'});\r\n\r\n      text(ctx,'F\u0130YAT',x+22,cardY+422,{font:'800 11px Arial',color:MUTED});\r\n      text(ctx,item.price,x+cardW-22,cardY+422,{font:'900 15px Arial',color:INK,align:'right'});\r\n\r\n      [\r\n        ['AMA\u00C7 UYUMU',item.purposeScore,'#2ad477'],\r\n        ['GENEL F/P',item.fpScore,GOLD],\r\n        ['ROL UYUMU',item.roleScore,CYAN]\r\n      ].forEach(function(m,j){\r\n        var yy=cardY+452+j*70;\r\n        rounded(ctx,x+18,yy,cardW-36,58,13,'#102a30','rgba(255,255,255,.10)',1);\r\n        text(ctx,m[0],x+32,yy+22,{font:'850 11px Arial',color:MUTED});\r\n        text(ctx,scoreText(m[1]),x+cardW-30,yy+39,{font:'950 19px Arial',color:m[2],align:'right'})\r\n      });\r\n\r\n      text(ctx,item.vendor||'Panel LED',x+cardW/2,cardY+688,{font:'850 12px Arial',color:accent,align:'center'})\r\n    });\r\n\r\n    rounded(ctx,58,1050,690,252,22,'#0b3436',TEAL,1.5);\r\n    text(ctx,'NORA KARAR \u00D6ZET\u0130',88,1095,{font:'950 24px Arial',color:TEAL});\r\n    wrap(ctx,model.nora||model.purposeLabel,88,1134,630,23,6,{font:'750 16px Arial',color:INK});\r\n\r\n    rounded(ctx,782,1051,256,256,18,'#fff','#2f8d88',2);\r\n    try{\r\n      Q.drawToCanvas(ctx,model.qrUrl||model.url,800,1069,220,{background:'#fff',foreground:'#020617',quiet:4});\r\n    }catch(error){\r\n      return {ok:false,code:'TOP3_QR_DRAW_FAILED',version:VERSION,qrRequired:true,message:String(error&&error.message||error)}\r\n    }\r\n    text(ctx,'QR \u00B7 SONUCU A\u00C7',910,1332,{font:'900 14px Arial',color:TEAL,align:'center'});\r\n    text(ctx,'CANFOTO.COM',540,1392,{font:'950 25px Arial',color:TEAL,align:'center'});\r\n\r\n    return new Promise(function(resolve){\r\n      var settled=false;\r\n      var watchdog=setTimeout(function(){\r\n        if(settled)return;settled=true;\r\n        resolve({ok:false,code:'PNG_SERIALIZE_TIMEOUT',version:VERSION})\r\n      },3500);\r\n      function finish(result){\r\n        if(settled)return;settled=true;clearTimeout(watchdog);resolve(result)\r\n      }\r\n      try{\r\n        c.toBlob(function(blob){\r\n          if(!blob)return finish({ok:false,code:'PNG_FAILED',version:VERSION});\r\n          var dataUrl='';\r\n          try{dataUrl=c.toDataURL('image/png')}catch(_){return finish({ok:false,code:'PNG_DATA_URL_FAILED',version:VERSION})}\r\n          finish({\r\n            ok:true,version:VERSION,width:W,height:H,ratio:'3:4',\r\n            canvas:c,blob:blob,dataUrl:dataUrl,\r\n            model:model,qrUrl:model.qrUrl||model.url,qrIncluded:true,qrFallbackUsed:false,qrRequired:true\r\n          })\r\n        },'image/png',1)\r\n      }catch(error){\r\n        finish({ok:false,code:'PNG_SERIALIZE_EXCEPTION',version:VERSION,message:String(error&&error.message||error)})\r\n      }\r\n    })\r\n  }\r\n\r\n  function ensureStyles(){\r\n    if(document.getElementById('gdxPanelV4R11Top3ShareStylesV1'))return;\r\n    var st=document.createElement('style');\r\n    st.id='gdxPanelV4R11Top3ShareStylesV1';\r\n    st.textContent=''\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1{'\r\n      +'--share-surface:color-mix(in srgb,var(--gdx-v4-surface-1) 90%,var(--gdx-v4-primary) 10%);'\r\n      +'--share-border:color-mix(in srgb,var(--gdx-v4-border-strong) 74%,transparent);'\r\n      +'position:relative;margin:18px 0;padding:16px;border:1px solid var(--share-border);border-radius:var(--gdx-v4-radius-sm,16px);'\r\n      +'background:linear-gradient(145deg,var(--share-surface),var(--gdx-v4-surface-1));'\r\n      +'color:var(--gdx-v4-text-1);box-shadow:var(--gdx-v4-shadow-soft,0 10px 28px rgba(0,0,0,.18))}'\r\n      +'#gdx-panel-led-v4-root[data-gdx-panel-theme=\"light\"] .gdx-panel-v4-r11-top3-share-v1{background:linear-gradient(145deg,#f6f0e8,#fffefd 52%,#e9f2ef)}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 h3{margin:0;font-size:18px;line-height:1.2;color:var(--gdx-v4-primary);font-weight:900}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 p{margin:7px 0 0;font-size:12px;line-height:1.48;color:var(--gdx-v4-text-2)}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-status]{margin-top:8px;min-height:0;color:var(--gdx-v4-text-3);font-size:11px;font-weight:750}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 .gdx-panel-r11-top3-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 button{appearance:none;min-height:44px;border:1px solid var(--share-border);border-radius:12px;padding:11px 12px;font:850 12px/1.15 Arial,sans-serif;cursor:pointer}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-prepare]{background:linear-gradient(135deg,var(--gdx-v4-primary),var(--gdx-v4-primary-2));color:#fff}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-share]{background:var(--gdx-v4-info);color:#fff}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-download]{background:var(--gdx-v4-warning-soft);color:var(--gdx-v4-warning);border-color:color-mix(in srgb,var(--gdx-v4-warning) 54%,transparent);font-weight:900}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-close]{position:absolute;top:12px;right:12px;width:38px;height:38px;min-height:38px;padding:0;border-radius:999px;background:var(--gdx-v4-surface-2);color:var(--gdx-v4-text-1);font:900 22px/1 Arial,sans-serif;display:grid;place-items:center;z-index:3}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-close]:hover{border-color:var(--gdx-v4-primary);color:var(--gdx-v4-primary)}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1[data-prepared=\"0\"] [data-prepare]{grid-column:1/-1}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1[data-prepared=\"1\"] [data-prepare]{display:none!important}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-ready-action][hidden],#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-preview][hidden]{display:none!important}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-preview]{margin-top:12px;border-radius:13px;overflow:hidden;background:#03161b;border:1px solid color-mix(in srgb,var(--gdx-v4-primary) 34%,transparent)}'\r\n      +'#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 [data-preview] img{display:block;width:100%;height:auto}'\r\n      +'@media(max-width:760px){#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1{padding:13px;border-radius:18px}#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 .gdx-panel-r11-top3-actions{gap:8px}#gdx-panel-led-v4-root .gdx-panel-v4-r11-top3-share-v1 button{min-height:42px;padding:10px 8px;font-size:11.5px}}';\r\n    document.head.appendChild(st)\r\n  }\r\n\r\n  function getMount(){return document.querySelector('[data-gdx-panel-r11-top3-share-v1=\"1\"]')}\r\n\r\n  function clearPrepared(m){\r\n    LAST.prepared=null;\r\n    var p=m&&m.querySelector('[data-preview]');\r\n    var prepare=m&&m.querySelector('[data-prepare]');\r\n    var readyActions=m?Array.prototype.slice.call(m.querySelectorAll('[data-ready-action]')):[];\r\n    if(p){p.hidden=true;p.innerHTML=''}\r\n    readyActions.forEach(function(btn){btn.hidden=true});\r\n    if(m)m.setAttribute('data-prepared','0');\r\n    if(prepare){prepare.hidden=false;prepare.disabled=false;prepare.textContent='Sonucu Payla\u015F'}\r\n    var s=m&&m.querySelector('[data-status]');if(s)s.textContent=''\r\n  }\r\n\r\n  function setStatus(m,v){\r\n    var e=m&&m.querySelector('[data-status]');\r\n    if(e)e.textContent=clean(v)\r\n  }\r\n\r\n  function mount(){\r\n    var host=root();\r\n    if(!host)return false;\r\n\r\n    var cards=liveCards();\r\n    var sel=selection();\r\n\r\n    if(cards.length!==3 || !sel || !clean(sel.activePurposeKey) || !clean(sel.activeSubPurposeKey)){\r\n      var stale=getMount();\r\n      if(stale){\r\n        stale.hidden=true;\r\n        stale.setAttribute('aria-hidden','true')\r\n      }\r\n      return false\r\n    }\r\n\r\n    ensureStyles();\r\n\r\n    var m=getMount();\r\n    if(!m){\r\n      m=document.createElement('section');\r\n      m.className='gdx-panel-v4-r11-top3-share-v1';\r\n      m.setAttribute('data-gdx-panel-r11-top3-share-v1','1');\r\n      m.setAttribute('data-prepared','0');\r\n      m.innerHTML=''\r\n        +'<h3>Top3 sonucunu payla\u015F</h3>'\r\n        +'<p>\u00DC\u00E7 Panel LED \u00F6nerisini ayn\u0131 ama\u00E7, ayn\u0131 s\u0131ra ve ayn\u0131 karar skorlar\u0131yla 3:4 payla\u015F\u0131m kart\u0131na d\u00F6n\u00FC\u015Ft\u00FCr\u00FCn.</p>'\r\n        +'<div data-status aria-live=\"polite\"></div>'\r\n        +'<div data-preview hidden></div>'\r\n        +'<button type=\"button\" data-close data-ready-action hidden aria-label=\"Payla\u015F\u0131m \u00F6nizlemesini kapat\" title=\"Kapat\">\u00D7</button>'\r\n        +'<div class=\"gdx-panel-r11-top3-actions\" data-actions>'\r\n        +'<button type=\"button\" data-prepare>Sonucu Payla\u015F</button>'\r\n        +'<button type=\"button\" data-share data-ready-action hidden>\u015Eimdi Payla\u015F</button>'\r\n        +'<button type=\"button\" data-download data-ready-action hidden>PNG \u0130ndir</button>'\r\n        +'</div>';\r\n      host.insertAdjacentElement('afterend',m);\r\n      bindMount(m)\r\n    }else if(host.nextElementSibling!==m){\r\n      host.insertAdjacentElement('afterend',m)\r\n    }\r\n\r\n    m.hidden=false;\r\n    m.removeAttribute('aria-hidden');\r\n    m.removeAttribute('data-gdx-pool-result-suppressed');\r\n\r\n    var model=currentModel();\r\n    var prepare=m.querySelector('[data-prepare]');\r\n\r\n    if(!model||model.items.length!==3){\r\n      LAST.mounted=true;\r\n      m.setAttribute('data-model-ready','0');\r\n      m.removeAttribute('data-signature');\r\n\r\n      if(prepare){\r\n        prepare.hidden=false;\r\n        prepare.disabled=true;\r\n        prepare.textContent='Payla\u015F\u0131m haz\u0131rlan\u0131yor\u2026'\r\n      }\r\n\r\n      setStatus(m,'Top3 payla\u015F\u0131m modeli haz\u0131rlan\u0131yor\u2026');\r\n      return true\r\n    }\r\n\r\n    m.setAttribute('data-model-ready','1');\r\n\r\n    if(LAST.signature&&LAST.signature!==model.signature)clearPrepared(m);\r\n    LAST.signature=model.signature;\r\n    LAST.mounted=true;\r\n    m.setAttribute('data-signature',model.signature);\r\n\r\n    if(prepare&&!LAST.prepared){\r\n      prepare.hidden=false;\r\n      prepare.disabled=false;\r\n      prepare.textContent='Sonucu Payla\u015F'\r\n    }\r\n\r\n    if(!LAST.prepared)setStatus(m,'');\r\n    return true\r\n  }\r\n\r\n  function bindMount(m){\r\n    if(!m||m.dataset.bound==='1')return;\r\n    m.dataset.bound='1';\r\n\r\n    m.addEventListener('click',async function(e){\r\n      if(e.target.closest('[data-prepare]')){\r\n        var prepare=e.target.closest('[data-prepare]');\r\n        var exactModel=currentModel();\r\n\r\n        if(!exactModel||exactModel.items.length!==3){\r\n          prepare.disabled=true;\r\n          prepare.textContent='Payla\u015F\u0131m haz\u0131rlan\u0131yor\u2026';\r\n          setStatus(m,'Top3 payla\u015F\u0131m modeli haz\u0131rlan\u0131yor\u2026');\r\n          scheduleRefresh();\r\n          return\r\n        }\r\n\r\n        prepare.disabled=true;prepare.textContent='Haz\u0131rlan\u0131yor\u2026';\r\n        setStatus(m,'Top3 payla\u015F\u0131m kart\u0131 haz\u0131rlan\u0131yor\u2026');\r\n\r\n        var pkg=null;\r\n        try{pkg=await renderPng()}\r\n        catch(error){pkg={ok:false,code:'R11_TOP3_PREPARE_EXCEPTION',message:String(error&&error.message||error)}}\r\n        if(!pkg||!pkg.ok){\r\n          prepare.disabled=false;prepare.textContent='Sonucu Payla\u015F';\r\n          setStatus(m,'Payla\u015F\u0131m kart\u0131 haz\u0131rlanamad\u0131: '+clean(pkg&&pkg.code||'UNKNOWN_ERROR'));\r\n          return\r\n        }\r\n\r\n        LAST.prepared=pkg;\r\n        var pv=m.querySelector('[data-preview]');\r\n        var readyActions=Array.prototype.slice.call(m.querySelectorAll('[data-ready-action]'));\r\n        pv.hidden=false;\r\n        pv.innerHTML='<img src=\"'+esc(pkg.dataUrl)+'\" alt=\"Panel LED Top3 payla\u015F\u0131m kart\u0131\">';\r\n        readyActions.forEach(function(btn){btn.hidden=false});\r\n        m.setAttribute('data-prepared','1');\r\n        prepare.hidden=true;\r\n        prepare.disabled=false;\r\n        prepare.textContent='Sonucu Payla\u015F';\r\n        setStatus(m,'Payla\u015F\u0131m haz\u0131r');\r\n        try{m.scrollIntoView({block:'nearest',behavior:'smooth'})}catch(_){}\r\n        return\r\n      }\r\n\r\n      if(e.target.closest('[data-download]')){\r\n        if(!LAST.prepared)return;\r\n        var a=document.createElement('a');\r\n        a.href=LAST.prepared.dataUrl;\r\n        a.download='canfoto-panel-led-top3-oneri-1080x1440.png';\r\n        document.body.appendChild(a);a.click();a.remove();\r\n        return\r\n      }\r\n\r\n\r\n      if(e.target.closest('[data-share]')){\r\n        if(!LAST.prepared)return;\r\n        var pkg=LAST.prepared,filename='canfoto-panel-led-top3-oneri-1080x1440.png',file=null;\r\n        try{file=new File([pkg.blob],filename,{type:'image/png'})}catch(_){}\r\n        var data={\r\n          title:'CAN FOTO Panel LED Top3 \u00F6nerisi',\r\n          text:pkg.model.purposeLabel+' \u00B7 '+pkg.model.items.map(function(x){return'#'+x.rank+' '+x.title}).join(' \u00B7 '),\r\n          url:pkg.model.url\r\n        };\r\n        try{\r\n          if(file&&navigator.share&&navigator.canShare&&navigator.canShare({files:[file]})){\r\n            await navigator.share(Object.assign({},data,{files:[file]}))\r\n          }else{\r\n            var a=document.createElement('a');\r\n            a.href=pkg.dataUrl;a.download=filename;\r\n            document.body.appendChild(a);a.click();a.remove();\r\n            if(navigator.clipboard&&navigator.clipboard.writeText)await navigator.clipboard.writeText(data.text+'\\n'+data.url)\r\n          }\r\n          setStatus(m,'Payla\u015F\u0131m a\u00E7\u0131ld\u0131')\r\n        }catch(error){\r\n          if(error&&error.name!=='AbortError')setStatus(m,'Payla\u015F\u0131m tamamlanamad\u0131')\r\n        }\r\n        return\r\n      }\r\n\r\n      if(e.target.closest('[data-close]'))clearPrepared(m)\r\n    })\r\n  }\r\n\r\n  function scheduleRefresh(){\r\n    clearTimeout(refreshTimer);\r\n    refreshTimer=setTimeout(function(){mount()},100)\r\n  }\r\n\r\n  function activeState(){\r\n    var sel=selection(),cards=liveCards();\r\n    if(!sel||cards.length!==3)return null;\r\n    return{\r\n      purposeKey:clean(sel.activePurposeKey),\r\n      subPurposeKey:clean(sel.activeSubPurposeKey),\r\n      offerKeys:cards.map(function(c){return clean(c.getAttribute('data-gdx-r11-card'))})\r\n    }\r\n  }\r\n\r\n  window.debugPanelV4Top3ShareQaV1=function(){\r\n    var m=currentModel(),O=owner(),audit=null;\r\n    try{audit=O&&typeof O.visualAudit==='function'?O.visualAudit():null}catch(_){}\r\n    var result={\r\n      ok:!!(\r\n        m&&m.items.length===3&&\r\n        m.items.every(function(x){return x.key&&finite(x.purposeScore)&&finite(x.fpScore)&&finite(x.roleScore)})&&\r\n        m.url.indexOf('https://www.canfoto.com'+CANONICAL_PATH+'?')===0\r\n      ),\r\n      version:VERSION,\r\n      owner:'GDX_PANEL_LED_V4_UI_RECO_15_R11_R5',\r\n      ownerReady:!!O,\r\n      r11CardCount:liveCards().length,\r\n      visualAuditCardCount:audit&&finite(audit.cardCount)?Number(audit.cardCount):null,\r\n      purposeKey:m?m.purposeKey:'',\r\n      subPurposeKey:m?m.subPurposeKey:'',\r\n      purposeLabel:m?m.purposeLabel:'',\r\n      noraSummary:m?m.nora:'',\r\n      top3Count:m?m.items.length:0,\r\n      ranks:m?m.items.map(function(x){return x.rank}):[],\r\n      offerKeys:m?m.items.map(function(x){return x.key}):[],\r\n      titles:m?m.items.map(function(x){return x.title}):[],\r\n      scoreTriples:m?m.items.map(function(x){return[x.purposeScore,x.fpScore,x.roleScore]}):[],\r\n      prices:m?m.items.map(function(x){return x.price}):[],\r\n      stockStates:m?m.items.map(function(x){return x.stock}):[],\r\n      deepLinkUrl:m?m.url:'',\r\n      canonicalRoutePass:!!(m&&m.url.indexOf('https://www.canfoto.com'+CANONICAL_PATH+'?')===0),\r\n      mountExists:!!getMount(),\r\n      panelPolicy:'SEALED_CORE_NO_TOUCH',\r\n      note:'D02.1 reads the actual visible R11 Top3 owner. Scores come from the owner visualAudit rows with DOM fallback; ranking is never recomputed.'\r\n    };\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4Top3SharePreviewQaV1=function(){\r\n    var m=getMount(),p=LAST.prepared;\r\n    var result={\r\n      ok:!!(\r\n        m&&p&&p.ok&&p.model&&p.model.items&&p.model.items.length===3&&\r\n        m.querySelector('[data-preview] img')&&m.querySelector('[data-prepare]')&&\r\n        m.querySelector('[data-share]')&&m.querySelector('[data-download]')&&\r\n        m.querySelector('[data-close]')&&!m.querySelector('[data-copy]')&&\r\n        m.querySelector('[data-prepare]').hidden===true&&\r\n        m.querySelector('[data-share]').hidden===false&&\r\n        m.querySelector('[data-download]').hidden===false&&\r\n        m.querySelector('[data-close]').hidden===false\r\n      ),\r\n      version:VERSION,\r\n      previewMounted:!!(m&&m.querySelector('[data-preview] img')),\r\n      shareNowAvailable:!!(m&&m.querySelector('[data-share]')&&!m.querySelector('[data-share]').hidden),\r\n      downloadAvailable:!!(m&&m.querySelector('[data-download]')&&!m.querySelector('[data-download]').hidden),\r\n      closeAvailable:!!(m&&m.querySelector('[data-close]')&&!m.querySelector('[data-close]').hidden),\r\n      closeUsesX:!!(m&&m.querySelector('[data-close]')&&clean(m.querySelector('[data-close]').textContent)==='\u00D7'),\r\n      prepareHiddenWhenPrepared:!!(m&&m.querySelector('[data-prepare]')&&m.querySelector('[data-prepare]').hidden),\r\n      copyLinkRemoved:!!(m&&!m.querySelector('[data-copy]')),\r\n      primaryActionCount:m?Array.prototype.slice.call(m.querySelectorAll('[data-actions] button')).filter(function(b){return !b.hidden}).length:0,\r\n      totalVisibleControlCount:m?Array.prototype.slice.call(m.querySelectorAll('button')).filter(function(b){return !b.hidden}).length:0,\r\n      preparedState:m?m.getAttribute('data-prepared'):'',\r\n      top3Count:p&&p.model&&p.model.items?p.model.items.length:0,\r\n      deepLinkUrl:p&&p.model?p.model.url:'',\r\n      panelPolicy:'SEALED_CORE_NO_TOUCH'\r\n    };\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.debugNoraUniversalShareLoaderQaV1=function(){\r\n    var el=progressRoot(),theme=universalLoaderTheme('panel');\r\n    var result={\r\n      ok:!!(UNIVERSAL_LOADER_VERSION&&theme&&theme.palette),\r\n      version:UNIVERSAL_LOADER_VERSION,\r\n      engine:'panel',\r\n      theme:theme.theme,\r\n      palette:theme.palette,\r\n      overlayVisible:!!el,\r\n      contextLabel:universalLoaderContext('panel','top3'),\r\n      waveTransformOptimized:!!(document.getElementById('gdxPanelV4Top3DeepLinkProgressStylesV1')&&String(document.getElementById('gdxPanelV4Top3DeepLinkProgressStylesV1').textContent||'').indexOf('transform:scaleY')>-1),\r\n      backdropFilterRemoved:!!(document.getElementById('gdxPanelV4Top3DeepLinkProgressStylesV1')&&String(document.getElementById('gdxPanelV4Top3DeepLinkProgressStylesV1').textContent||'').indexOf('backdrop-filter')===-1),\r\n      note:'Reference implementation for Panel/COB, light/dark and all share kinds. Current live binding is Panel Top3 only.'\r\n    };\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4Top3ShareUiQaV1=function(){\r\n    var m=getMount();\r\n    var prepared=!!(m&&m.getAttribute('data-prepared')==='1');\r\n    var actionButtons=m?Array.prototype.slice.call(m.querySelectorAll('[data-actions] button')).filter(function(b){return !b.hidden}):[];\r\n    var actionLabels=actionButtons.map(function(b){return clean(b.textContent)});\r\n    var close=m?m.querySelector('[data-close]'):null;\r\n    var result={\r\n      ok:!!(\r\n        m&&!m.querySelector('[data-copy]')&&\r\n        (\r\n          (!prepared&&actionLabels.length===1&&actionLabels[0]==='Sonucu Payla\u015F'&&(!close||close.hidden===true))||\r\n          (prepared&&actionLabels.length===2&&actionLabels[0]==='\u015Eimdi Payla\u015F'&&actionLabels[1]==='PNG \u0130ndir'&&close&&close.hidden===false&&clean(close.textContent)==='\u00D7')\r\n        )\r\n      ),\r\n      version:VERSION,\r\n      preparedState:prepared?'1':'0',\r\n      primaryActionCount:actionLabels.length,\r\n      primaryActionLabels:actionLabels,\r\n      closeControlExists:!!close,\r\n      closeControlVisible:!!(close&&!close.hidden),\r\n      closeUsesX:!!(close&&clean(close.textContent)==='\u00D7'),\r\n      copyLinkRemoved:!!(m&&!m.querySelector('[data-copy]')),\r\n      panelTheme:universalLoaderTheme('panel').theme\r\n    };\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4Top3ShareDeepLinkQaV1=function(){\r\n    var p=parseDeepLink(location.href),a=activeState(),r=LAST.restoreResult;\r\n    var exact=!!(\r\n      p&&a&&p.purposeKey===a.purposeKey&&p.subPurposeKey===a.subPurposeKey&&\r\n      p.offerKeys.length===3&&a.offerKeys.length===3&&\r\n      p.offerKeys.every(function(k,i){return k===a.offerKeys[i]})\r\n    );\r\n    var result={\r\n      ok:!!(p&&a&&exact&&r&&r.ok===true&&r.code==='TOP3_DEEPLINK_RESTORED'),\r\n      version:VERSION,\r\n      locationHasTop3DeepLink:!!p,\r\n      targetPurposeKey:p?p.purposeKey:'',\r\n      activePurposeKey:a?a.purposeKey:'',\r\n      targetSubPurposeKey:p?p.subPurposeKey:'',\r\n      activeSubPurposeKey:a?a.subPurposeKey:'',\r\n      targetOfferKeys:p?p.offerKeys:[],\r\n      activeOfferKeys:a?a.offerKeys:[],\r\n      exactTop3Pass:exact,\r\n      finalStablePass:!!(r&&r.finalStable===true),\r\n      routeGatePass:!!(r&&r.routeGate&&r.routeGate.ok===true),\r\n      openIntentConsumed:!!(r&&r.routeGate&&r.routeGate.openIntentConsumed===true),\r\n      restoreAttempts:r&&Number.isFinite(Number(r.attempts))?Number(r.attempts):0,\r\n      elapsedMs:r&&Number.isFinite(Number(r.elapsedMs))?Number(r.elapsedMs):null,\r\n      restoreResult:r||null,\r\n      panelPolicy:'SEALED_CORE_NO_TOUCH'\r\n    };\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4Top3ProgressQaV1=function(){\r\n    var p=LAST.progress||{},el=progressRoot();\r\n    var result={\r\n      ok:!!(p.startedAt&&(p.completed===true||p.failed===true||p.active===true)),\r\n      version:VERSION,\r\n      deeplinkMode:!!parseDeepLink(location.href),\r\n      active:!!p.active,\r\n      completed:!!p.completed,\r\n      failed:!!p.failed,\r\n      percent:Number(p.percent||0),\r\n      label:clean(p.label),\r\n      overlayCurrentlyVisible:!!el,\r\n      visualMode:'WAVE_LOADER',\r\n      waveBarCount:el?el.querySelectorAll('[data-progress-wave] span').length:0,\r\n      waveAnimationPresent:!!(document.getElementById('gdxPanelV4Top3DeepLinkProgressStylesV1')&&String(document.getElementById('gdxPanelV4Top3DeepLinkProgressStylesV1').textContent||'').indexOf('gdxPanelTop3Wave')>-1),\r\n      startedAt:Number(p.startedAt||0),\r\n      endedAt:Number(p.endedAt||0),\r\n      durationMs:p.startedAt&&p.endedAt?Math.max(0,p.endedAt-p.startedAt):null,\r\n      restoreResult:LAST.restoreResult||null,\r\n      note:'Progress guard is visual-only. It does not alter Panel ranking, scoring, R11 output or R28 selection logic.'\r\n    };\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4Top3RouteStabilityQaV1=function(){\r\n    var p=parseDeepLink(location.href),r=LAST.restoreResult,a=activeState();\r\n    var result={\r\n      ok:!!(\r\n        p&&r&&r.ok===true&&r.code==='TOP3_DEEPLINK_RESTORED'&&\r\n        r.finalStable===true&&r.routeGate&&r.routeGate.ok===true&&\r\n        a&&p.purposeKey===a.purposeKey&&p.subPurposeKey===a.subPurposeKey&&\r\n        p.offerKeys.length===3&&a.offerKeys.length===3&&\r\n        p.offerKeys.every(function(k,i){return k===a.offerKeys[i]})\r\n      ),\r\n      version:VERSION,\r\n      currentGdxOpen:currentOpenIntent(),\r\n      targetPurposeKey:p?p.purposeKey:'',\r\n      activePurposeKey:a?a.purposeKey:'',\r\n      targetSubPurposeKey:p?p.subPurposeKey:'',\r\n      activeSubPurposeKey:a?a.subPurposeKey:'',\r\n      exactTop3Now:!!(p&&a&&p.offerKeys.every(function(k,i){return k===a.offerKeys[i]})),\r\n      routeGate:r?r.routeGate:null,\r\n      restoreAttempts:r&&Number.isFinite(Number(r.attempts))?Number(r.attempts):0,\r\n      recoveryAttempted:!!(r&&r.recoveryAttempted),\r\n      finalStable:!!(r&&r.finalStable),\r\n      elapsedMs:r&&Number.isFinite(Number(r.elapsedMs))?Number(r.elapsedMs):null,\r\n      restoreResult:r||null,\r\n      note:'D02.3 preserves gdx_open, waits for the generic opener, then waits for the exact ordered R11 Top3 instead of accepting stale three-card DOM as ready.'\r\n    };\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.GDX_PANEL_LED_V4_R11_TOP3_SHARE={\r\n    ready:true,\r\n    version:VERSION,\r\n    refresh:mount,\r\n    getModel:currentModel,\r\n    prepare:renderPng,\r\n    buildDeepLink:buildDeepLink,\r\n    buildQrDeepLink:buildQrDeepLink,\r\n    parseDeepLink:parseDeepLink,\r\n    restoreDeepLink:restoreDeepLink,\r\n    getLastPrepared:function(){return LAST.prepared},\r\n    getLastRestore:function(){return LAST.restoreResult}\r\n  };\r\n\r\n  function boot(){\r\n    mount();\r\n    if(document.body){\r\n      observer=new MutationObserver(scheduleRefresh);\r\n      observer.observe(document.body,{subtree:true,childList:true})\r\n    }\r\n    window.addEventListener('gdx-panel-v4-r28-selection-change',scheduleRefresh);\r\n    window.addEventListener('canfoto:panel-r11-recommendation-rendered',scheduleRefresh);\r\n    document.addEventListener('gdx-panel-v4-result-view',scheduleRefresh);\r\n    [120,320,800,1600,2600].forEach(function(delay){setTimeout(mount,delay)});\r\n    if(parseDeepLink(location.href)){\r\n      showDeepLinkProgress();\r\n      updateDeepLinkProgress(8,'Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 okunuyor\u2026','Ba\u015Flat\u0131l\u0131yor');\r\n      restoreDeepLink(location.href).then(function(){scheduleRefresh()})\r\n    }\r\n  }\r\n\r\n  if(document.readyState==='loading'){\r\n    document.addEventListener('DOMContentLoaded',boot,{once:true})\r\n  }else{\r\n    boot()\r\n  }\r\n})(window,document);\r\n\r\n/* PANEL LED V4 \u2014 R36-H R8-01 customer-copy cleanup marker */\r\nwindow.GDX_PANEL_V4_R36_H_R8_01_SHARE_COPY = Object.freeze({\r\n  phase: \"PANEL-V4-R36-H-R8-01-CUSTOMER-COPY-REDUNDANCY-CLEANUP\",\r\n  initialCta: \"Sonucu Payla\u015F\",\r\n  brandSignature: \"CAN FOTO | EST. 1994\"\r\n});\r\n\r\n\r\n/* =========================================================\r\n   NORA UNIVERSAL SHARE LOADER V1\r\n   UNIVERSAL-LOADER-01 \u2014 PANEL WHY + SETUP\r\n   Visual/UX guard only. No ranking/scoring/selection mutation.\r\n   Top3 keeps its sealed D02.8 implementation in this phase.\r\n   ========================================================= */\r\n(function(window,document){\r\n  'use strict';\r\n  if(window.GDX_NORA_UNIVERSAL_SHARE_LOADER_V1) return;\r\n\r\n  var VERSION='PANEL-UNIVERSAL-LOADER-01-WHY-SETUP-V1';\r\n  var STYLE_ID='gdxNoraUniversalShareLoaderStylesV1';\r\n  var ATTR='data-gdx-nora-universal-share-loader';\r\n  var states={};\r\n\r\n  var PALETTES={\r\n    panel:{\r\n      dark:{\r\n        overlay:'#030b14',card:'#07131c',card2:'#102429',border:'#25d6e3',\r\n        text:'#f7fbfa',muted:'#cbd9d6',meta:'#91aaa5',nora:'#67f3da',\r\n        accent:'#2bd8e5',accent2:'#16b5a6',track:'#173038',\r\n        success:'#21cf70',warning:'#d9a51d'\r\n      },\r\n      light:{\r\n        overlay:'#eeeae2',card:'#fffefd',card2:'#f6f0e8',border:'#bcae9d',\r\n        text:'#1f2933',muted:'#53606b',meta:'#78838d',nora:'#0f766e',\r\n        accent:'#0f766e',accent2:'#2b6f8a',track:'#e9f2ef',\r\n        success:'#2f855a',warning:'#a66c0d'\r\n      }\r\n    },\r\n    cob:{\r\n      dark:{\r\n        overlay:'#030b14',card:'#0b1720',card2:'#132530',border:'#ff9b35',\r\n        text:'#f5f9fb',muted:'#bdced7',meta:'#8fa9b7',nora:'#67f3da',\r\n        accent:'#ff9b35',accent2:'#ff7a3d',track:'#19303d',\r\n        success:'#69d59b',warning:'#ffc56b'\r\n      },\r\n      light:{\r\n        overlay:'#eef4f7',card:'#ffffff',card2:'#f8fbfc',border:'#bfd0dc',\r\n        text:'#102a43',muted:'#486581',meta:'#6b8292',nora:'#006d96',\r\n        accent:'#f15a24',accent2:'#006d96',track:'#dbe7ed',\r\n        success:'#177245',warning:'#9a5b00'\r\n      }\r\n    }\r\n  };\r\n\r\n  function clean(v){return String(v==null?'':v).replace(/\\s+/g,' ').trim()}\r\n  function esc(v){return String(v==null?'':v).replace(/[&<>\"']/g,function(c){return{'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#39;'}[c]})}\r\n\r\n  function resolveTheme(engine){\r\n    engine=clean(engine||'panel').toLowerCase()==='cob'?'cob':'panel';\r\n    var theme='dark';\r\n    if(engine==='panel'){\r\n      var root=document.getElementById('gdx-panel-led-v4-root');\r\n      theme=root&&clean(root.getAttribute('data-gdx-panel-theme')).toLowerCase()==='light'?'light':'dark';\r\n    }else{\r\n      var cr=document.querySelector('.gdx-cob-v5');\r\n      var raw=cr?clean(cr.getAttribute('data-gdx-cob-v5-theme')).toLowerCase():'';\r\n      if(raw==='light')theme='light';\r\n      else if(raw==='system'&&window.matchMedia&&window.matchMedia('(prefers-color-scheme: light)').matches)theme='light';\r\n    }\r\n    return{engine:engine,theme:theme,palette:PALETTES[engine][theme]}\r\n  }\r\n\r\n  function kindLabel(kind){\r\n    return {\r\n      top3:'TOP3 \u00D6NER\u0130',\r\n      why:'NEDEN BU \u00DCR\u00DCN?',\r\n      setup:'KURULUM',\r\n      compare:'KAR\u015EILA\u015ETIRMA',\r\n      visual:'\u00DCR\u00DCN G\u00D6RSEL\u0130'\r\n    }[clean(kind).toLowerCase()]||'PAYLA\u015EILAN SONU\u00C7';\r\n  }\r\n\r\n  function engineLabel(engine){return clean(engine).toLowerCase()==='cob'?'COB LED':'PANEL LED'}\r\n\r\n  function ensureStyles(){\r\n    if(document.getElementById(STYLE_ID))return;\r\n    var st=document.createElement('style');\r\n    st.id=STYLE_ID;\r\n    st.textContent=''\r\n      +'.gdx-nora-share-loader{position:fixed;inset:0;z-index:2147483600;display:grid;place-items:center;background:var(--nora-loader-overlay,#030b14);padding:22px;font-family:Arial,Helvetica,sans-serif;opacity:1}'\r\n      +'.gdx-nora-share-loader__card{width:min(560px,calc(100vw - 36px));border:1px solid var(--nora-loader-border,#25d6e3);border-radius:24px;background:linear-gradient(145deg,var(--nora-loader-card,#07131c),var(--nora-loader-card2,#102429));color:var(--nora-loader-text,#f7fbfa);box-shadow:0 18px 56px rgba(0,0,0,.28);padding:24px}'\r\n      +'.gdx-nora-share-loader__eyebrow{font:900 12px/1.2 Arial,sans-serif;letter-spacing:.13em;text-transform:uppercase;color:var(--nora-loader-nora,#67f3da)}'\r\n      +'.gdx-nora-share-loader__context{display:inline-flex;margin-top:10px;padding:6px 10px;border:1px solid color-mix(in srgb,var(--nora-loader-accent) 44%,transparent);border-radius:999px;background:color-mix(in srgb,var(--nora-loader-accent) 10%,transparent);color:var(--nora-loader-accent);font:900 10px/1 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}'\r\n      +'.gdx-nora-share-loader__title{margin:12px 0 0;font:900 24px/1.12 Arial,sans-serif;color:var(--nora-loader-text,#fff)}'\r\n      +'.gdx-nora-share-loader__label{margin:10px 0 0;font:700 14px/1.45 Arial,sans-serif;color:var(--nora-loader-muted,#cbd9d6);min-height:40px}'\r\n      +'.gdx-nora-share-loader__wave{height:42px;display:flex;align-items:stretch;gap:7px;margin-top:18px;overflow:hidden}'\r\n      +'.gdx-nora-share-loader__wave span{flex:1;min-width:0;height:100%;border-radius:999px;background:linear-gradient(180deg,var(--nora-loader-nora),var(--nora-loader-accent) 52%,var(--nora-loader-accent2));opacity:.72;transform:scaleY(.18);transform-origin:center bottom;will-change:transform,opacity;animation:gdxNoraUniversalShareWave 1.02s ease-in-out infinite alternate}'\r\n      +'.gdx-nora-share-loader__wave span:nth-child(2){animation-delay:.09s}.gdx-nora-share-loader__wave span:nth-child(3){animation-delay:.18s}.gdx-nora-share-loader__wave span:nth-child(4){animation-delay:.27s}.gdx-nora-share-loader__wave span:nth-child(5){animation-delay:.36s}.gdx-nora-share-loader__wave span:nth-child(6){animation-delay:.45s}'\r\n      +'@keyframes gdxNoraUniversalShareWave{0%{transform:scaleY(.18);opacity:.48}55%{transform:scaleY(.72);opacity:.82}100%{transform:scaleY(1);opacity:1}}'\r\n      +'.gdx-nora-share-loader__track{height:9px;margin-top:12px;border-radius:999px;overflow:hidden;background:var(--nora-loader-track,#173038);border:1px solid color-mix(in srgb,var(--nora-loader-border) 28%,transparent)}'\r\n      +'.gdx-nora-share-loader__bar{height:100%;width:8%;border-radius:inherit;background:linear-gradient(90deg,var(--nora-loader-accent2),var(--nora-loader-accent),var(--nora-loader-nora));transition:width .34s cubic-bezier(.2,.8,.2,1)}'\r\n      +'.gdx-nora-share-loader__meta{display:flex;justify-content:space-between;gap:12px;margin-top:9px;font:800 11px/1.2 Arial,sans-serif;color:var(--nora-loader-meta,#91aaa5)}'\r\n      +'.gdx-nora-share-loader[data-state=\"done\"] .gdx-nora-share-loader__bar{background:linear-gradient(90deg,var(--nora-loader-success),var(--nora-loader-nora))}'\r\n      +'.gdx-nora-share-loader[data-state=\"done\"] .gdx-nora-share-loader__wave span{animation-duration:.42s;background:linear-gradient(180deg,var(--nora-loader-nora),var(--nora-loader-success))}'\r\n      +'.gdx-nora-share-loader[data-state=\"fail\"] .gdx-nora-share-loader__bar{background:var(--nora-loader-warning)}'\r\n      +'.gdx-nora-share-loader[data-state=\"fail\"] .gdx-nora-share-loader__wave span{background:linear-gradient(180deg,var(--nora-loader-warning),var(--nora-loader-accent2));animation-duration:1.35s}'\r\n      +'.gdx-nora-share-loader.is-leaving{opacity:0;transition:opacity .22s ease}'\r\n      +'@media(max-width:760px){.gdx-nora-share-loader{padding:14px}.gdx-nora-share-loader__card{width:100%;padding:22px 18px;border-radius:22px}.gdx-nora-share-loader__title{font-size:22px}.gdx-nora-share-loader__label{font-size:14px;min-height:44px}.gdx-nora-share-loader__wave{height:46px;gap:6px;margin-top:17px}.gdx-nora-share-loader__track{height:10px;margin-top:10px}}'\r\n      +'@media(prefers-reduced-motion:reduce){.gdx-nora-share-loader__wave span{animation-duration:2.2s}.gdx-nora-share-loader__bar{transition-duration:.01ms}}';\r\n    document.head.appendChild(st);\r\n  }\r\n\r\n  function applyPalette(el,engine){\r\n    if(!el)return resolveTheme(engine);\r\n    var t=resolveTheme(engine),p=t.palette;\r\n    el.setAttribute('data-engine',t.engine);\r\n    el.setAttribute('data-theme',t.theme);\r\n    el.style.setProperty('--nora-loader-overlay',p.overlay);\r\n    el.style.setProperty('--nora-loader-card',p.card);\r\n    el.style.setProperty('--nora-loader-card2',p.card2);\r\n    el.style.setProperty('--nora-loader-border',p.border);\r\n    el.style.setProperty('--nora-loader-text',p.text);\r\n    el.style.setProperty('--nora-loader-muted',p.muted);\r\n    el.style.setProperty('--nora-loader-meta',p.meta);\r\n    el.style.setProperty('--nora-loader-nora',p.nora);\r\n    el.style.setProperty('--nora-loader-accent',p.accent);\r\n    el.style.setProperty('--nora-loader-accent2',p.accent2);\r\n    el.style.setProperty('--nora-loader-track',p.track);\r\n    el.style.setProperty('--nora-loader-success',p.success);\r\n    el.style.setProperty('--nora-loader-warning',p.warning);\r\n    return t;\r\n  }\r\n\r\n  function stageForPercent(p){\r\n    if(p<18)return['Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 okunuyor\u2026','Ba\u015Flat\u0131l\u0131yor'];\r\n    if(p<36)return['Se\u00E7im motoru haz\u0131rlan\u0131yor\u2026','Motor haz\u0131rlan\u0131yor'];\r\n    if(p<54)return['Payla\u015F\u0131lan se\u00E7imler y\u00FCkleniyor\u2026','Se\u00E7imler y\u00FCkleniyor'];\r\n    if(p<70)return['\u00DCr\u00FCn ve karar bilgileri e\u015Fle\u015Ftiriliyor\u2026','Veriler e\u015Fle\u015Ftiriliyor'];\r\n    if(p<84)return['Hedef sonu\u00E7 do\u011Frulan\u0131yor\u2026','Sonu\u00E7 do\u011Frulan\u0131yor'];\r\n    if(p<92)return['Sonu\u00E7 ekrana yerle\u015Ftiriliyor\u2026','Son ekran haz\u0131rlan\u0131yor'];\r\n    return['Son dokunu\u015Flar tamamlan\u0131yor\u2026','Haz\u0131rlan\u0131yor'];\r\n  }\r\n\r\n  function updateDom(token,p,label,step){\r\n    var s=states[token],el=s&&s.el;\r\n    if(!s||!el)return;\r\n    applyPalette(el,s.engine);\r\n    var pct=Math.max(8,Math.min(94,Math.round(Number(p)||8)));\r\n    var bar=el.querySelector('[data-loader-bar]');\r\n    var lab=el.querySelector('[data-loader-label]');\r\n    var stp=el.querySelector('[data-loader-step]');\r\n    var num=el.querySelector('[data-loader-percent]');\r\n    if(bar)bar.style.width=pct+'%';\r\n    if(lab)lab.textContent=clean(label);\r\n    if(stp)stp.textContent=clean(step);\r\n    if(num)num.textContent=pct+'%';\r\n    s.percent=pct;s.label=clean(label);s.step=clean(step);\r\n  }\r\n\r\n  function tick(token){\r\n    var s=states[token];\r\n    if(!s||!s.active)return;\r\n    var elapsed=Date.now()-s.startedAt;\r\n    /* Smooth perceived progress; never claims completion before actual restore. */\r\n    var pct=8+86*(1-Math.exp(-elapsed/5600));\r\n    pct=Math.min(94,pct);\r\n    if(pct<s.percent)pct=s.percent;\r\n    var stage=stageForPercent(pct);\r\n    updateDom(token,pct,stage[0],stage[1]);\r\n    s.timer=setTimeout(function(){tick(token)},360);\r\n  }\r\n\r\n  function begin(engine,kind){\r\n    ensureStyles();\r\n    engine=clean(engine||'panel').toLowerCase()==='cob'?'cob':'panel';\r\n    kind=clean(kind||'top3').toLowerCase();\r\n    var token=engine+'-'+kind+'-'+Date.now()+'-'+Math.random().toString(36).slice(2,7);\r\n\r\n    var old=document.querySelector('['+ATTR+'=\"1\"]');\r\n    if(old&&old.parentNode)old.parentNode.removeChild(old);\r\n\r\n    var el=document.createElement('div');\r\n    el.className='gdx-nora-share-loader';\r\n    el.setAttribute(ATTR,'1');\r\n    el.setAttribute('data-loader-version',VERSION);\r\n    el.setAttribute('data-loader-kind',kind);\r\n    el.setAttribute('data-state','loading');\r\n    el.innerHTML=''\r\n      +'<div class=\"gdx-nora-share-loader__card\" role=\"status\" aria-live=\"polite\">'\r\n      +'<div class=\"gdx-nora-share-loader__eyebrow\">NORA \u00B7 PAYLA\u015EILAN SONU\u00C7</div>'\r\n      +'<div class=\"gdx-nora-share-loader__context\">'+esc(engineLabel(engine)+' \u00B7 '+kindLabel(kind))+'</div>'\r\n      +'<div class=\"gdx-nora-share-loader__title\">Payla\u015F\u0131lan sonu\u00E7 haz\u0131rlan\u0131yor</div>'\r\n      +'<div class=\"gdx-nora-share-loader__label\" data-loader-label>Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 okunuyor\u2026</div>'\r\n      +'<div class=\"gdx-nora-share-loader__wave\" data-loader-wave aria-hidden=\"true\"><span></span><span></span><span></span><span></span><span></span><span></span></div>'\r\n      +'<div class=\"gdx-nora-share-loader__track\" aria-hidden=\"true\"><div class=\"gdx-nora-share-loader__bar\" data-loader-bar></div></div>'\r\n      +'<div class=\"gdx-nora-share-loader__meta\"><span data-loader-step>Ba\u015Flat\u0131l\u0131yor</span><span data-loader-percent>8%</span></div>'\r\n      +'</div>';\r\n\r\n    applyPalette(el,engine);\r\n    document.body.appendChild(el);\r\n\r\n    states[token]={\r\n      token:token,engine:engine,kind:kind,active:true,completed:false,failed:false,\r\n      percent:8,label:'Payla\u015F\u0131m ba\u011Flant\u0131s\u0131 okunuyor\u2026',step:'Ba\u015Flat\u0131l\u0131yor',\r\n      startedAt:Date.now(),endedAt:0,durationMs:null,el:el,timer:null,restoreResult:null\r\n    };\r\n    tick(token);\r\n    return token;\r\n  }\r\n\r\n  function stage(token,percent,label,step){\r\n    var s=states[token];\r\n    if(!s||!s.active)return false;\r\n    updateDom(token,percent,label,step);\r\n    return true;\r\n  }\r\n\r\n  function finish(token,success,restoreResult){\r\n    var s=states[token];\r\n    if(!s)return false;\r\n    clearTimeout(s.timer);\r\n    s.active=false;s.completed=!!success;s.failed=!success;s.endedAt=Date.now();\r\n    s.durationMs=Math.max(0,s.endedAt-s.startedAt);s.restoreResult=restoreResult||null;\r\n    var el=s.el;\r\n    if(!el)return true;\r\n    applyPalette(el,s.engine);\r\n    el.setAttribute('data-state',success?'done':'fail');\r\n    var bar=el.querySelector('[data-loader-bar]');\r\n    var lab=el.querySelector('[data-loader-label]');\r\n    var stp=el.querySelector('[data-loader-step]');\r\n    var num=el.querySelector('[data-loader-percent]');\r\n    if(bar)bar.style.width='100%';\r\n    if(lab)lab.textContent=success?'Sonu\u00E7 haz\u0131r.':'Payla\u015F\u0131lan sonu\u00E7 a\u00E7\u0131lamad\u0131.';\r\n    if(stp)stp.textContent=success?'Tamamland\u0131':'Tekrar deneyebilirsiniz';\r\n    if(num)num.textContent='100%';\r\n    s.percent=100;s.label=success?'Sonu\u00E7 haz\u0131r.':'Payla\u015F\u0131lan sonu\u00E7 a\u00E7\u0131lamad\u0131.';\r\n    setTimeout(function(){\r\n      if(!el||!el.parentNode)return;\r\n      el.classList.add('is-leaving');\r\n      setTimeout(function(){if(el&&el.parentNode)el.parentNode.removeChild(el);s.el=null},240);\r\n    },success?170:1200);\r\n    return true;\r\n  }\r\n\r\n  function current(kind){\r\n    kind=clean(kind).toLowerCase();\r\n    var rows=Object.keys(states).map(function(k){return states[k]}).filter(function(s){return !kind||s.kind===kind});\r\n    rows.sort(function(a,b){return b.startedAt-a.startedAt});\r\n    return rows[0]||null;\r\n  }\r\n\r\n  function qa(kind){\r\n    var s=current(kind),el=s&&s.el;\r\n    var theme=s?resolveTheme(s.engine):resolveTheme('panel');\r\n    var result={\r\n      ok:!!(s&&s.startedAt&&(s.active||s.completed||s.failed)),\r\n      version:VERSION,\r\n      engine:s?s.engine:'',\r\n      kind:s?s.kind:clean(kind),\r\n      theme:theme.theme,\r\n      active:!!(s&&s.active),\r\n      completed:!!(s&&s.completed),\r\n      failed:!!(s&&s.failed),\r\n      percent:s?Number(s.percent||0):0,\r\n      label:s?clean(s.label):'',\r\n      overlayCurrentlyVisible:!!el,\r\n      waveBarCount:el?el.querySelectorAll('[data-loader-wave] span').length:0,\r\n      waveAnimationPresent:!!(document.getElementById(STYLE_ID)&&String(document.getElementById(STYLE_ID).textContent||'').indexOf('gdxNoraUniversalShareWave')>-1),\r\n      startedAt:s?Number(s.startedAt||0):0,\r\n      endedAt:s?Number(s.endedAt||0):0,\r\n      durationMs:s?s.durationMs:null,\r\n      restoreResult:s?s.restoreResult:null,\r\n      note:'Universal loader is visual-only. It does not alter Panel ranking, scoring, R11/R28 state, setup truth or WHY content.'\r\n    };\r\n    console.log(result);return result;\r\n  }\r\n\r\n  window.GDX_NORA_UNIVERSAL_SHARE_LOADER_V1={\r\n    ready:true,version:VERSION,begin:begin,stage:stage,finish:finish,qa:qa,current:current,\r\n    resolveTheme:resolveTheme\r\n  };\r\n})(window,document);\r\n\r\n/* =========================================================\r\n   PANEL LED V4 \u2014 FAZ07 UNIVERSAL SHARE LAYER V1.1 (A+B)\r\n   Fixes: exact sealed-modal selector, share-layer mount only,\r\n   state-aware QA, exact setup rows + existing schematic capture.\r\n   ========================================================= */\r\n(function (window, document) {\r\n  'use strict';\r\n  if (window.GDX_PANEL_LED_V4_UNIVERSAL_SHARE_SETUP_READY_R17G_V5) return;\r\n  window.GDX_PANEL_LED_V4_UNIVERSAL_SHARE_SETUP_READY_R17G_V5 = true;\r\n  var VERSION='CANFOTO-FS1R-R5.3-PANEL-SETUP-SHARE-READINESS-V1', CARD_W=1080, CARD_H=1440;\r\n  var LAST_STATE={prepared:null,lastModel:null,surfaceEverMounted:false}; var observer=null,refreshTimer=null;\r\n  function clean(v){return String(v==null?'':v).replace(/\\s+/g,' ').trim()}\r\n  function esc(v){return String(v==null?'':v).replace(/[&<>\"']/g,function(c){return{'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#39;'}[c]})}\r\n  function visible(el){if(!el||!(el instanceof Element))return false;var s=getComputedStyle(el);if(s.display==='none'||s.visibility==='hidden'||Number(s.opacity||1)===0)return false;var r=el.getBoundingClientRect();return r.width>120&&r.height>120}\r\n  function modalRoot(allowHidden){var exact=[].slice.call(document.querySelectorAll('[data-gdx-r11-modal=\"1\"][data-gdx-r11-modal-type=\"setup\"]'));for(var i=0;i<exact.length;i+=1){if(visible(exact[i]))return exact[i]}return allowHidden&&exact.length?exact[exact.length-1]:null}\r\n  var SETUP_PARAM='gdx_share', KEY_PARAM='gdx_panel_key', PURPOSE_PARAM='gdx_panel_purpose', SUB_PARAM='gdx_panel_sub', LANE_PARAM='gdx_panel_lane', OPEN_PARAM='gdx_open', VARIANT_PARAM='gdx_panel_setup_variant', ALT_MODE_PARAM='gdx_panel_alt_mode';\r\n  var PILOT_PARAM='gdx_3light_pilot', LEVEL_PARAM='gdx_panel_setup_level', ADVANCED_LEVEL='advanced_3_light';\r\n\r\n  function nlightActiveSetupKey(){\r\n    try{var U=window.CANFOTO_PANEL_ADVANCED_VARIANT_UI_R6||null,s=U&&typeof U.getState==='function'?U.getState():null;return clean(s&&s.activeSetupKey)||'three_light_product_background'}catch(_){return 'three_light_product_background'}\r\n  }\r\n  function nlightContext(){\r\n    try{var C=window.CANFOTO_PANEL_ADVANCED_CONTEXT_R6||null,key=nlightActiveSetupKey();return C&&typeof C.resolve==='function'?C.resolve(key):null}catch(_){return null}\r\n  }\r\n  function nlightScene(){\r\n    try{var A=window.CANFOTO_PANEL_NLIGHT_V27_ADAPTER_R6||null,key=nlightActiveSetupKey();return A&&typeof A.get==='function'?A.get(key):null}catch(_){return null}\r\n  }\r\n\r\n  function nlightPilotState(){\r\n    try{\r\n      var L=window.CANFOTO_PANEL_NLIGHT_LIVE_PILOT_R6||null;\r\n      return L&&typeof L.getState==='function'?L.getState():null\r\n    }catch(_){return null}\r\n  }\r\n\r\n  function nlightLiveSvg(){\r\n    var svg=document.querySelector('svg[data-r17c4-nlight-live=\"1\"]');\r\n    return svg&&visible(svg)?svg:null\r\n  }\r\n\r\n  function nlightPilotCurrent(){\r\n    var ctx=nlightContext(),scene=nlightScene(),state=nlightPilotState(),svg=nlightLiveSvg();\r\n    if(!ctx||ctx.ok!==true||!scene||scene.ok!==true||!state||state.enabled!==true||!svg)return null;\r\n    var host=clean(state.lastHostProductHandle),active=clean(scene.activeProductHandle);\r\n    var setup=clean(svg.getAttribute('data-r17c4-setup-key'));\r\n    if(!host||!active||host!==active||setup!==clean(scene.setupKey))return null;\r\n    return{context:ctx,scene:scene,state:state,svg:svg}\r\n  }\r\n\r\n  function selectionState(){try{return window.GDX_PANEL_V4_R28_SELECTION_STATE||((typeof window.getPanelV4R28SelectionState==='function')?window.getPanelV4R28SelectionState():null)||null}catch(_){return null}}\r\n  function productKey(root,title){\r\n    var key='';\r\n    try{\r\n      var nora=root&&root.querySelector('[data-gdx-panel-r29-r5-product]');\r\n      key=clean(nora&&nora.getAttribute('data-gdx-panel-r29-r5-product'));\r\n      if(key)return key\r\n    }catch(_){}\r\n    try{\r\n      var setupCtx=window.GDX_PANEL_V4_R29_SETUP_NORA_CONTEXT||null;\r\n      key=clean(setupCtx&&setupCtx.productKey);\r\n      if(key)return key\r\n    }catch(_){}\r\n    try{\r\n      var np=nlightPilotCurrent();\r\n      key=clean(np&&np.scene&&np.scene.activeProductHandle)||clean(np&&np.context&&np.context.activeProductHandle);\r\n      if(key)return key\r\n    }catch(_){}\r\n    try{\r\n      var ctx=nlightContext();\r\n      key=clean(ctx&&ctx.activeProductHandle);\r\n      if(key)return key\r\n    }catch(_){}\r\n    var cards=[].slice.call(document.querySelectorAll('[data-gdx-r11-card]'));\r\n    var hit=cards.find(function(card){var h=card.querySelector('h4');return clean(h&&h.textContent)===clean(title)});\r\n    return clean(hit&&hit.getAttribute('data-gdx-r11-card'))\r\n  }\r\n  function validSetupLane(value){\r\n    value=clean(value);\r\n    return value==='BARE_LIGHT'||value==='SINGLE_READY_SET'\r\n  }\r\n  function canonicalPool(){\r\n    return window.GDX_PANEL_LED_V4_ETAP2_R2B_CANONICAL_POOL||null\r\n  }\r\n  function purchaseLaneApi(){\r\n    return window.GDX_PANEL_V4_ETAP2_PURCHASE_LANE||null\r\n  }\r\n  function setupPurchaseLane(key){\r\n    key=clean(key);\r\n    var lane='';\r\n    try{\r\n      var pool=canonicalPool();\r\n      lane=pool&&typeof pool.getLane==='function'?clean(pool.getLane(key)):'';\r\n      if(validSetupLane(lane))return lane\r\n    }catch(_){}\r\n    try{\r\n      var api=purchaseLaneApi();\r\n      lane=api&&typeof api.getCommittedLane==='function'?clean(api.getCommittedLane()):'';\r\n      if(validSetupLane(lane))return lane\r\n    }catch(_){}\r\n    try{\r\n      var np=nlightPilotCurrent();\r\n      var assignments=np&&np.scene&&Array.isArray(np.scene.assignments)?np.scene.assignments:[];\r\n      for(var i=0;i<assignments.length;i+=1){\r\n        if(clean(assignments[i]&&assignments[i].productHandle)===key){\r\n          lane=clean(assignments[i]&&assignments[i].lane);\r\n          if(validSetupLane(lane))return lane\r\n        }\r\n      }\r\n    }catch(_){}\r\n    return''\r\n  }\r\n  function committedSetupLane(){\r\n    try{\r\n      var api=purchaseLaneApi();\r\n      var lane=api&&typeof api.getCommittedLane==='function'?clean(api.getCommittedLane()):'';\r\n      if(validSetupLane(lane))return lane\r\n    }catch(_){}\r\n    try{\r\n      var st=window.GDX_PANEL_V4_ETAP2_PURCHASE_LANE_STATE||null;\r\n      var raw=clean(st&&st.lane);\r\n      return validSetupLane(raw)?raw:''\r\n    }catch(_){return''}\r\n  }\r\n  function dispatchPurchaseLane(lane,parsed){\r\n    try{\r\n      window.dispatchEvent(new CustomEvent('canfoto:panel-r2d-recommendation-lane-change',{\r\n        detail:{\r\n          lane:lane,\r\n          purposeKey:clean(parsed&&parsed.purposeKey),\r\n          subPurposeKey:clean(parsed&&parsed.subPurposeKey),\r\n          reason:'setup_share_deeplink_restore'\r\n        }\r\n      }));\r\n      return true\r\n    }catch(_){\r\n      try{\r\n        var ev=document.createEvent('CustomEvent');\r\n        ev.initCustomEvent('canfoto:panel-r2d-recommendation-lane-change',true,true,{\r\n          lane:lane,\r\n          purposeKey:clean(parsed&&parsed.purposeKey),\r\n          subPurposeKey:clean(parsed&&parsed.subPurposeKey),\r\n          reason:'setup_share_deeplink_restore'\r\n        });\r\n        window.dispatchEvent(ev);\r\n        return true\r\n      }catch(__){return false}\r\n    }\r\n  }\r\n  async function restoreSetupPurchaseLane(parsed,mobileMode){\r\n    var lane=validSetupLane(parsed&&parsed.purchaseLane)\r\n      ?clean(parsed.purchaseLane)\r\n      :setupPurchaseLane(parsed&&parsed.key);\r\n    if(!validSetupLane(lane)){\r\n      return{ok:false,code:'SETUP_PURCHASE_LANE_UNRESOLVED',lane:''}\r\n    }\r\n    var prev=committedSetupLane()||'ALL';\r\n    window.GDX_PANEL_V4_ETAP2_PURCHASE_LANE_STATE={\r\n      version:'PANEL-V4-ETAP2-R2D-REV3-PURCHASE-LANE-STATE-V1',\r\n      lane:lane,\r\n      previousLane:prev,\r\n      committedAt:new Date().toISOString(),\r\n      source:'SETUP_SHARE_DEEPLINK_RESTORE',\r\n      purposeKey:clean(parsed&&parsed.purposeKey),\r\n      subPurposeKey:clean(parsed&&parsed.subPurposeKey)\r\n    };\r\n    dispatchPurchaseLane(lane,parsed);\r\n    var ready=await waitFor(function(){\r\n      var now=committedSetupLane();\r\n      return now===lane?now:null\r\n    },mobileMode?8000:5000,70);\r\n    return ready\r\n      ?{ok:true,code:'SETUP_PURCHASE_LANE_RESTORED',lane:lane,previousLane:prev}\r\n      :{ok:false,code:'SETUP_PURCHASE_LANE_NOT_STABLE',lane:lane,previousLane:prev}\r\n  }\r\n  function forceSelectionLaneRecommendationSync(selection,reason){\r\n    try{\r\n      var sync=window.GDX_PANEL_LED_V4_ETAP2_R2C2_SELECTION_RECOMMENDATION_SYNC||null;\r\n      if(sync&&typeof sync.sync==='function'){\r\n        return sync.sync({\r\n          selection:selection||selectionState()||{},\r\n          reason:clean(reason)||'setup_share_lane_restore',\r\n          force:true\r\n        })\r\n      }\r\n    }catch(_){}\r\n    return null\r\n  }\r\n  function buildSetupDeepLink(root,title,variant,altMode){var sel=selectionState()||{},key=productKey(root,title),lane=setupPurchaseLane(key);try{var url=new URL(location.origin+location.pathname);url.searchParams.set(SETUP_PARAM,'setup');if(key)url.searchParams.set(KEY_PARAM,key);if(sel.activePurposeKey)url.searchParams.set(PURPOSE_PARAM,sel.activePurposeKey);if(sel.activeSubPurposeKey)url.searchParams.set(SUB_PARAM,sel.activeSubPurposeKey);if(validSetupLane(lane))url.searchParams.set(LANE_PARAM,lane);url.searchParams.set(VARIANT_PARAM,clean(variant)||'MAIN');if(clean(altMode))url.searchParams.set(ALT_MODE_PARAM,clean(altMode));var np=nlightPilotCurrent();if(np)url.searchParams.set(LEVEL_PARAM,ADVANCED_LEVEL);url.searchParams.delete(PILOT_PARAM);url.hash='';return url.toString()}catch(_){return location.href}}\r\n  function parseSetupDeepLink(value){try{var url=new URL(value||location.href,location.origin);if(clean(url.searchParams.get(SETUP_PARAM))!=='setup')return null;var key=clean(url.searchParams.get(KEY_PARAM)),purpose=clean(url.searchParams.get(PURPOSE_PARAM)),sub=clean(url.searchParams.get(SUB_PARAM)),lane=clean(url.searchParams.get(LANE_PARAM)),variant=clean(url.searchParams.get(VARIANT_PARAM))||'MAIN',altMode=clean(url.searchParams.get(ALT_MODE_PARAM)),pilot=clean(url.searchParams.get(PILOT_PARAM)),setupLevel=clean(url.searchParams.get(LEVEL_PARAM)).toLowerCase();if(!setupLevel&&pilot==='product_background')setupLevel=ADVANCED_LEVEL;if(!validSetupLane(lane))lane=setupPurchaseLane(key);if(!key||!purpose||!sub)return null;return{key:key,purposeKey:purpose,subPurposeKey:sub,purchaseLane:validSetupLane(lane)?lane:'',variant:variant,altMode:altMode,pilot:pilot,setupLevel:setupLevel,url:url.toString()}}catch(_){return null}}\r\n  (function suppressLegacySetupGenericOpen(){\r\n    var parsed=parseSetupDeepLink(location.href);\r\n    if(!parsed)return;\r\n    try{\r\n      var u=new URL(location.href);\r\n      if(clean(u.searchParams.get(OPEN_PARAM))==='panel-usecase'){\r\n        u.searchParams.delete(OPEN_PARAM);\r\n        history.replaceState(history.state,'',u.pathname+(u.search||'')+(u.hash||''));\r\n      }\r\n    }catch(_){}\r\n  })();\r\n  function waitFor(fn,timeout,interval){timeout=Number(timeout)||7000;interval=Number(interval)||90;return new Promise(function(resolve){var started=Date.now();(function tick(){var v=null;try{v=fn()}catch(_){}if(v)return resolve(v);if(Date.now()-started>=timeout)return resolve(null);setTimeout(tick,interval)})()})}\r\n  function delayMs(ms){return new Promise(function(resolve){setTimeout(resolve,Math.max(0,Number(ms)||0))})}\r\n  function isLikelyMobileSetupColdStart(){\r\n    try{\r\n      return !!(\r\n        (window.matchMedia&&window.matchMedia('(pointer: coarse)').matches) ||\r\n        Number(navigator.maxTouchPoints||0)>0 ||\r\n        Math.min(window.innerWidth||9999,window.screen&&window.screen.width||9999)<=820\r\n      )\r\n    }catch(_){return false}\r\n  }\r\n  function exactSetupSelection(parsed){\r\n    var st=selectionState()||{};\r\n    return !!(\r\n      parsed &&\r\n      clean(st.activePurposeKey)===clean(parsed.purposeKey) &&\r\n      clean(st.activeSubPurposeKey)===clean(parsed.subPurposeKey)\r\n    )\r\n  }\r\n  function setupButtonFor(parsed){\r\n    if(!parsed)return null;\r\n    var key=clean(parsed.key);\r\n    var buttons=[].slice.call(document.querySelectorAll(\r\n      '[data-gdx-r12-action=\"setup\"],'+\r\n      '[data-gdx-r11-action=\"setup\"],'+\r\n      '[data-gdx-r11-setup-btn],'+\r\n      '[data-gdx-panel-rec-setup]'\r\n    ));\r\n    for(var i=0;i<buttons.length;i+=1){\r\n      var direct=clean(buttons[i].getAttribute('data-gdx-r11-key'));\r\n      if(direct&&direct===key)return buttons[i];\r\n      var card=buttons[i].closest&&buttons[i].closest('[data-gdx-r11-card]');\r\n      if(card&&clean(card.getAttribute('data-gdx-r11-card'))===key)return buttons[i]\r\n    }\r\n    var cards=[].slice.call(document.querySelectorAll('[data-gdx-r11-card]'));\r\n    for(var j=0;j<cards.length;j+=1){\r\n      if(clean(cards[j].getAttribute('data-gdx-r11-card'))!==key)continue;\r\n      var nested=cards[j].querySelector(\r\n        '[data-gdx-r12-action=\"setup\"],'+\r\n        '[data-gdx-r11-action=\"setup\"],'+\r\n        '[data-gdx-r11-setup-btn],'+\r\n        '[data-gdx-panel-rec-setup]'\r\n      );\r\n      if(nested)return nested\r\n    }\r\n    return null\r\n  }\r\n\r\n  function dispatchExactSelection(selection){\r\n    if(!selection)return false;\r\n    try{\r\n      window.dispatchEvent(new CustomEvent('gdx-panel-v4-r28-selection-change',{detail:selection}));\r\n      return true\r\n    }catch(_){\r\n      try{\r\n        var ev=document.createEvent('CustomEvent');\r\n        ev.initCustomEvent('gdx-panel-v4-r28-selection-change',true,true,selection);\r\n        window.dispatchEvent(ev);\r\n        return true\r\n      }catch(__){return false}\r\n    }\r\n  }\r\n\r\n  async function alignRecommendationForSetupRestore(parsed,selectionReady,mobileMode){\r\n    var timeout=mobileMode?12000:8000;\r\n    var st=selectionReady||selectionState()||{};\r\n    try{\r\n      if(typeof window.GDX_PANEL_V4_PLACE_RECOMMENDATION_AFTER_R28==='function'){\r\n        window.GDX_PANEL_V4_PLACE_RECOMMENDATION_AFTER_R28()\r\n      }\r\n    }catch(_){}\r\n\r\n    var bridge=await waitFor(function(){\r\n      var hasTarget=typeof window.resolvePanelV4R28R11Target==='function';\r\n      var r11=window.GDX_PANEL_LED_V4_UI_RECO_15_R11_R5||null;\r\n      var ui=window.GDX_PANEL_LED_V4_UI||null;\r\n      return hasTarget&&(r11||ui)?{r11:r11,ui:ui}:null\r\n    },timeout,90);\r\n\r\n    dispatchExactSelection(st);\r\n    forceSelectionLaneRecommendationSync(st,'setup_share_after_exact_selection');\r\n    await delayMs(110);\r\n\r\n    var target=null;\r\n    try{\r\n      target=typeof window.resolvePanelV4R28R11Target==='function'\r\n        ?window.resolvePanelV4R28R11Target(st)\r\n        :null\r\n    }catch(_){target=null}\r\n\r\n    if(bridge&&bridge.r11&&target&&clean(target.mainKey)&&clean(target.subKey)){\r\n      try{\r\n        if(typeof bridge.r11.selectGoalSub==='function'){\r\n          bridge.r11.selectGoalSub(target.mainKey,target.subKey)\r\n        }\r\n      }catch(_){}\r\n      try{\r\n        if(typeof bridge.r11.render==='function')bridge.r11.render()\r\n      }catch(_){}\r\n    }\r\n\r\n    try{\r\n      if(bridge&&bridge.ui&&typeof bridge.ui.renderRecommendation==='function'){\r\n        bridge.ui.renderRecommendation()\r\n      }\r\n    }catch(_){}\r\n\r\n    dispatchExactSelection(st);\r\n    forceSelectionLaneRecommendationSync(st,'setup_share_after_r11_alignment');\r\n\r\n    var aligned=await waitFor(function(){\r\n      var button=setupButtonFor(parsed);\r\n      if(!button)return null;\r\n      var bridgeState=null;\r\n      try{\r\n        bridgeState=typeof window.getPanelV4R28R11BridgeState==='function'\r\n          ?window.getPanelV4R28R11BridgeState()\r\n          :null\r\n      }catch(_){}\r\n      return{button:button,bridgeState:bridgeState,target:target}\r\n    },timeout,90);\r\n\r\n    return aligned||{button:null,bridgeState:null,target:target}\r\n  }\r\n  function setupFinalSnapshot(parsed){\r\n    var root=modalRoot(false),model=root?scrapeModel():LAST_STATE.lastModel,st=selectionState()||{};\r\n    var altSecondary=root&&root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]:not([hidden])');\r\n    var altModeBtn=parsed&&parsed.altMode&&root?root.querySelector('[data-gdx-r34-cr07-a3-action=\"mode\"][data-gdx-r34-cr07-a3-mode-key=\"'+parsed.altMode.replace(/\"/g,'\\\"')+'\"][aria-pressed=\"true\"]'):null;\r\n    var productPass=!!(parsed&&model&&clean(parsed.key)===clean(model.productKey));\r\n    var selectionPass=!!(parsed&&clean(st.activePurposeKey)===clean(parsed.purposeKey)&&clean(st.activeSubPurposeKey)===clean(parsed.subPurposeKey));\r\n    var variantPass=!!(parsed&&(\r\n      parsed.variant!=='ALT' ||\r\n      (altSecondary&&(!parsed.altMode||altModeBtn))\r\n    ));\r\n    var advancedRequested=!!(parsed&&clean(parsed.setupLevel)===ADVANCED_LEVEL);\r\n    var advancedState=null,advancedLive=nlightPilotState(),advancedSvg=nlightLiveSvg();\r\n    try{\r\n      var U=window.CANFOTO_PANEL_ADVANCED_VARIANT_UI_R6||null;\r\n      advancedState=U&&typeof U.getState==='function'?U.getState():null\r\n    }catch(_){}\r\n    var setupLevelPass=!advancedRequested||!!(\r\n      advancedState&&\r\n      clean(advancedState.selectedVariant)==='ADVANCED_3_LIGHT'&&\r\n      advancedLive&&advancedLive.enabled===true&&\r\n      advancedSvg\r\n    );\r\n    var purchaseLane=committedSetupLane();\r\n    var purchaseLanePass=!!(parsed&&validSetupLane(parsed.purchaseLane)&&purchaseLane===clean(parsed.purchaseLane));\r\n    return{\r\n      exact:!!(parsed&&root&&productPass&&selectionPass&&variantPass&&setupLevelPass&&purchaseLanePass),\r\n      setupVisible:!!root,\r\n      productPass:productPass,\r\n      selectionPass:selectionPass,\r\n      variantPass:variantPass,\r\n      setupLevelPass:setupLevelPass,\r\n      purchaseLanePass:purchaseLanePass,\r\n      requestedPurchaseLane:parsed?clean(parsed.purchaseLane):'',\r\n      activePurchaseLane:purchaseLane,\r\n      requestedSetupLevel:parsed?clean(parsed.setupLevel):'',\r\n      activeSetupLevel:advancedState?clean(advancedState.selectedVariant):'',\r\n      activeProductKey:model?model.productKey:'',\r\n      activePurposeKey:clean(st.activePurposeKey),\r\n      activeSubPurposeKey:clean(st.activeSubPurposeKey),\r\n      activeVariant:altSecondary?'ALT':'MAIN',\r\n      activeAltMode:altModeBtn?clean(parsed.altMode):''\r\n    }\r\n  }\r\n  async function waitForSetupMobileColdStartGate(parsed){\r\n    var started=Date.now();\r\n    var shell=await waitFor(function(){var x=document.getElementById('gdxPanelV4Shell');return x&&!x.hidden&&x.getAttribute('aria-hidden')!=='true'?x:null},12000,90);\r\n    if(!shell)return{ok:false,code:'SETUP_MOBILE_SHELL_NOT_READY',elapsedMs:Date.now()-started};\r\n    var setter=await waitFor(function(){return typeof window.setPanelV4R28Selection==='function'?window.setPanelV4R28Selection:null},12000,90);\r\n    if(!setter)return{ok:false,code:'SETUP_MOBILE_SELECTION_API_NOT_READY',elapsedMs:Date.now()-started};\r\n    var baseline=await waitFor(function(){var st=selectionState()||{};return clean(st.activePurposeKey)&&clean(st.activeSubPurposeKey)?st:null},12000,90);\r\n    if(!baseline)return{ok:false,code:'SETUP_MOBILE_BASE_SELECTION_NOT_READY',elapsedMs:Date.now()-started};\r\n    await delayMs(260);\r\n    return{\r\n      ok:true,\r\n      code:'SETUP_MOBILE_COLD_START_SETTLED',\r\n      baselinePurposeKey:clean(baseline.activePurposeKey),\r\n      baselineSubPurposeKey:clean(baseline.activeSubPurposeKey),\r\n      elapsedMs:Date.now()-started\r\n    }\r\n  }\r\n  async function restoreSetupDeepLink(value){\r\n    var parsed=parseSetupDeepLink(value||location.href);\r\n    if(!parsed)return{ok:false,code:'NO_SETUP_DEEPLINK',version:VERSION};\r\n\r\n    var mobileMode=isLikelyMobileSetupColdStart(),gate=null,recoveryAttempted=false;\r\n\r\n    var launcher=await waitFor(function(){return document.getElementById('gdxPanelV4Launcher')},mobileMode?12000:8000,100);\r\n    var shell=await waitFor(function(){return document.getElementById('gdxPanelV4Shell')},mobileMode?12000:8000,100);\r\n    if(launcher&&shell&&(shell.hidden||shell.getAttribute('aria-hidden')==='true')){\r\n      try{launcher.click()}catch(_){}\r\n    }\r\n\r\n    var shellOpen=await waitFor(function(){var x=document.getElementById('gdxPanelV4Shell');return x&&!x.hidden&&x.getAttribute('aria-hidden')!=='true'?x:null},mobileMode?12000:8000,100);\r\n    if(!shellOpen)return{ok:false,code:'PANEL_MOTOR_NOT_OPENED',version:VERSION,mobileMode:mobileMode};\r\n\r\n    if(mobileMode){\r\n      gate=await waitForSetupMobileColdStartGate(parsed);\r\n      if(!gate.ok)return{ok:false,code:gate.code,version:VERSION,mobileMode:true,routeGate:gate};\r\n    }\r\n\r\n    var laneRestore=await restoreSetupPurchaseLane(parsed,mobileMode);\r\n    if(!laneRestore.ok)return{ok:false,code:laneRestore.code,version:VERSION,mobileMode:mobileMode,routeGate:gate,laneRestore:laneRestore};\r\n    parsed.purchaseLane=laneRestore.lane;\r\n\r\n    var setter=await waitFor(function(){return typeof window.setPanelV4R28Selection==='function'?window.setPanelV4R28Selection:null},mobileMode?12000:8000,100);\r\n    if(!setter)return{ok:false,code:'SELECTION_API_NOT_READY',version:VERSION,mobileMode:mobileMode};\r\n\r\n    async function applyExactSetup(reason){\r\n      var selected=null;\r\n      try{selected=setter(parsed.purposeKey,parsed.subPurposeKey)}\r\n      catch(error){return{ok:false,code:'SELECTION_RESTORE_FAILED',message:String(error&&error.message||error),reason:reason}}\r\n      if(!selected)return{ok:false,code:'SELECTION_NOT_FOUND',reason:reason};\r\n\r\n      var selectionReady=await waitFor(function(){return exactSetupSelection(parsed)?selectionState():null},mobileMode?12000:8000,90);\r\n      if(!selectionReady)return{ok:false,code:'SETUP_SELECTION_NOT_STABLE',reason:reason};\r\n\r\n      dispatchPurchaseLane(parsed.purchaseLane,parsed);\r\n      forceSelectionLaneRecommendationSync(selectionReady,'setup_share_exact_selection_and_lane');\r\n      var recommendationReady=await waitFor(function(){\r\n        var api=window.GDX_PANEL_LED_V4_UI_RECO_15_R11_R5||null;\r\n        var rows=api&&api.state&&Array.isArray(api.state.lastRows)?api.state.lastRows:[];\r\n        var rowHit=rows.some(function(row){return clean(row&&row.key)===clean(parsed.key)});\r\n        var domHit=!!document.querySelector('[data-gdx-r11-card=\"'+clean(parsed.key).replace(/\"/g,'\\\"')+'\"]');\r\n        return rowHit||domHit?{rowHit:rowHit,domHit:domHit,keys:rows.map(function(row){return clean(row&&row.key)}).filter(Boolean)}:null\r\n      },mobileMode?12000:8000,90);\r\n      if(!recommendationReady)return{\r\n        ok:false,\r\n        code:'SETUP_TARGET_NOT_IN_LANE_AWARE_RECOMMENDATION',\r\n        key:parsed.key,\r\n        purchaseLane:parsed.purchaseLane,\r\n        reason:reason\r\n      };\r\n\r\n      var alignment=await alignRecommendationForSetupRestore(parsed,selectionReady,mobileMode);\r\n      var button=alignment&&alignment.button?alignment.button:null;\r\n      if(!button)return{\r\n        ok:false,\r\n        code:'SETUP_BUTTON_NOT_FOUND_AFTER_R28_R11_ALIGNMENT',\r\n        key:parsed.key,\r\n        reason:reason,\r\n        bridgeState:alignment&&alignment.bridgeState||null,\r\n        bridgeTarget:alignment&&alignment.target||null,\r\n        purchaseLane:clean(parsed.purchaseLane),\r\n        committedPurchaseLane:committedSetupLane()\r\n      };\r\n\r\n      try{button.click()}catch(_){}\r\n      var root=await waitFor(function(){\r\n        var r=modalRoot(false);\r\n        if(!r)return null;\r\n        var m=scrapeModel();\r\n        return m&&clean(m.productKey)===clean(parsed.key)&&exactSetupSelection(parsed)?r:null\r\n      },mobileMode?10000:5000,80);\r\n      if(!root)return{ok:false,code:'SETUP_MODAL_NOT_OPENED',reason:reason};\r\n\r\n      if(parsed.variant==='ALT'){\r\n        var altRoot=await waitFor(function(){return root.querySelector('[data-gdx-r34-cr07-a3-root=\"1\"]')},mobileMode?8000:5000,80);\r\n        if(altRoot){\r\n          var toggle=altRoot.querySelector('[data-gdx-r34-cr07-a3-action=\"toggle\"]');\r\n          if(toggle&&altRoot.getAttribute('data-gdx-r34-cr07-a3-state')!=='expanded'){\r\n            try{toggle.click()}catch(_){}\r\n          }\r\n          var secondary=await waitFor(function(){var x=altRoot.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]');return x&&!x.hidden?x:null},mobileMode?7000:4000,80);\r\n          if(secondary&&parsed.altMode){\r\n            var modeBtn=altRoot.querySelector('[data-gdx-r34-cr07-a3-action=\"mode\"][data-gdx-r34-cr07-a3-mode-key=\"'+parsed.altMode.replace(/\"/g,'\\\"')+'\"]');\r\n            if(modeBtn&&!/true/i.test(modeBtn.getAttribute('aria-pressed')||'')){\r\n              try{modeBtn.click()}catch(_){}\r\n            }\r\n          }\r\n          if(secondary){try{secondary.scrollIntoView({block:'start',behavior:'auto'})}catch(_){}}\r\n        }\r\n      }\r\n\r\n      var variantOwner=await waitFor(function(){\r\n        var U=window.CANFOTO_PANEL_ADVANCED_VARIANT_UI_R6||null;\r\n        return U&&U.ready&&typeof U.restoreFromUrl==='function'&&typeof U.getAdmission==='function'?U:null\r\n      },mobileMode?10000:6000,80);\r\n      if(clean(parsed.setupLevel)===ADVANCED_LEVEL){\r\n        var admissionReady=await waitFor(function(){\r\n          if(!variantOwner)return null;\r\n          var a=null;try{a=variantOwner.getAdmission()}catch(_){}\r\n          if(!a||!a.checks)return null;\r\n          var x=a.checks;\r\n          var infra=!!(x.sourceReady&&x.contextReady&&x.resolverReady&&x.uniqueProducts&&x.uniquenessPolicy&&x.noTouchGuards&&x.activeSlotReady&&x.companionAssignmentsCertified&&x.canonicalReady&&x.sceneReady&&x.liveOwnerReady&&x.rendererReady);\r\n          return infra?{owner:variantOwner,admission:a}:null\r\n        },mobileMode?10000:6000,80);\r\n        if(!admissionReady)return{ok:false,code:'ADVANCED_ADMISSION_CONTEXT_NOT_READY',reason:reason};\r\n        try{variantOwner.restoreFromUrl()}catch(_){}\r\n        if(admissionReady.admission.ok!==true){\r\n          return{ok:false,code:'ADVANCED_SEMANTIC_GATE_REJECTED',reason:reason,failClosed:true};\r\n        }\r\n        var advancedReady=await waitFor(function(){\r\n          var U=window.CANFOTO_PANEL_ADVANCED_VARIANT_UI_R6||null,L=nlightPilotState(),svg=nlightLiveSvg();\r\n          var s=U&&typeof U.getState==='function'?U.getState():null;\r\n          return s&&clean(s.selectedVariant)==='ADVANCED_3_LIGHT'&&L&&L.enabled===true&&svg?{ui:s,live:L,svg:svg}:null\r\n        },mobileMode?10000:6000,80);\r\n        if(!advancedReady)return{ok:false,code:'ADVANCED_SETUP_LEVEL_NOT_RESTORED',reason:reason};\r\n      }else if(variantOwner){\r\n        try{variantOwner.restoreFromUrl()}catch(_){}\r\n      }\r\n\r\n      refresh();\r\n      var target=parsed.variant==='ALT'\r\n        ?(root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]')||root)\r\n        :(root.querySelector('[data-gdx-r33-cr02-compact-schema-slot=\"1\"]')||root.querySelector('[data-gdx-r11-setup-intelligence=\"1\"]')||root);\r\n      try{target.scrollIntoView({block:'start',behavior:'auto'})}catch(_){}\r\n      return{ok:true,reason:reason}\r\n    }\r\n\r\n    var applied=await applyExactSetup(mobileMode?'SETUP_AFTER_MOBILE_COLD_START_GATE':'SETUP_PRIMARY');\r\n    if(!applied.ok)return{ok:false,code:applied.code,version:VERSION,mobileMode:mobileMode,routeGate:gate,detail:applied};\r\n\r\n    if(mobileMode){\r\n      await delayMs(520);\r\n      var snap=setupFinalSnapshot(parsed);\r\n      if(!snap.exact){\r\n        recoveryAttempted=true;\r\n        var retry=await applyExactSetup('SETUP_MOBILE_ONE_LATE_INIT_RECOVERY');\r\n        if(!retry.ok)return{ok:false,code:retry.code,version:VERSION,mobileMode:true,routeGate:gate,recoveryAttempted:true,detail:retry};\r\n        await delayMs(360);\r\n        snap=setupFinalSnapshot(parsed);\r\n        if(!snap.exact)return{ok:false,code:'SETUP_FINAL_TARGET_NOT_STABLE',version:VERSION,mobileMode:true,routeGate:gate,recoveryAttempted:true,snapshot:snap};\r\n      }\r\n    }\r\n\r\n    return{\r\n      ok:true,\r\n      code:'SETUP_DEEPLINK_RESTORED',\r\n      version:VERSION,\r\n      key:parsed.key,\r\n      purposeKey:parsed.purposeKey,\r\n      subPurposeKey:parsed.subPurposeKey,\r\n      purchaseLane:parsed.purchaseLane,\r\n      variant:parsed.variant,\r\n      altMode:parsed.altMode,\r\n      setupLevel:parsed.setupLevel,\r\n      mobileMode:mobileMode,\r\n      routeGate:gate,\r\n      recoveryAttempted:recoveryAttempted,\r\n      finalTarget:setupFinalSnapshot(parsed)\r\n    }\r\n  }\r\n  function shareUrl(root,title,variant,altMode){return buildSetupDeepLink(root,title,variant,altMode)}\r\n  function qrApi(){return window.GDX_PANEL_LED_V4_QR||null}\r\n  function setupRows(root){var rows=[];if(!root)return rows;[].slice.call(root.querySelectorAll('[data-gdx-r33-cr02-setup-values=\"1\"] [data-gdx-r11-setup-alt=\"1\"]')).forEach(function(el){var b=clean((el.querySelector('b')||{}).textContent),s=clean((el.querySelector('small')||{}).textContent);if(b&&s)rows.push({label:b,value:s})});return rows.slice(0,4)}\r\n  function alternativeRows(root){var secondary=root&&root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]:not([hidden])');if(!secondary)return[];return [].slice.call(secondary.querySelectorAll('.gdx-cr07-a3-value-card')).map(function(el){return{label:clean((el.querySelector('b')||{}).textContent),value:clean((el.querySelector('span')||{}).textContent)}}).filter(function(r){return r.label&&r.value}).slice(0,5)}\r\n  function noraText(root){if(!root)return'';var source=root.querySelector('[data-gdx-panel-r29-r5-source-owned=\"1\"]');if(!source)return'';var cards=[].slice.call(source.querySelectorAll('[data-gdx-panel-r29-r5-copy] p')).map(function(p){return clean(p.textContent)}).filter(Boolean);return cards.join(' ')}\r\n  function productImageUrl(root){var img=root&&root.querySelector('[data-gdx-r11-modal-slider-image=\"1\"]');return img?clean(img.currentSrc||img.src):''}\r\n  function purposeContext(root){var persona=root&&root.querySelector('[data-gdx-r11-persona-fit=\"1\"][data-gdx-r11-persona-mode=\"setup\"]');var p=clean((persona&&persona.querySelector('p')||{}).textContent);var lis=persona?[].slice.call(persona.querySelectorAll('li')).map(function(li){return clean(li.textContent)}).filter(Boolean).slice(0,2):[];var description=[p].concat(lis).filter(Boolean).join(' \u00B7 ');var strengths=[];var purposeBox=root&&root.querySelector('[data-gdx-r11-purpose-weight-narrative=\"1\"]');if(purposeBox){var lead=clean((purposeBox.querySelector('[data-gdx-r11-purpose-weight-lead=\"1\"]')||{}).textContent);if(lead)strengths.push(lead);[].slice.call(purposeBox.querySelectorAll('[data-gdx-r11-purpose-weight-item=\"1\"]')).slice(0,2).forEach(function(item){var title=clean((item.querySelector('b')||{}).textContent),score=clean((item.querySelector('[data-gdx-r11-purpose-weight-score=\"1\"]')||{}).textContent);var text=[title,score].filter(Boolean).join(' \u00B7 ');if(text)strengths.push(text)})}if(!strengths.length&&lis.length)strengths=lis.slice(0,2);return{description:description||'Se\u00E7ili kullan\u0131m amac\u0131 i\u00E7in \u00FCr\u00FCn tipi, \u0131\u015F\u0131k rol\u00FC ve \u00E7al\u0131\u015Fma mesafesi birlikte de\u011Ferlendirilir.',strengths:strengths.slice(0,3)}}\r\n  function pct(node,name){if(!node)return null;var s=getComputedStyle(node).getPropertyValue(name);var n=parseFloat(s);return Number.isFinite(n)?n:null}\r\n  function schematicModelFrom(container){if(!container)return null;var canvas=container.matches&&container.matches('[data-gdx-panel-af04-distance-canvas=\"1\"],[data-gdx-r34-cr07-a3-distance-canvas=\"1\"],.gdx-af04-canvas')?container:container.querySelector('[data-gdx-panel-af04-distance-canvas=\"1\"],[data-gdx-r34-cr07-a3-distance-canvas=\"1\"],.gdx-af04-canvas');if(!canvas)return null;var nodes=[].slice.call(canvas.querySelectorAll('.gdx-af04-node')).map(function(node){var cls=String(node.className||'');var type=/is-subject/.test(cls)?'subject':(/is-camera/.test(cls)?'camera':'light');var role=clean((node.querySelector('strong')||{}).textContent)||type;var meta=clean((node.querySelector('span')||{}).textContent);var detail=clean((node.querySelector('small')||{}).textContent);var subtype=/is-rgb/.test(cls)?'rgb':(/is-fill/.test(cls)?'fill':(/is-support/.test(cls)?'support':'key'));return{type:type,subtype:subtype,role:role,meta:meta,detail:detail,x:pct(node,'--gdx-af04-x'),y:pct(node,'--gdx-af04-y')}}).filter(function(row){return Number.isFinite(row.x)&&Number.isFinite(row.y)});var labels=[].slice.call(canvas.querySelectorAll('.gdx-af04-line-label')).map(function(node){return{text:clean(node.textContent),x:pct(node,'--gdx-af04-x'),y:pct(node,'--gdx-af04-y'),camera:/is-camera/.test(String(node.className||''))}}).filter(function(row){return row.text&&Number.isFinite(row.x)&&Number.isFinite(row.y)});return{nodes:nodes,labels:labels,source:clean(canvas.getAttribute('data-gdx-af04-source')||canvas.getAttribute('data-gdx-r34-cr07-a3-source')||''),capturedFrom:/gdx-r34-cr07/.test(String(canvas.getAttribute('data-gdx-r34-cr07-a3-distance-canvas')||''))?'AF04_ALTERNATIVE_DOM':'AF04_RENDERED_DOM'}}\r\n  function v27NodeCenter(node){if(!node)return null;var tag=String(node.tagName||'').toLowerCase();var x=null,y=null;if(tag==='circle'){x=parseFloat(node.getAttribute('cx'));y=parseFloat(node.getAttribute('cy'))}else if(tag==='rect'){var rx=parseFloat(node.getAttribute('x')),ry=parseFloat(node.getAttribute('y')),rw=parseFloat(node.getAttribute('width')),rh=parseFloat(node.getAttribute('height'));if([rx,ry,rw,rh].every(Number.isFinite)){x=rx+rw/2;y=ry+rh/2}}if(!Number.isFinite(x)||!Number.isFinite(y))return null;return{x:x,y:y}}\r\n  function schematicModelFromCanonicalV27(root){\r\n    try{\r\n      var bridge=window.CANFOTO_R6_MOTOR_V27_PROFILE_PARITY||null;\r\n      var renderer=window.CANFOTO_PDP_V27_SCHEMATIC||null;\r\n      if(!bridge||typeof bridge.getState!=='function'||typeof bridge.getAdmissionContext!=='function'||!renderer||typeof renderer.renderScenario!=='function')return null;\r\n      var bs=bridge.getState(),ps=bs&&bs.panel||{};\r\n      var setupId=clean(ps.lastSetupRecordId),handle=clean(ps.lastProductHandle);\r\n      if(!setupId||!handle)return null;\r\n      var ctx=bridge.getAdmissionContext('PANEL_LED_V4',setupId,handle,{});\r\n      if(!ctx||ctx.ok!==true||!ctx.scene)return null;\r\n      var visibleV27=root&&root.querySelector('svg[data-r61-profile-parity=\"1\"]')||document.querySelector('svg[data-r61-profile-parity=\"1\"]');\r\n      var signature=clean(visibleV27&&visibleV27.dataset&&visibleV27.dataset.geometrySignature);\r\n      var side=/\\|RIGHT$/.test(signature)?'RIGHT':'LEFT';\r\n      var svg=renderer.renderScenario(ctx.scene,{side:side});\r\n      var vb=svg&&svg.viewBox&&svg.viewBox.baseVal;\r\n      if(!svg||!vb||!vb.width||!vb.height)return null;\r\n      var rings=[].slice.call(svg.querySelectorAll('circle.light-ring'));\r\n      var fixtureLabels=[].slice.call(svg.querySelectorAll('text.fixture-label'));\r\n      var subjectEl=svg.querySelector('.subject'),cameraEl=svg.querySelector('.camera');\r\n      var sc=ctx.scene,nodes=[];\r\n      function pctPoint(p){return p?{x:Math.max(0,Math.min(100,(p.x-vb.x)/vb.width*100)),y:Math.max(0,Math.min(100,(p.y-vb.y)/vb.height*100))}:null}\r\n      function linePct(el){\r\n        if(!el)return null;\r\n        var x1=parseFloat(el.getAttribute('x1')),y1=parseFloat(el.getAttribute('y1')),x2=parseFloat(el.getAttribute('x2')),y2=parseFloat(el.getAttribute('y2'));\r\n        if(![x1,y1,x2,y2].every(Number.isFinite))return null;\r\n        return {x1:(x1-vb.x)/vb.width*100,y1:(y1-vb.y)/vb.height*100,x2:(x2-vb.x)/vb.width*100,y2:(y2-vb.y)/vb.height*100};\r\n      }\r\n      var mp=pctPoint(v27NodeCenter(rings[0])),sp=pctPoint(v27NodeCenter(rings[1])),subp=pctPoint(v27NodeCenter(subjectEl)),camp=pctPoint(v27NodeCenter(cameraEl));\r\n      if(mp)nodes.push({type:'light',subtype:clean(sc.mainKind)==='rgb'?'rgb':'key',role:clean(sc.mainLabel)||clean(fixtureLabels[0]&&fixtureLabels[0].textContent)||'Ana I\u015F\u0131k',meta:[clean(sc.mainRole),Number.isFinite(Number(sc.mainDist))?String(sc.mainDist).replace('.',',')+' m':''].filter(Boolean).join(' \u00B7 '),detail:clean(sc.mainRole),x:mp.x,y:mp.y});\r\n      if(sp)nodes.push({type:'light',subtype:clean(sc.secondaryKind)==='rgb'?'rgb':(clean(sc.secondaryKind)==='bicolor'?'fill':'support'),role:clean(sc.rgbLabel)||clean(fixtureLabels[1]&&fixtureLabels[1].textContent)||clean(sc.secondaryRole)||'2. I\u015F\u0131k',meta:[clean(sc.secondaryRole),Number.isFinite(Number(sc.rgbDist))?String(sc.rgbDist).replace('.',',')+' m':''].filter(Boolean).join(' \u00B7 '),detail:clean(sc.secondaryRole),x:sp.x,y:sp.y});\r\n      if(subp)nodes.push({type:'subject',subtype:'subject',role:clean(sc.subject)||'KONU',meta:'',detail:'',x:subp.x,y:subp.y});\r\n      if(camp)nodes.push({type:'camera',subtype:'camera',role:'KAMERA',meta:Number.isFinite(Number(sc.cam))?String(sc.cam).replace('.',',')+' m':'',detail:'',x:camp.x,y:camp.y});\r\n      if(nodes.length<3)return null;\r\n      var plane=linePct(svg.querySelector('.bg-visible')||svg.querySelector('.bg-plane'));\r\n      var patch=linePct(svg.querySelector('.bg-patch'));\r\n      var bgActive=sc.bgActive===true&&!!plane&&!!patch;\r\n      return{\r\n        nodes:nodes,\r\n        labels:[],\r\n        source:'CANONICAL_V27_SCENE::'+clean(ctx.profile&&ctx.profile.profileId),\r\n        capturedFrom:'CANONICAL_V27_SHARED_RENDERER',\r\n        setupRecordId:setupId,\r\n        productHandle:handle,\r\n        side:side,\r\n        backgroundTruthState:clean(ctx.profile&&ctx.profile.backgroundTruthState||ctx.backgroundTruthState),\r\n        background:bgActive?{active:true,label:'KAMERADA G\u00D6R\u00DCNEN ARKA FON',plane:plane,patch:patch}:null,\r\n        targetSemantics:{\r\n          mainTargetClass:'SUBJECT_CENTER',\r\n          secondaryTargetClass:bgActive&&clean(sc.secondaryKind)==='rgb'?'BACKGROUND_PLANE_OR_PATCH':'SUBJECT_CENTER'\r\n        }\r\n      };\r\n    }catch(_){return null}\r\n  }\r\n  function schematicModel(root){var v27=schematicModelFromCanonicalV27(root);if(v27&&v27.nodes&&v27.nodes.length>=3)return v27;var slot=root&&root.querySelector('[data-gdx-r33-cr02-compact-schema-slot=\"1\"]');return schematicModelFrom(slot)}\r\n  function baseModel(root){var head=root.querySelector('.gdx-r11-modal-head');var title=clean((head&&head.querySelector('h3')||{}).textContent)||'Panel LED Dinamik Kurulum';var context=clean((head&&head.querySelector('p')||{}).textContent)||'Dinamik Kurulum';var pc=purposeContext(root);return{title:title,lane:context,purposeLabel:context,purposeDescription:pc.description,strengths:pc.strengths,productImageUrl:productImageUrl(root),productKey:productKey(root,title),selection:selectionState()}}\r\n\r\n  function trNum(v){\r\n    var n=Number(v);\r\n    if(!Number.isFinite(n))return \"\";\r\n    var s=(Math.round(n*100)/100).toFixed(2).replace(/0+$/,\"\").replace(/\\.$/,\"\");\r\n    return s.replace(\".\",\",\");\r\n  }\r\n  function practicalDistance(light){\r\n    var exact=clean(light&&light.sourceDistanceSpec);\r\n    if(exact!==\"dynamic\")return exact;\r\n    var bands=Array.isArray(light&&light.roleBands)?light.roleBands:[];\r\n    var role=clean(light&&light.roleKey);\r\n    var rec=bands.find(function(b){return clean(b&&b.roleKey)===role;})||bands[0]||null;\r\n    var ds=rec&&Array.isArray(rec.distanceBands)?rec.distanceBands:[];\r\n    var nums=[];\r\n    ds.forEach(function(x){\r\n      String(x||\"\").replace(/(\\d+(?:[\\.,]\\d+)?)/g,function(mm){nums.push(Number(mm.replace(\",\",\".\")));return mm;});\r\n    });\r\n    nums=nums.filter(Number.isFinite);\r\n    if(!nums.length)return \"\";\r\n    return trNum(Math.min.apply(Math,nums))+\"\u2013\"+trNum(Math.max.apply(Math,nums))+\" m\";\r\n  }\r\n\r\n  function nlightShareTargetLabel(light,scene){\r\n    var type=clean(light&&light.target&&light.target.type),explicit=clean(light&&light.target&&light.target.label),sel=clean(scene&&scene.selectionKey),setup=clean(scene&&scene.setupKey);\r\n    if(!sel){if(type==='background')return 'fon / arka plan';if(type==='subject_edge')return (setup==='three_light_interview_rim'||setup==='three_light_beauty_hair')?'sa\u00E7/omuz d\u0131\u015F konturu':'konu / \u00FCr\u00FCn kenar\u0131';}\r\n    if(explicit)return explicit;\r\n    if(type==='background')return 'fon / arka plan';\r\n    if(type==='subject_edge'){if(setup==='three_light_beauty_hair')return 'sa\u00E7/omuz d\u0131\u015F konturu';if(sel.indexOf('interview_talking_head::')===0)return 'sa\u00E7/omuz d\u0131\u015F konturu';if(sel.indexOf('studio_professional::')===0)return 'model / \u00FCr\u00FCn d\u0131\u015F konturu';return 'konu / \u00FCr\u00FCn kenar\u0131';}\r\n    return '';\r\n  }\r\n\r\n  function nlightShareMetrics(scene,ctx){\r\n    if(!scene||!Array.isArray(scene.lights))return[];\r\n    var productScene=clean(scene&&scene.setupKey)===\"three_light_product_background\",beautyScene=clean(scene&&scene.setupKey)===\"three_light_beauty_hair\";\r\n    var rows=scene.lights.map(function(light){\r\n      var parts=[];\r\n      if(light&&light.angleDeg!=null&&Number.isFinite(Number(light.angleDeg))){\r\n        parts.push(\"A\u00E7\u0131 \"+trNum(light.angleDeg)+\"\u00B0\");\r\n      }else if(productScene&&clean(light&&light.sourceAngleSpec)){\r\n        var sourceAngle=clean(light.sourceAngleSpec).replace(/(\\d)\\.(\\d)/g,\"$1,$2\");\r\n        parts.push(/^fona\\s+do\u011Fru$/i.test(sourceAngle)?\"Y\u00F6n \"+sourceAngle:\"A\u00E7\u0131 \"+sourceAngle);\r\n      }\r\n      if(light&&light.distanceM!=null&&Number.isFinite(Number(light.distanceM))){\r\n        parts.push(\"Mesafe \"+trNum(light.distanceM)+\" m\");\r\n      }else if(productScene&&clean(light&&light.sourceDistanceSpec)===\"dynamic\"){\r\n        var pd=practicalDistance(light);\r\n        parts.push(pd?\"Mesafe band\u0131 \"+pd:\"Mesafe dinamik\");\r\n      }else if(productScene&&clean(light&&light.sourceDistanceSpec)){\r\n        parts.push(\"Mesafe \"+clean(light.sourceDistanceSpec).replace(/(\\d)\\.(\\d)/g,\"$1,$2\"));\r\n      }\r\n      if(light&&light.heightM!=null&&Number.isFinite(Number(light.heightM))){\r\n        parts.push(\"Y\u00FCkseklik \"+trNum(light.heightM)+\" m\");\r\n      }\r\n      if(light&&light.tiltDeg!=null&&Number.isFinite(Number(light.tiltDeg))){\r\n        parts.push(\"Tilt \"+trNum(light.tiltDeg)+\"\u00B0\");\r\n      }\r\n      var target=clean(light&&light.target&&light.target.type);\r\n      if(target===\"subject_edge\")parts.push(\"Hedef: \"+nlightShareTargetLabel(light,scene));\r\n      else if(target===\"background\")parts.push(\"Hedef: \"+nlightShareTargetLabel(light,scene));\r\n      else if(target===\"subject\"){\r\n        if(productScene)parts.push(clean(light.slotRole)===\"FILL\"?\"Hedef: Model / \u00DCr\u00FCn \u00B7 g\u00F6lge kontrol\u00FC\":\"Hedef: Model / \u00DCr\u00FCn\");\r\n        else parts.push(clean(light.slotRole)===\"FILL\"?\"Hedef: g\u00F6lge kontrol\u00FC\":\"Hedef: ki\u015Fi\");\r\n      }\r\n      return{label:clean(light&&light.semanticLabel)||clean(light&&light.roleLabel)||(\"I\u015F\u0131k \"+String(Number(light&&light.index||0)+1)),value:parts.filter(Boolean).join(\" \u00B7 \")};\r\n    });\r\n    var camera=scene.camera||{};\r\n    rows.push({label:\"Kamera\",value:[\r\n      camera.distanceM!=null&&Number.isFinite(Number(camera.distanceM))?\"Mesafe \"+trNum(camera.distanceM)+\" m\":\"\",\r\n      camera.fovDeg!=null&&Number.isFinite(Number(camera.fovDeg))?\"FOV \"+trNum(camera.fovDeg)+\"\u00B0\":\"\",\r\n      clean(camera.frameOrientation)||\"\",\r\n      (productScene||beautyScene)&&!(camera.distanceM!=null&&Number.isFinite(Number(camera.distanceM)))&&!(camera.fovDeg!=null&&Number.isFinite(Number(camera.fovDeg)))&&!clean(camera.frameOrientation)?\"Mesafe/FOV: kaynakta tan\u0131ml\u0131 de\u011Fil\":\"\",\r\n      \"Konu ekseninde\"\r\n    ].filter(Boolean).join(\" \u00B7 \")});\r\n    var sel=ctx&&ctx.selection||{};\r\n    rows.push({label:\"Geli\u015Fmi\u015F ba\u011Flam\",value:[clean(sel.activePurposeTitle),clean(sel.activeSubPurposeTitle),\"3 \u0131\u015F\u0131kl\u0131 geli\u015Fmi\u015F kurulum\"].filter(Boolean).join(\" \u00B7 \")});\r\n    return rows;\r\n  }\r\n\r\n  function nlightShareSchematic(scene){\r\n    if(!scene||!Array.isArray(scene.lights))return null;\r\n    var productScene=clean(scene&&scene.setupKey)==='three_light_product_background',beautyScene=clean(scene&&scene.setupKey)==='three_light_beauty_hair';\r\n    var nodes=scene.lights.map(function(light){var x=Number.isFinite(Number(light.renderXPct))?Number(light.renderXPct):Number(light.xPct),y=Number.isFinite(Number(light.renderYPct))?Number(light.renderYPct):Number(light.yPct),angle=light&&light.angleDeg!=null&&Number.isFinite(Number(light.angleDeg))?trNum(light.angleDeg)+'\u00B0':(productScene?clean(light&&light.sourceAngleSpec):''),distance=light&&light.distanceM!=null&&Number.isFinite(Number(light.distanceM))?trNum(light.distanceM)+' m':(productScene?(clean(light&&light.sourceDistanceSpec)==='dynamic'?practicalDistance(light):clean(light&&light.sourceDistanceSpec)):''),height=light&&light.heightM!=null&&Number.isFinite(Number(light.heightM))?'Y\u00FCk. '+trNum(light.heightM)+' m':'';return{type:'light',subtype:clean(light.visualKind)==='rgb'?'rgb':(clean(light.slotRole)==='FILL'?'fill':'key'),role:clean(light.productTitle),meta:[clean(light.roleLabel),angle,distance,height].filter(Boolean).join(' \u00B7 '),detail:clean(light.roleLabel),x:x,y:y,targetType:clean(light.target&&light.target.type)}});\r\n    if(scene.subject)nodes.push({type:'subject',subtype:'subject',role:clean(scene.subject.label)||'Model / \u00DCr\u00FCn',meta:'',detail:'',x:Number(scene.subject.xPct),y:Number(scene.subject.yPct)});\r\n    if(scene.camera)nodes.push({type:'camera',subtype:'camera',role:'KAMERA',meta:(scene.camera.distanceM!=null&&Number.isFinite(Number(scene.camera.distanceM))?trNum(scene.camera.distanceM)+' m':'')+(scene.camera.fovDeg!=null&&Number.isFinite(Number(scene.camera.fovDeg))?' \u00B7 FOV '+trNum(scene.camera.fovDeg)+'\u00B0':((productScene||beautyScene)?' \u00B7 Mesafe/FOV kaynakta yok':'')),detail:'',x:Number(scene.camera.xPct),y:Number(scene.camera.yPct)});\r\n    var targetSemantics={};scene.lights.forEach(function(l,i){targetSemantics['light'+String(i+1)]=clean(l.target&&l.target.type).toUpperCase()||'SUBJECT'});\r\n    var third=scene.lights[2]||null,thirdTarget=clean(third&&third.target&&third.target.type);\r\n    targetSemantics.mainTargetClass='SUBJECT_CENTER';\r\n    targetSemantics.secondaryTargetClass=thirdTarget==='subject_edge'?'SUBJECT_EDGE':(thirdTarget==='background'?'BACKGROUND_PLANE_OR_PATCH':'SUBJECT_CENTER');\r\n    return{nodes:nodes,labels:[],source:'CANFOTO_PANEL_NLIGHT_V27_SCENE::'+clean(scene.version),capturedFrom:'R1.7G_SINGLE_SCENE_NLIGHT',setupRecordId:clean(scene.setupRecordId),productHandle:clean(scene.activeProductHandle),background:scene.background&&scene.background.active?{active:true,label:clean(scene.background.label)||'FON / ARKA PLAN',xPct:Number(scene.background.xPct),yPct:Number(scene.background.yPct)}:null,targetSemantics:targetSemantics}\r\n  }\r\n\r\n  function nlightShareNora(scene,ctx){\r\n    if(!scene||!Array.isArray(scene.lights)||scene.lights.length!==3)return'';\r\n    var active=scene.lights.find(function(l){return clean(l.productHandle)===clean(scene.activeProductHandle)})||scene.lights[2],companions=scene.lights.filter(function(l){return clean(l.productHandle)!==clean(scene.activeProductHandle)}),selectedRole=clean(ctx&&ctx.selectedRoleLabel)||clean(active&&active.roleLabel),companionCopy=companions.map(function(l){return clean(l.roleLabel)+' i\u00E7in '+clean(l.productTitle)}).join('; '),third=scene.lights[2]||{},thirdType=clean(third&&third.target&&third.target.type),thirdLabel=nlightShareTargetLabel(third,scene),selectionAware=!!clean(scene&&scene.selectionKey),interview=clean(scene&&scene.setupKey)==='three_light_interview_rim',beauty=clean(scene&&scene.setupKey)==='three_light_beauty_hair';\r\n    var semantic=beauty?'NORA: Ana/Y\u00FCz \u0131\u015F\u0131\u011F\u0131 y\u00FCz\u00FC modeller; Dolgu \u0131\u015F\u0131\u011F\u0131 g\u00F6lgeyi kontroll\u00FC a\u00E7ar; Sa\u00E7/Kontur \u0131\u015F\u0131\u011F\u0131 sa\u00E7/omuz d\u0131\u015F konturunu hedefler, fona y\u00F6nelmez ve ana pozlamay\u0131 devralmamal\u0131d\u0131r.':(!selectionAware?(interview?'NORA: Ana ve dolgu \u0131\u015F\u0131\u011F\u0131 ki\u015Fiyi modeller; RGB kenar \u0131\u015F\u0131\u011F\u0131 arka plana de\u011Fil sa\u00E7/omuz d\u0131\u015F konturuna y\u00F6nelir ve ana pozlamay\u0131 devralmamal\u0131d\u0131r.':'Ana ve dolgu \u0131\u015F\u0131\u011F\u0131 konu/\u00FCr\u00FCne; RGB/arka plan \u0131\u015F\u0131\u011F\u0131 fona y\u00F6nelir.'):(thirdType==='subject_edge'?('NORA: Ana ve dolgu \u0131\u015F\u0131\u011F\u0131 konu/\u00FCr\u00FCn\u00FC modeller; \u00FC\u00E7\u00FCnc\u00FC \u0131\u015F\u0131k '+thirdLabel+' hedefindedir, fona y\u00F6nelmez ve ana pozlamay\u0131 devralmamal\u0131d\u0131r.'):('NORA: Ana ve dolgu \u0131\u015F\u0131\u011F\u0131 konu/\u00FCr\u00FCn\u00FC modeller; \u00FC\u00E7\u00FCnc\u00FC RGB/arka plan \u0131\u015F\u0131\u011F\u0131 yaln\u0131z fon/arka plana y\u00F6nelir ve ana pozlamay\u0131 devralmamal\u0131d\u0131r.')));\r\n    return clean(clean(active&&active.productTitle)+', bu 3 \u0131\u015F\u0131kl\u0131 kurulumda '+selectedRole+' rol\u00FCndedir. '+companionCopy+'. Di\u011Fer iki \u0131\u015F\u0131k ayr\u0131 \u00FCr\u00FCnlerdir ve se\u00E7ili \u00FCr\u00FCn paketine dahil de\u011Fildir. '+semantic)\r\n  }\r\n\r\n  function scrapeNlightMainModel(root){\r\n    var np=nlightPilotCurrent();\r\n    if(!np)return null;\r\n    var base=baseModel(root),scene=np.scene,ctx=np.context,sel=ctx.selection||{};\r\n    var purposeLabel=[clean(sel.activePurposeTitle),clean(sel.activeSubPurposeTitle)].filter(Boolean).join(' \u00B7 ')||base.purposeLabel;\r\n    var signature=scene.lights.map(function(l){\r\n      return [clean(l.slotId),clean(l.productHandle),clean(l.roleLabel),clean(l.target&&l.target.type)].join('|')\r\n    }).join('::');\r\n    var model={\r\n      version:VERSION,\r\n      shareType:'setup',\r\n      engine:'PANEL',\r\n      title:base.title,\r\n      lane:base.lane,\r\n      purposeLabel:purposeLabel,\r\n      purposeDescription:base.purposeDescription,\r\n      strengths:base.strengths,\r\n      productImageUrl:base.productImageUrl,\r\n      variant:'3 I\u015F\u0131kl\u0131 geli\u015Fmi\u015F kurulum',\r\n      variantKey:'MAIN',\r\n      summary:'Canl\u0131 3 \u0131\u015F\u0131kl\u0131 geli\u015Fmi\u015F setup ile ayn\u0131 \u00FCr\u00FCnler, \u0131\u015F\u0131k g\u00F6revleri ve yerle\u015Fim de\u011Ferleri payla\u015F\u0131l\u0131r.',\r\n      metrics:nlightShareMetrics(scene,ctx),\r\n      nora:nlightShareNora(scene,ctx),\r\n      url:buildSetupDeepLink(root,base.title,'MAIN',''),\r\n      schematic:nlightShareSchematic(scene),\r\n      productKey:base.productKey,\r\n      selection:base.selection,\r\n      nlightPilot:true,\r\n      nlightSetupKey:clean(scene.setupKey),\r\n      nlightActiveSlotId:clean(scene.activeSlotId),\r\n      nlightSceneVersion:clean(scene.version),\r\n      nlightSceneSignature:signature,\r\n      nlightSelectionUsecaseKey:clean(ctx.selectionUsecaseKey)\r\n    };\r\n    LAST_STATE.lastModel=model;\r\n    return model\r\n  }\r\n\r\n  function scrapeMainModel(root){root=root||modalRoot(false);if(!root)return null;var nlight=scrapeNlightMainModel(root);if(nlight)return nlight;var base=baseModel(root),rows=setupRows(root),rawNora=noraText(root)||'Se\u00E7ili Panel LED setup\u0131, \u015Fema ve teknik de\u011Ferleriyle birlikte payla\u015F\u0131l\u0131r.',nora=noraWithCompanionIdentity(rawNora,base);var model={version:VERSION,shareType:'setup',engine:'PANEL',title:base.title,lane:base.lane,purposeLabel:base.purposeLabel,purposeDescription:base.purposeDescription,strengths:base.strengths,productImageUrl:base.productImageUrl,variant:'\u00D6nerilen setup',variantKey:'MAIN',summary:'Ana \u00F6neri, se\u00E7ili kullan\u0131m amac\u0131 i\u00E7in \u00F6nerilen yerle\u015Fimi ve teknik de\u011Ferleri g\u00F6sterir.',metrics:rows,nora:nora,url:shareUrl(root,base.title,'MAIN',''),schematic:schematicModel(root),productKey:base.productKey,selection:base.selection,nlightPilot:false};LAST_STATE.lastModel=model;return model}\r\n  function companionCandidateForShare(base){try{var r=window.CANFOTO_PANEL_COMPANION_RESOLVER_R6||null,b=window.CANFOTO_R6_MOTOR_V27_PROFILE_PARITY||null;if(!r||typeof r.resolve!=='function'||!b||typeof b.getState!=='function')return null;var bs=b.getState(),ps=bs&&bs.panel||{},setupId=clean(ps.lastSetupRecordId),activeHandle=clean(base&&base.productKey)||clean(ps.lastProductHandle);if(!setupId||!activeHandle)return null;var x=r.resolve({setupRecordId:setupId,activeProductHandle:activeHandle});return x&&x.ok===true&&x.candidate?x.candidate:null}catch(_){return null}}\r\n  function companionizeAlternativeSchematic(schematic,candidate){try{if(!schematic||!candidate||!clean(candidate.title))return schematic;var out=JSON.parse(JSON.stringify(schematic)),nodes=Array.isArray(out.nodes)?out.nodes:[];var keyNode=nodes.find(function(n){return n&&n.type==='light'&&n.subtype==='key'})||nodes.find(function(n){return n&&n.type==='light'&&/ana \u0131\u015F\u0131k/i.test(clean(n.role))});if(keyNode){keyNode.role=clean(candidate.title);keyNode.meta=['Ana I\u015F\u0131k',clean(keyNode.meta).replace(/^Ana I\u015F\u0131k\\s*\u00B7?\\s*/i,'')].filter(Boolean).join(' \u00B7 ');keyNode.detail='Ana I\u015F\u0131k';}out.companionProductHandle=clean(candidate.handle);out.companionProductTitle=clean(candidate.title);out.companionIdentitySource='CANFOTO_PANEL_COMPANION_RESOLVER_R6';return out}catch(_){return schematic}}\r\n  function formatAlternativeWarning(v){var s=clean(v);if(!s)return '';s=s.replace(/^NORA\\s+Risk\\s+Uyar\u0131s\u0131\\s*/i,'');s=s.replace(/^(D\u00DC\u015E\u00DCK-ORTA|D\u00DC\u015E\u00DCK|ORTA-Y\u00DCKSEK|ORTA|Y\u00DCKSEK)(?=[A-Z\u00C7\u011E\u0130\u00D6\u015E\u00DC])/,'$1 \u2014 ');return 'NORA Risk Uyar\u0131s\u0131 \u00B7 '+s}\r\n  function scrapeAlternativeModel(root){root=root||modalRoot(false);if(!root)return null;var secondary=root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]:not([hidden])');if(!secondary)return null;var base=baseModel(root),altRoot=root.querySelector('[data-gdx-r34-cr07-a3-root=\"1\"]'),activeMode=altRoot&&altRoot.querySelector('[data-gdx-r34-cr07-a3-action=\"mode\"][aria-pressed=\"true\"]'),modeKey=clean(activeMode&&activeMode.getAttribute('data-gdx-r34-cr07-a3-mode-key')),modeLabel=clean(activeMode&&activeMode.textContent),kicker=clean((secondary.querySelector('.gdx-cr07-a3-secondary-kicker')||{}).textContent)||'NORA alternatifi';var reason=clean((secondary.querySelector('.gdx-cr07-a3-reason')||{}).textContent),warning=formatAlternativeWarning((secondary.querySelector('.gdx-cr07-a3-warning')||{}).textContent),companion=companionCandidateForShare(base),altSchematic=companionizeAlternativeSchematic(schematicModelFrom(secondary),companion);var model={version:VERSION,shareType:'alternative_setup',engine:'PANEL',title:base.title,lane:base.lane,purposeLabel:base.purposeLabel,purposeDescription:base.purposeDescription,strengths:base.strengths,productImageUrl:base.productImageUrl,variant:[kicker,modeLabel].filter(Boolean).join(' \u00B7 '),variantKey:'ALT',altMode:modeKey,summary:reason||'Alternatif kurulum, se\u00E7ili ama\u00E7 i\u00E7in farkl\u0131 \u0131\u015F\u0131k karakteri veya yerle\u015Fim yakla\u015F\u0131m\u0131 sunar.',metrics:alternativeRows(root),nora:[reason,warning].filter(Boolean).join(' ')||'Bu alternatif, se\u00E7ili ama\u00E7ta farkl\u0131 g\u00F6lge karakteri ve \u0131\u015F\u0131k dengesi i\u00E7in de\u011Ferlendirilir.',url:shareUrl(root,base.title,'ALT',modeKey),schematic:altSchematic,companionProduct:companion?{handle:clean(companion.handle),title:clean(companion.title)}:null,productKey:base.productKey,selection:base.selection};LAST_STATE.lastModel=model;return model}\r\n  function scrapeModel(kind){var root=modalRoot(false);if(!root)return null;return kind==='ALT'?scrapeAlternativeModel(root):scrapeMainModel(root)}\r\n  function ensureStyles(){if(document.getElementById('gdxPanelV4UniversalShareSetupStylesV15'))return;var st=document.createElement('style');st.id='gdxPanelV4UniversalShareSetupStylesV15';st.textContent=''\r\n    +'.gdx-panel-v4__setup-share-v15{margin:14px 0 4px;padding:13px 14px;border:1px solid rgba(34,211,238,.28);border-radius:16px;background:rgba(8,47,73,.22);color:inherit}'\r\n    +'.gdx-panel-v4__setup-share-v15.is-alt{border-color:rgba(244,114,182,.34);background:rgba(131,24,67,.10)}'\r\n    +'.gdx-panel-v4__setup-share-v15 .k{font-size:10px;font-weight:950;letter-spacing:.13em;color:#67e8f9}.gdx-panel-v4__setup-share-v15.is-alt .k{color:#f9a8d4}.gdx-panel-v4__setup-share-v15 h3{margin:4px 0 0;font-size:17px;color:inherit}.gdx-panel-v4__setup-share-v15 p{margin:7px 0 0;font-size:12px;line-height:1.45;color:inherit;opacity:.8}'\r\n    +'.gdx-panel-v4__setup-share-v15 .a{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}.gdx-panel-v4__setup-share-v15 button,.gdx-panel-v4__setup-share-v15 a{appearance:none;border:1px solid rgba(34,211,238,.28);border-radius:11px;padding:10px 13px;font:850 12px/1.1 Arial,sans-serif;cursor:pointer;text-decoration:none}.gdx-panel-v4__setup-share-v15 .primary{background:#0ea5b7;color:#fff}.gdx-panel-v4__setup-share-v15.is-alt .primary{background:#be2d78}.gdx-panel-v4__setup-share-v15 .secondary{background:rgba(2,6,23,.24);color:inherit}.gdx-panel-v4__setup-share-v15 .s{margin-top:8px;font-size:11px;opacity:.75}.gdx-panel-v4__setup-share-v15 .p{margin-top:10px;border-radius:12px;overflow:hidden;background:#020617;padding:8px}.gdx-panel-v4__setup-share-v15 .p img{display:block;width:100%;height:auto;border-radius:8px}'\r\n    +'@media(max-width:760px){.gdx-panel-v4__setup-share-v15{padding:11px}.gdx-panel-v4__setup-share-v15 .a>*{flex:1 1 145px;text-align:center}}';document.head.appendChild(st)}\r\n  function mountHtml(kind){return '<div class=\"k\">NORA \u00B7 '+(kind==='ALT'?'ALTERNAT\u0130F SETUP PAYLA\u015EIMI':'SETUP PAYLA\u015EIMI')+'</div><h3>'+(kind==='ALT'?'Bu alternatif kurulumu payla\u015F':'Bu kurulumu payla\u015F')+'</h3><p>\u00DCr\u00FCn, se\u00E7ilen ama\u00E7, g\u00FC\u00E7l\u00FC y\u00F6nler, \u015Fema, teknik de\u011Ferler, NORA notu, QR ve ba\u011Flant\u0131 tek 3:4 kartta haz\u0131rlan\u0131r.</p><div class=\"a\"><button class=\"primary\" data-p>Payla\u015F\u0131m Kart\u0131n\u0131 Haz\u0131rla</button><button class=\"secondary\" data-s hidden>\u015Eimdi Payla\u015F</button><a class=\"secondary\" data-d hidden>PNG \u0130ndir</a></div><div class=\"s\" data-status>Haz\u0131r de\u011Fil.</div><div class=\"p\" data-preview hidden></div>'}\r\n  function getMount(root,kind){if(!root)return null;kind=kind==='ALT'?'ALT':'MAIN';ensureStyles();var selector='[data-gdx-panel-v4-setup-share-v15=\"'+kind+'\"]',old=root.querySelector(selector);if(old)return old;var host;if(kind==='ALT'){host=root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]:not([hidden])');if(!host)return null}else{host=root.querySelector('.gdx-r11-modal-setup-wrap')||root.querySelector('.gdx-r11-modal-panel.is-setup')||root}var m=document.createElement('section');m.className='gdx-panel-v4__setup-share-v15'+(kind==='ALT'?' is-alt':'');m.dataset.gdxPanelV4SetupShareV15=kind;m.dataset.shareKind=kind;m.innerHTML=mountHtml(kind);if(kind==='ALT'){host.appendChild(m)}else{var anchor=host.querySelector('[data-gdx-r11-setup-intelligence=\"1\"]')||host.lastElementChild;if(anchor&&anchor.parentNode===host)host.insertBefore(m,anchor.nextSibling);else host.appendChild(m)}LAST_STATE.surfaceEverMounted=true;return m}\r\n  function rounded(ctx,x,y,w,h,r,fill,stroke,lw){ctx.beginPath();ctx.moveTo(x+r,y);ctx.arcTo(x+w,y,x+w,y+h,r);ctx.arcTo(x+w,y+h,x,y+h,r);ctx.arcTo(x,y+h,x,y,r);ctx.arcTo(x,y,x+w,y,r);ctx.closePath();if(fill){ctx.fillStyle=fill;ctx.fill()}if(stroke){ctx.strokeStyle=stroke;ctx.lineWidth=lw||1;ctx.stroke()}}\r\n  function text(ctx,t,x,y,o){o=o||{};ctx.fillStyle=o.color||'#eef8fb';ctx.font=o.font||'700 24px Arial';ctx.textAlign=o.align||'left';ctx.textBaseline='top';ctx.fillText(String(t||''),x,y)}\r\n  function wrap(ctx,t,x,y,w,lh,max,o){o=o||{};ctx.fillStyle=o.color||'#eef8fb';ctx.font=o.font||'700 24px Arial';ctx.textAlign=o.align||'left';ctx.textBaseline='top';var words=clean(t).split(' '),lines=[],line='';words.forEach(function(word){var test=line?line+' '+word:word;if(ctx.measureText(test).width>w&&line){lines.push(line);line=word}else line=test});if(line)lines.push(line);var clipped=lines.length>max;lines=lines.slice(0,max);if(clipped&&lines.length){var last=lines[lines.length-1];while(ctx.measureText(last+'\u2026').width>w&&last.length>1)last=last.slice(0,-1);lines[lines.length-1]=last+'\u2026'}lines.forEach(function(v,i){ctx.fillText(v,x,y+i*lh)});return lines.length}\r\n  function fitText(ctx,t,x,y,maxW,o){o=o||{};var value=clean(t),maxSize=Number(o.maxSize||14),minSize=Number(o.minSize||9),weight=clean(o.weight||'900'),family=clean(o.family||'Arial'),size=maxSize;ctx.save();ctx.fillStyle=o.color||'#fff';ctx.textAlign=o.align||'center';ctx.textBaseline=o.base||'top';while(size>minSize){ctx.font=weight+' '+size+'px '+family;if(ctx.measureText(value).width<=maxW)break;size=Math.max(minSize,size-.5)}ctx.font=weight+' '+size+'px '+family;var shown=value;if(ctx.measureText(shown).width>maxW){while(shown.length>1&&ctx.measureText(shown+'\u2026').width>maxW)shown=shown.slice(0,-1);shown=shown+'\u2026'}ctx.fillText(shown,x,y);ctx.restore();return{fontSize:size,text:shown,width:(function(){ctx.save();ctx.font=weight+' '+size+'px '+family;var w=ctx.measureText(shown).width;ctx.restore();return w})()}}\r\n\r\n  function roleFromMeta(meta){\r\n    var value=clean(meta);\r\n    if(!value)return'';\r\n    return clean(value.split('\u00B7')[0]||'')\r\n  }\r\n  function resolvedCompanionForShare(base){\r\n    var R=window.CANFOTO_PANEL_COMPANION_RESOLVER_R6||null;\r\n    var P=window.CANFOTO_R6_MOTOR_V27_PROFILE_PARITY||null;\r\n    if(!R||typeof R.resolve!=='function'||!P||typeof P.getState!=='function')return null;\r\n    var state=P.getState(),ps=state&&state.panel||{};\r\n    var setupId=clean(ps.lastSetupRecordId),handle=clean(base&&base.productKey)||clean(ps.lastProductHandle);\r\n    if(!setupId||!handle)return null;\r\n    var result=null;\r\n    try{result=R.resolve({setupRecordId:setupId,activeProductHandle:handle})}catch(_){result=null}\r\n    if(!result||result.ok!==true||!result.candidate||!clean(result.candidate.title)||!clean(result.companionRole&&result.companionRole.label))return null;\r\n    return{role:clean(result.companionRole.label),title:clean(result.candidate.title),roleKey:clean(result.roleKey)}\r\n  }\r\n  function noraWithCompanionIdentity(value,base){\r\n    var textValue=clean(value),comp=resolvedCompanionForShare(base);\r\n    if(!textValue||!comp)return textValue;\r\n    if(textValue.indexOf(comp.title)>-1)return textValue;\r\n    var generic=comp.role+' i\u00E7in ayr\u0131ca bir \u0131\u015F\u0131k gerekir; bu \u00FCr\u00FCn tek ba\u015F\u0131na t\u00FCm kurulumu olu\u015Fturmaz.';\r\n    var replacement=comp.role+' i\u00E7in '+comp.title+' \u00F6nerilir; bu ikinci \u0131\u015F\u0131k ayr\u0131 bir \u00FCr\u00FCnd\u00FCr ve paket i\u00E7eri\u011Fine dahil de\u011Fildir.';\r\n    if(textValue.indexOf(generic)>-1)return clean(textValue.replace(generic,replacement));\r\n    var roleEsc=comp.role.replace(/[.*+?^${}()|[\\]\\\\]/g,'\\\\$&');\r\n    return clean(textValue.replace(new RegExp(roleEsc+'\\\\s+i\u00E7in ayr\u0131ca bir \u0131\u015F\u0131k gerekir;[^.]*\\\\.','i'),replacement))\r\n  }\r\n  function liveV27SvgForModel(model){\r\n    if(model&&model.nlightPilot===true){\r\n      var nsvg=nlightLiveSvg();\r\n      if(!nsvg)return null;\r\n      var setup=clean(nsvg.getAttribute('data-r17c4-setup-key'));\r\n      var activeSlot=clean(nsvg.getAttribute('data-r17c4-active-slot-id'));\r\n      if(model.nlightSetupKey&&setup&&model.nlightSetupKey!==setup)return null;\r\n      if(model.nlightActiveSlotId&&activeSlot&&model.nlightActiveSlotId!==activeSlot)return null;\r\n      return nsvg\r\n    }\r\n\r\n    /* FS1R-R5.3\r\n       MAIN share reads only the CURRENT open setup modal.\r\n       R5.2 can expose a valid canonical V27 SVG before the R61 decorator has\r\n       attached its final data-r61-* identity. The old global selector treated\r\n       that valid current SVG as missing and allowed a placeholder PNG.\r\n\r\n       Read-only bridge:\r\n       - prefer final R61 exact SVG;\r\n       - otherwise accept the current modal canonical V27 SVG;\r\n       - never scan compare/PDP/outside-modal surfaces;\r\n       - verify product/setup identity whenever IDs are available.\r\n       No score/ranking/setup truth/geometry mutation. */\r\n    var root=modalRoot(false);\r\n    if(!root)return null;\r\n\r\n    var selectors=[\r\n      'svg[data-r61-profile-parity=\"1\"][data-r61-engine=\"PANEL_LED_V4\"]',\r\n      '[data-gdx-panel-af04-distance-canvas=\"1\"] > svg.nps-svg',\r\n      '[data-gdx-r33-cr02-compact-schema-slot=\"1\"] svg.nps-svg',\r\n      'svg[data-gdx-panel-r4c-v27-svg=\"1\"]',\r\n      'svg.nps-svg'\r\n    ];\r\n\r\n    var svg=null;\r\n    for(var i=0;i<selectors.length;i+=1){\r\n      svg=root.querySelector(selectors[i]);\r\n      if(svg)break\r\n    }\r\n    if(!svg)return null;\r\n\r\n    var host=root.querySelector('[data-gdx-panel-r30a-setup-visual=\"1\"]');\r\n    var canvas=svg.closest&&svg.closest('[data-gdx-panel-af04-distance-canvas=\"1\"]');\r\n    var bridge=window.CANFOTO_R6_MOTOR_V27_PROFILE_PARITY||null;\r\n    var bridgeState=null;\r\n    try{\r\n      bridgeState=bridge&&typeof bridge.getState==='function'?bridge.getState():null\r\n    }catch(_){bridgeState=null}\r\n    var panelState=bridgeState&&bridgeState.panel||{};\r\n\r\n    var sid=clean(\r\n      (svg.dataset&&svg.dataset.setupRecordId)||\r\n      (canvas&&canvas.getAttribute('data-r61-v27-setup-record-id'))||\r\n      panelState.lastSetupRecordId||''\r\n    );\r\n    var handle=clean(\r\n      (svg.dataset&&svg.dataset.r61ProductHandle)||\r\n      (host&&host.getAttribute('data-gdx-panel-r30a-product-key'))||\r\n      panelState.lastProductHandle||''\r\n    );\r\n\r\n    var msid=clean(model&&model.schematic&&model.schematic.setupRecordId)||clean(panelState.lastSetupRecordId);\r\n    var mh=clean(model&&model.productKey)||clean(model&&model.schematic&&model.schematic.productHandle)||clean(host&&host.getAttribute('data-gdx-panel-r30a-product-key'));\r\n\r\n    if(msid&&sid&&msid!==sid)return null;\r\n    if(mh&&handle&&mh!==handle)return null;\r\n\r\n    return svg\r\n  }\r\n  function inlineSvgComputedStyles(source,clone){\r\n    var srcNodes=[source].concat([].slice.call(source.querySelectorAll('*')));\r\n    var dstNodes=[clone].concat([].slice.call(clone.querySelectorAll('*')));\r\n    var props=[\r\n      'fill','fill-opacity','stroke','stroke-opacity','stroke-width','stroke-dasharray',\r\n      'stroke-linecap','stroke-linejoin','opacity','font-family','font-size','font-weight',\r\n      'font-style','text-anchor','dominant-baseline','paint-order','visibility','display'\r\n    ];\r\n    srcNodes.forEach(function(src,i){\r\n      var dst=dstNodes[i];if(!dst)return;\r\n      var cs=getComputedStyle(src);\r\n      props.forEach(function(prop){\r\n        var value=cs.getPropertyValue(prop);\r\n        if(value)dst.style.setProperty(prop,value)\r\n      });\r\n      dst.style.setProperty('animation','none');\r\n      dst.style.setProperty('transition','none')\r\n    })\r\n  }\r\n  function svgNodeBBox(node){\r\n    if(!node||typeof node.getBBox!=='function')return null;\r\n    try{\r\n      var b=node.getBBox();\r\n      if(!b||![b.x,b.y,b.width,b.height].every(Number.isFinite))return null;\r\n      return{x:b.x,y:b.y,w:b.width,h:b.height}\r\n    }catch(_){return null}\r\n  }\r\n  function mergeBox(box,next){\r\n    if(!next)return box;\r\n    if(!box)return{x:next.x,y:next.y,w:next.w,h:next.h};\r\n    var x1=Math.min(box.x,next.x),y1=Math.min(box.y,next.y),x2=Math.max(box.x+box.w,next.x+next.w),y2=Math.max(box.y+box.h,next.y+next.h);\r\n    return{x:x1,y:y1,w:x2-x1,h:y2-y1}\r\n  }\r\n  function padBox(box,padX,padY,maxW,maxH){\r\n    if(!box)return null;\r\n    padX=Number.isFinite(Number(padX))?Number(padX):0;\r\n    padY=Number.isFinite(Number(padY))?Number(padY):0;\r\n    var x=Math.max(0,box.x-padX),y=Math.max(0,box.y-padY),x2=Math.min(maxW,box.x+box.w+padX),y2=Math.min(maxH,box.y+box.h+padY);\r\n    return{x:x,y:y,w:Math.max(1,x2-x),h:Math.max(1,y2-y)}\r\n  }\r\n  function liveV27ShareCropBox(svg,vw,vh){\r\n    if(!svg)return null;\r\n    var selectors=[\r\n      'circle.light-ring','text.fixture-label','[data-r16d-role-caption=\"1\"]','[data-r17c3-role-caption=\"1\"]',\r\n      'g.kelvin-badge','g.meter-label','text.small-label','.subject','.subject-text',\r\n      '.camera','.camera-text','.bg-plane','.bg-patch','.bg-label','.nlight-beam'\r\n    ];\r\n    var box=null;\r\n    selectors.forEach(function(sel){\r\n      [].slice.call(svg.querySelectorAll(sel)).forEach(function(node){\r\n        box=mergeBox(box,svgNodeBBox(node))\r\n      })\r\n    });\r\n    if(!box)return null;\r\n\r\n    /*\r\n      R1.6D.1C CLIP GUARD\r\n      Share-only typography enlarges fixture names after the live SVG is cloned.\r\n      A horizontal crop derived from the smaller live text can therefore cut the\r\n      enlarged product short names. Keep the ORIGINAL V27 full width and crop\r\n      only vertically. Because this card is height-limited, preserving full\r\n      width does not materially reduce the useful scale for the current 980\u00D71220\r\n      V27 share scene, but it guarantees left/right label safety.\r\n    */\r\n    var padded=padBox(box,0,58,vw,vh);\r\n    if(!padded)return null;\r\n    var minH=vh*0.56;\r\n    var cy=padded.y+padded.h/2;\r\n    var finalH=Math.max(padded.h,minH);\r\n    var fy=Math.max(0,Math.min(vh-finalH,cy-finalH/2));\r\n    return{x:0,y:fy,w:vw,h:Math.min(vh,finalH)}\r\n  }\r\n  function calibrateShareV27CloneTypography(clone){\r\n    if(!clone)return;\r\n\r\n    function setStyle(selector,prop,value){\r\n      [].slice.call(clone.querySelectorAll(selector)).forEach(function(node){\r\n        node.style.setProperty(prop,value,'important')\r\n      })\r\n    }\r\n\r\n    /* Product identity + role are the primary reading hierarchy. */\r\n    setStyle('text.fixture-label','font-size','27px');\r\n    setStyle('text.fixture-label','font-weight','900');\r\n    setStyle('text.fixture-label','stroke-width','3.4px');\r\n\r\n    setStyle('[data-r16d-role-caption=\"1\"],[data-r17c3-role-caption=\"1\"]','font-size','21px');\r\n    setStyle('[data-r16d-role-caption=\"1\"],[data-r17c3-role-caption=\"1\"]','font-weight','900');\r\n    setStyle('[data-r16d-role-caption=\"1\"],[data-r17c3-role-caption=\"1\"]','stroke-width','3px');\r\n\r\n    /* Technical labels are enlarged, but stay secondary to product identity. */\r\n    setStyle('text.small-label','font-size','17px');\r\n    setStyle('g.meter-label text','font-size','17px');\r\n    setStyle('g.kelvin-badge text','font-size','17px');\r\n    setStyle('.subject-text','font-size','22px');\r\n    setStyle('.camera-text','font-size','20px');\r\n    setStyle('.bg-label','font-size','16px');\r\n\r\n    /* Keep text readable over beams/grid after rasterization. */\r\n    [\r\n      'text.fixture-label',\r\n      '[data-r16d-role-caption=\"1\"],[data-r17c3-role-caption=\"1\"]',\r\n      'text.small-label',\r\n      '.subject-text',\r\n      '.camera-text',\r\n      '.bg-label'\r\n    ].forEach(function(selector){\r\n      [].slice.call(clone.querySelectorAll(selector)).forEach(function(node){\r\n        node.style.setProperty('paint-order','stroke','important');\r\n        if(!node.style.getPropertyValue('stroke')){\r\n          node.style.setProperty('stroke','rgba(2,6,23,.86)','important')\r\n        }\r\n        node.style.setProperty('stroke-linejoin','round','important')\r\n      })\r\n    });\r\n\r\n    clone.dataset.shareTypographyCalibration='R1.7C.4C';\r\n  }\r\n\r\n  function fitShareFixtureLabelsToViewBox(clone,viewX,viewW){\r\n    if(!clone)return;\r\n    var labels=[].slice.call(clone.querySelectorAll('text.fixture-label'));\r\n    if(!labels.length)return;\r\n    var measureCanvas=document.createElement('canvas');\r\n    var mctx=measureCanvas.getContext&&measureCanvas.getContext('2d');\r\n    labels.forEach(function(node){\r\n      var x=Number(node.getAttribute('x'));\r\n      if(!Number.isFinite(x))return;\r\n      var textValue=clean(node.textContent);\r\n      if(!textValue)return;\r\n      var leftRoom=Math.max(1,x-viewX-14),rightRoom=Math.max(1,(viewX+viewW)-x-14),maxTextWidth=2*Math.min(leftRoom,rightRoom);\r\n      var fontPx=27;\r\n      if(mctx){\r\n        mctx.font='900 '+fontPx+'px Arial';\r\n        var measured=mctx.measureText(textValue).width;\r\n        if(measured>maxTextWidth){\r\n          fontPx=Math.max(22,Math.floor(fontPx*(maxTextWidth/measured)))\r\n        }\r\n      }\r\n      node.style.setProperty('font-size',fontPx+'px','important');\r\n      node.dataset.shareFittedFontPx=String(fontPx)\r\n    })\r\n  }\r\n\r\n  function drawLiveV27Schematic(ctx,model,x,y,w,h){\r\n    return new Promise(function(resolve){\r\n      var svg=liveV27SvgForModel(model);\r\n      if(!svg)return resolve(false);\r\n      try{\r\n        var clone=svg.cloneNode(true);\r\n        clone.setAttribute('xmlns','http://www.w3.org/2000/svg');\r\n        inlineSvgComputedStyles(svg,clone);\r\n        calibrateShareV27CloneTypography(clone);\r\n        var vb=(clone.getAttribute('viewBox')||'0 0 980 650').trim().split(/\\s+/).map(Number);\r\n        var baseX=Number(vb[0]||0),baseY=Number(vb[1]||0),vw=Number(vb[2]||980),vh=Number(vb[3]||650);\r\n        var crop=liveV27ShareCropBox(svg,vw,vh);\r\n        var viewX=baseX+(crop?crop.x:0),viewY=baseY+(crop?crop.y:0),viewW=crop?crop.w:vw,viewH=crop?crop.h:vh;\r\n        fitShareFixtureLabelsToViewBox(clone,viewX,viewW);\r\n        clone.setAttribute('viewBox',[viewX,viewY,viewW,viewH].join(' '));\r\n        clone.setAttribute('width',String(viewW));\r\n        clone.setAttribute('height',String(viewH));\r\n        clone.setAttribute('preserveAspectRatio','xMidYMid meet');\r\n        var raw=new XMLSerializer().serializeToString(clone);\r\n        var blob=new Blob([raw],{type:'image/svg+xml;charset=utf-8'});\r\n        var url=URL.createObjectURL(blob),img=new Image();\r\n        img.onload=function(){\r\n          try{\r\n            ctx.save();\r\n            ctx.beginPath();ctx.rect(x,y,w,h);ctx.clip();\r\n            ctx.fillStyle='#06111c';ctx.fillRect(x,y,w,h);\r\n            var scale=Math.min(w/viewW,h/viewH),dw=viewW*scale,dh=viewH*scale;\r\n            ctx.drawImage(img,x+(w-dw)/2,y+(h-dh)/2,dw,dh);\r\n            ctx.restore();\r\n            URL.revokeObjectURL(url);\r\n            resolve(true)\r\n          }catch(_){\r\n            try{URL.revokeObjectURL(url)}catch(__){}\r\n            resolve(false)\r\n          }\r\n        };\r\n        img.onerror=function(){try{URL.revokeObjectURL(url)}catch(_){}resolve(false)};\r\n        img.src=url\r\n      }catch(_){resolve(false)}\r\n    })\r\n  }\r\n\r\n  function drawRemoteImage(ctx,url,x,y,w,h){if(!url)return Promise.resolve(false);return fetch(url,{mode:'cors',credentials:'omit'}).then(function(r){if(!r.ok)throw new Error('IMAGE_HTTP_'+r.status);return r.blob()}).then(function(blob){return new Promise(function(resolve){var u=URL.createObjectURL(blob),img=new Image();img.onload=function(){var scale=Math.min(w/img.width,h/img.height),dw=img.width*scale,dh=img.height*scale;ctx.save();ctx.fillStyle='#fff';ctx.fillRect(x,y,w,h);ctx.drawImage(img,x+(w-dw)/2,y+(h-dh)/2,dw,dh);ctx.restore();URL.revokeObjectURL(u);resolve(true)};img.onerror=function(){URL.revokeObjectURL(u);resolve(false)};img.src=u})}).catch(function(){return false})}\r\n  function drawSchematic(ctx,model,x,y,w,h){\r\n    if(!ctx||!model||!Array.isArray(model.nodes)||!model.nodes.length)return false;\r\n    var lights=model.nodes.filter(function(n){return n.type==='light'}),subject=model.nodes.find(function(n){return n.type==='subject'}),camera=model.nodes.find(function(n){return n.type==='camera'});\r\n    var background=model&&model.background&&model.background.active?model.background:null;\r\n    var semantics=model&&model.targetSemantics||{};\r\n    function pxX(p){return x+(p/100)*w}\r\n    function pxY(p){return y+(p/100)*h}\r\n    function bgPoint(line,t){return line?[pxX(line.x1+(line.x2-line.x1)*t),pxY(line.y1+(line.y2-line.y1)*t)]:null}\r\n    function lerp(a,b,t){return a+(b-a)*t}\r\n    function parseDistance(meta){var mt=String(meta||'').match(/(\\d+[\\.,]?\\d*)\\s*m/i);return mt?mt[1].replace('.',',')+' m':''}\r\n    function parseAngle(meta,fallback){var mt=String(meta||'').match(/(\\d+)\\s*\u00B0/);return mt?mt[1]+'\u00B0':fallback}\r\n    function findLight(kind){return lights.find(function(n){return n.subtype===kind})||lights.find(function(n){return kind==='key'?n.subtype!=='rgb':n.subtype==='rgb'})||null}\r\n    function chip(value,cx,cy,opts){\r\n      if(!value)return; opts=opts||{};\r\n      var font=opts.font||'900 10px Arial';ctx.save();ctx.font=font;var tw=Math.ceil(ctx.measureText(String(value)).width);ctx.restore();\r\n      var bw=Math.max(opts.minWidth||52,tw+18),bh=opts.height||22;\r\n      rounded(ctx,cx-bw/2,cy-bh/2,bw,bh,bh/2,opts.fill||'#081825',opts.stroke||'rgba(255,255,255,.24)',1.1);\r\n      text(ctx,String(value),cx,cy-6,{font:font,color:opts.color||'#fff',align:'center'});\r\n    }\r\n    function lineToTarget(light,tx,ty,kind){\r\n      if(!light)return;var lx=pxX(light.x),ly=pxY(light.y),dx=tx-lx,dy=ty-ly,len=Math.sqrt(dx*dx+dy*dy)||1,nx=-dy/len,ny=dx/len;\r\n      if(kind==='key'){\r\n        var spread=24;ctx.save();ctx.fillStyle='rgba(174,255,214,.12)';ctx.beginPath();ctx.moveTo(lx+nx*5,ly+ny*5);ctx.lineTo(tx+nx*spread,ty+ny*spread);ctx.lineTo(tx-nx*spread,ty-ny*spread);ctx.lineTo(lx-nx*5,ly-ny*5);ctx.closePath();ctx.fill();ctx.restore();\r\n        ctx.strokeStyle='#7bd8a6';ctx.lineWidth=3;ctx.beginPath();ctx.moveTo(lx,ly);ctx.lineTo(tx,ty);ctx.stroke();\r\n      }else{\r\n        ctx.save();ctx.setLineDash([8,7]);ctx.strokeStyle='#d946ef';ctx.lineWidth=3;\r\n        [-6,6].forEach(function(off){ctx.beginPath();ctx.moveTo(lx+nx*off,ly+ny*off);ctx.lineTo(tx+nx*off,ty+ny*off);ctx.stroke()});\r\n        ctx.restore();\r\n      }\r\n    }\r\n    var key=findLight('key'),rgb=findLight('rgb');\r\n    var keyDist=parseDistance(key&&key.meta),rgbDist=parseDistance(rgb&&rgb.meta),camDist=parseDistance(camera&&camera.meta);\r\n    ctx.save();\r\n    /* Hard clip: live V27 sahnesindeki gibi hi\u00E7bir ring/beam ba\u015Fl\u0131k alan\u0131na ta\u015Famaz. */\r\n    ctx.beginPath();ctx.rect(x,y,w,h);ctx.clip();\r\n    var grad=ctx.createLinearGradient(x,y,x,y+h);grad.addColorStop(0,'#06111c');grad.addColorStop(1,'#071624');ctx.fillStyle=grad;ctx.fillRect(x,y,w,h);\r\n    ctx.strokeStyle='rgba(50,101,133,.18)';ctx.lineWidth=1;\r\n    for(var gx=0;gx<=18;gx++){ctx.beginPath();ctx.moveTo(x+gx*w/18,y);ctx.lineTo(x+gx*w/18,y+h);ctx.stroke()}\r\n    for(var gy=0;gy<=10;gy++){ctx.beginPath();ctx.moveTo(x,y+gy*h/10);ctx.lineTo(x+w,y+gy*h/10);ctx.stroke()}\r\n    if(subject){\r\n      var sx=pxX(subject.x),sy=pxY(subject.y);[0.13,0.23,0.33,0.45,0.60].forEach(function(r){ctx.beginPath();ctx.setLineDash([7,7]);ctx.strokeStyle='rgba(34,142,191,.42)';ctx.lineWidth=1.5;ctx.arc(sx,sy,Math.min(w,h)*r,0,Math.PI*2);ctx.stroke()});ctx.setLineDash([]);\r\n    }\r\n    if(background){\r\n      var bl=bgPoint(background.plane,0),br=bgPoint(background.plane,1),pl=bgPoint(background.patch,0),pr=bgPoint(background.patch,1);\r\n      if(bl&&br){ctx.strokeStyle='#7898ae';ctx.lineWidth=8;ctx.lineCap='round';ctx.beginPath();ctx.moveTo(bl[0],bl[1]);ctx.lineTo(br[0],br[1]);ctx.stroke();text(ctx,background.label||'KAMERADA G\u00D6R\u00DCNEN ARKA FON',(bl[0]+br[0])/2,Math.max(y+8,bl[1]-21),{font:'900 10px Arial',color:'#9cb2c3',align:'center'})}\r\n      if(pl&&pr){ctx.strokeStyle='#d946ef';ctx.lineWidth=10;ctx.beginPath();ctx.moveTo(pl[0],pl[1]);ctx.lineTo(pr[0],pr[1]);ctx.stroke()}ctx.lineCap='butt';\r\n    }\r\n    if(subject){\r\n      var stx=pxX(subject.x),sty=pxY(subject.y);\r\n      if(key)lineToTarget(key,stx,sty,'key');\r\n      if(rgb){var rtx=stx,rty=sty;if(semantics.secondaryTargetClass==='BACKGROUND_PLANE_OR_PATCH'&&background&&background.patch){var bp=bgPoint(background.patch,.5);if(bp){rtx=bp[0];rty=bp[1]}}else if(semantics.secondaryTargetClass==='SUBJECT_EDGE'){var ddx=pxX(rgb.x)-stx,ddy=pxY(rgb.y)-sty,ll=Math.sqrt(ddx*ddx+ddy*ddy)||1;rtx=stx+(ddx/ll)*28;rty=sty+(ddy/ll)*28}lineToTarget(rgb,rtx,rty,'rgb')}\r\n      if(camera){var cx=pxX(camera.x),cy=pxY(camera.y),vx=stx-cx,vy=sty-cy,vlen=Math.sqrt(vx*vx+vy*vy)||1,nx=-vy/vlen,ny=vx/vlen,spread=37;ctx.save();ctx.fillStyle='rgba(74,144,226,.12)';ctx.beginPath();ctx.moveTo(cx,cy);ctx.lineTo(stx+nx*spread,sty+ny*spread);ctx.lineTo(stx-nx*spread,sty-ny*spread);ctx.closePath();ctx.fill();ctx.restore();ctx.strokeStyle='#6ca0dd';ctx.lineWidth=2.5;ctx.setLineDash([7,7]);ctx.beginPath();ctx.moveTo(cx,cy);ctx.lineTo(stx,sty);ctx.stroke();ctx.setLineDash([])}\r\n    }\r\n    function liveNode(n){\r\n      var cx=pxX(n.x),cy=pxY(n.y);\r\n      if(n.type==='subject'){rounded(ctx,cx-36,cy-29,72,58,13,'#59626a','#d9e4eb',3);text(ctx,n.role,cx,cy-2,{font:'900 15px Arial',color:'#fff',align:'center'});return}\r\n      if(n.type==='camera'){rounded(ctx,cx-48,cy-23,96,46,12,'#5f87be','#8fb1de',1.5);text(ctx,'KAMERA',cx,cy-5,{font:'900 14px Arial',color:'#fff',align:'center'});if(camDist)text(ctx,camDist,cx,cy+10,{font:'900 11px Arial',color:'#fff',align:'center'});return}\r\n      var isRgb=n.subtype==='rgb',outer=27,inner=10;\r\n      ctx.beginPath();ctx.fillStyle='#2b3540';ctx.arc(cx,cy,outer,0,Math.PI*2);ctx.fill();\r\n      ctx.beginPath();ctx.fillStyle=isRgb?'#c83cdb':'#ff3b30';ctx.arc(cx,cy,inner,0,Math.PI*2);ctx.fill();\r\n      var alignRight=cx>x+w*.70;var labelX=alignRight?cx-7:cx;var labelY=cy+outer+7;\r\n      fitText(ctx,n.role,labelX,labelY,150,{maxSize:11,minSize:8.5,weight:'900',family:'Arial',color:'#f4fbff',align:alignRight?'right':'center'});\r\n      var roleCaption=roleFromMeta(n.meta);\r\n      if(roleCaption&&roleCaption!==clean(n.role)){\r\n        fitText(ctx,roleCaption,labelX,labelY+14,150,{maxSize:9.5,minSize:8,weight:'900',family:'Arial',color:isRgb?'#d88bff':'#67d9ef',align:alignRight?'right':'center'});\r\n      }\r\n    }\r\n    lights.forEach(liveNode);if(subject)liveNode(subject);if(camera)liveNode(camera);\r\n    if(subject&&key&&keyDist)chip(keyDist,lerp(pxX(key.x),pxX(subject.x),.48),lerp(pxY(key.y),pxY(subject.y),.48)-9,{fill:'#101b27'});\r\n    if(rgb&&rgbDist){var end=subject?[pxX(subject.x),pxY(subject.y)]:null;if(semantics.secondaryTargetClass==='BACKGROUND_PLANE_OR_PATCH'&&background&&background.patch)end=bgPoint(background.patch,.5);if(end)chip(rgbDist,lerp(pxX(rgb.x),end[0],.55),lerp(pxY(rgb.y),end[1],.55)+7,{fill:'#351045',stroke:'rgba(217,70,239,.42)'})}\r\n    if(background&&subject){var bmid=bgPoint(background.plane,.5);if(bmid)chip('Konu\u2013Fon 0,72 m',pxX(subject.x)-8,bmid[1]+34,{fill:'#392300',stroke:'rgba(245,158,11,.45)',color:'#f7b513',font:'900 9.5px Arial',minWidth:96})}\r\n    if(key)chip(parseAngle(key.meta,'45\u00B0')+' \u00B7 tilt bilgisi yok',pxX(key.x)+10,pxY(key.y)-44,{fill:'#2e3540',font:'900 9px Arial',minWidth:100,color:'#d0d8e2'});\r\n    if(rgb)chip(parseAngle(rgb.meta,'120\u00B0')+' \u00B7 tilt bilgisi yok',pxX(rgb.x)-2,pxY(rgb.y)-44,{fill:'#2e3540',font:'900 9px Arial',minWidth:104,color:'#d0d8e2'});\r\n    var secondary=lights.find(function(n){return n!==key})||null;\r\n    var secondRole=secondary?(roleFromMeta(secondary.meta)||(secondary.subtype==='rgb'?'RGB Arka / Kenar':'\u0130kinci I\u015F\u0131k')):'';\r\n    var secondColor=secondary&&secondary.subtype==='rgb'?'#c084fc':'#67d9ef';\r\n    var legendRows=[['#63e9c0',key?(roleFromMeta(key.meta)||'Ana I\u015F\u0131k'):'Ana I\u015F\u0131k']];\r\n    if(secondary)legendRows.push([secondColor,secondRole]);\r\n    legendRows.push(['#facc15','Kamera']);\r\n    var legendY=y+h-18,lx=x+10;legendRows.forEach(function(row,i){ctx.beginPath();ctx.fillStyle=row[0];ctx.arc(lx,legendY,4.5,0,Math.PI*2);ctx.fill();text(ctx,row[1],lx+36,legendY-7,{font:'900 10px Arial',color:'#dceff1',align:'center'});lx+=Math.max(88,Math.min(138,clean(row[1]).length*6.4+52))});\r\n    ctx.restore();return true;\r\n  }\r\n  function renderCard(model){var c=document.createElement('canvas');c.width=CARD_W;c.height=CARD_H;var ctx=c.getContext('2d');if(!ctx)return Promise.resolve(null);var isAlt=model.variantKey==='ALT';var g=ctx.createLinearGradient(0,0,1080,1440);g.addColorStop(0,isAlt?'#170b18':'#031517');g.addColorStop(.62,isAlt?'#32142b':'#062a2d');g.addColorStop(1,'#071119');ctx.fillStyle=g;ctx.fillRect(0,0,1080,1440);rounded(ctx,42,42,996,1356,30,isAlt?'#24101f':'#0a2428',isAlt?'#b93b86':'#1b8e89',2);text(ctx,'NORA \u00B7 PANEL LED '+(isAlt?'ALTERNAT\u0130F KURULUM':'KURULUM')+' PAYLA\u015EIMI',76,74,{font:'900 24px Arial',color:isAlt?'#f9a8d4':'#63f1d7'});wrap(ctx,model.title,76,112,700,43,2,{font:'900 38px Arial',color:'#fff'});rounded(ctx,820,76,184,150,20,'#fff',isAlt?'#e879b9':'#2f8d88',2);var productPromise=drawRemoteImage(ctx,model.productImageUrl,832,88,160,126).then(function(ok){if(!ok)text(ctx,'\u00DCR\u00DCN',912,132,{font:'900 24px Arial',color:'#12304d',align:'center'})});rounded(ctx,76,214,600,42,21,isAlt?'#4a1d3d':'#103b3a',isAlt?'#b93b86':'#287b75',1);text(ctx,model.variant||model.lane,376,225,{font:'850 16px Arial',color:'#fff',align:'center'});rounded(ctx,76,278,928,142,20,isAlt?'#32182b':'#0d3435',isAlt?'#873460':'#265f5d',1);text(ctx,'SE\u00C7\u0130LEN AMA\u00C7 \u00B7 '+model.purposeLabel,100,300,{font:'900 18px Arial',color:'#ffd65c'});wrap(ctx,model.purposeDescription,100,330,860,25,2,{font:'700 15px Arial',color:'#eefcf8'});var strong=clean((model.strengths||[])[0]||'');if(strong){text(ctx,'BU AMA\u00C7 \u0130\u00C7\u0130N G\u00DC\u00C7L\u00DC',100,382,{font:'900 12px Arial',color:isAlt?'#f9a8d4':'#63f1d7'});wrap(ctx,strong,265,380,695,22,2,{font:'700 14px Arial',color:'#dbeceb'})}\r\n    rounded(ctx,76,442,714,556,24,isAlt?'#140b14':'#071b20',isAlt?'#b93b86':'#2f8d88',2);text(ctx,isAlt?'ALTERNAT\u0130F KURULUM \u015EEMASI':'\u00D6NER\u0130LEN SETUP \u015EEMASI',104,468,{font:'900 22px Arial',color:'#eafff8'});rounded(ctx,814,442,190,190,20,'#fff',isAlt?'#e879b9':'#2f8d88',2);var qr=qrApi();if(qr&&qr.ready&&typeof qr.drawToCanvas==='function')qr.drawToCanvas(ctx,model.url,832,460,154,{background:'#fff',foreground:'#020617',quiet:4});else text(ctx,'QR',909,514,{font:'900 56px Arial',color:'#12304d',align:'center'});text(ctx,'CANFOTO.COM',909,646,{font:'900 17px Arial',color:isAlt?'#f9a8d4':'#63f1d7',align:'center'});var schematicPromise=(isAlt?Promise.resolve(false):drawLiveV27Schematic(ctx,model,90,504,686,466)).then(function(drawn){if(!drawn)drawn=drawSchematic(ctx,model.schematic,90,504,686,466);return !!drawn});rounded(ctx,814,688,190,310,20,isAlt?'#38172f':'#0d3435',isAlt?'#843b69':'#265f5d',1);text(ctx,'SETUP DE\u011EERLER\u0130',832,712,{font:'900 15px Arial',color:'#ffd65c'});(model.metrics||[]).slice(0,5).forEach(function(row,i){var yy=744+i*46;text(ctx,row.label,832,yy,{font:'800 9px Arial',color:isAlt?'#f2b5d5':'#9adbd3'});wrap(ctx,row.value,832,yy+12,154,13,2,{font:'750 9px Arial',color:'#fff'})});rounded(ctx,76,1026,928,250,24,isAlt?'#261121':'#082a2d',isAlt?'#b93b86':'#1b8e89',1.5);text(ctx,'NORA NOTU',104,1054,{font:'900 22px Arial',color:isAlt?'#f9a8d4':'#63f1d7'});wrap(ctx,model.nora,104,1094,870,29,5,{font:'700 17px Arial',color:'#eefcf8'});text(ctx,'CANFOTO.COM',540,1340,{font:'900 31px Arial',color:isAlt?'#f9a8d4':'#63f1d7',align:'center'});return Promise.all([productPromise,schematicPromise]).then(function(results){if(!results||results[1]!==true)return null;return new Promise(function(resolve){c.toBlob(function(blob){if(!blob)return resolve(null);resolve({canvas:c,blob:blob,dataUrl:c.toDataURL('image/png'),model:model,liveSvgParity:model.variantKey==='MAIN',schematicRendered:true})},'image/png',1)})})}\r\n  function status(m,msg){var e=m&&m.querySelector('[data-status]');if(e)e.textContent=clean(msg)}\r\n  function preparedUi(m,p){var pv=m.querySelector('[data-preview]'),s=m.querySelector('[data-s]'),d=m.querySelector('[data-d]');pv.hidden=!p;pv.innerHTML=p?'<img src=\"'+esc(p.dataUrl)+'\" alt=\"Panel kurulum payla\u015F\u0131m kart\u0131\">':'';s.hidden=!p;d.hidden=!p;if(p){d.href=p.dataUrl;d.download='canfoto-panel-kurulum-paylasim-karti.png'}}\r\n  function copyText(v){if(navigator.clipboard&&navigator.clipboard.writeText)return navigator.clipboard.writeText(v);var a=document.createElement('textarea');a.value=v;a.style.position='fixed';a.style.opacity='0';document.body.appendChild(a);a.select();document.execCommand('copy');a.remove();return Promise.resolve()}\r\n  function prepare(kind){kind=kind==='ALT'?'ALT':'MAIN';var root=modalRoot(false),m=getMount(root,kind),model=scrapeModel(kind);if(!m||!model)return Promise.resolve({ok:false,code:'NO_OPEN_SETUP',version:VERSION,kind:kind});status(m,'Payla\u015F\u0131m kart\u0131 haz\u0131rlan\u0131yor...');return renderCard(model).then(function(p){LAST_STATE.prepared=p;preparedUi(m,p);status(m,p?'Payla\u015F\u0131m kart\u0131 haz\u0131r.':'Setup \u015Femas\u0131 haz\u0131r de\u011Fil; eksik kart olu\u015Fturulmad\u0131.');return{ok:!!p,code:p?'':'SCHEMATIC_NOT_READY',version:VERSION,kind:kind,metricCount:model.metrics.length,schematicIncluded:!!(model.schematic&&model.schematic.nodes&&model.schematic.nodes.length),schematicRendered:!!(p&&p.schematicRendered),nlightPilot:model.nlightPilot===true,nlightSetupKey:model.nlightSetupKey||'',nlightSceneSignature:model.nlightSceneSignature||'',liveSvgParity:!!(p&&p.liveSvgParity),url:model.url}})}\r\n  function shareNow(){var p=LAST_STATE.prepared;if(!p)return Promise.resolve({ok:false,code:'NOT_PREPARED',version:VERSION});var f=typeof File==='function'?new File([p.blob],'canfoto-panel-'+(p.model.variantKey==='ALT'?'alternatif-':'')+'kurulum-paylasim-karti.png',{type:'image/png'}):null;if(f&&navigator.share&&(!navigator.canShare||navigator.canShare({files:[f]})))return navigator.share({title:p.model.title,text:[p.model.purposeLabel,p.model.nora].filter(Boolean).join(' \u2014 '),url:p.model.url,files:[f]}).then(function(){return{ok:true,method:'NATIVE_FILE',version:VERSION}}).catch(function(e){return{ok:false,code:e&&e.name==='AbortError'?'CANCELLED':'FAILED',version:VERSION}});var a=document.createElement('a');a.href=p.dataUrl;a.download='canfoto-panel-'+(p.model.variantKey==='ALT'?'alternatif-':'')+'kurulum-paylasim-karti.png';document.body.appendChild(a);a.click();a.remove();return copyText([p.model.title,p.model.purposeLabel,p.model.nora,p.model.url].filter(Boolean).join('\\n')).then(function(){return{ok:true,method:'DOWNLOAD_AND_COPY',version:VERSION}})}\r\n  function bind(m){if(!m||m.__v15)return;m.__v15=true;m.addEventListener('click',function(e){var kind=m.dataset.shareKind||'MAIN';if(e.target.closest('[data-p]')){e.preventDefault();prepare(kind)}else if(e.target.closest('[data-s]')){e.preventDefault();shareNow()}})}\r\n  function refresh(){var root=modalRoot(false);if(!root)return false;var main=scrapeMainModel(root),mainMount=getMount(root,'MAIN');bind(mainMount);var secondary=root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]:not([hidden])');if(secondary){var alt=scrapeAlternativeModel(root),altMount=getMount(root,'ALT');bind(altMount);if(alt)LAST_STATE.lastModel=alt}else if(main)LAST_STATE.lastModel=main;return true}\r\n  function requestRefresh(){clearTimeout(refreshTimer);refreshTimer=setTimeout(refresh,40)}\r\n  function warmRefresh(){[0,40,120,240,480,900,1500,2500].forEach(function(t){setTimeout(refresh,t)})}\r\n  function boot(){refresh();observer=new MutationObserver(requestRefresh);observer.observe(document.body,{subtree:true,childList:true,attributes:true,attributeFilter:['class','hidden','style','aria-hidden','aria-pressed','data-gdx-r34-cr07-a3-state']});document.addEventListener('click',function(e){if(e.target.closest('[data-gdx-r11-action=\"setup\"],[data-gdx-r34-cr07-a3-action]'))warmRefresh()},true);setInterval(function(){if(modalRoot(false))refresh()},650);warmRefresh();if(parseSetupDeepLink(location.href)){var loader=window.GDX_NORA_UNIVERSAL_SHARE_LOADER_V1,token=loader&&loader.begin?loader.begin('panel','setup'):'';setTimeout(function(){if(loader&&loader.stage)loader.stage(token,18,'Se\u00E7im motoru haz\u0131rlan\u0131yor\u2026','Motor haz\u0131rlan\u0131yor');restoreSetupDeepLink(location.href).then(function(r){LAST_STATE.restoreResult=r;warmRefresh();var exact=!!(r&&r.ok&&r.finalTarget&&r.finalTarget.exact);if(loader&&loader.finish)loader.finish(token,exact,r);try{console.log('[FAZ07 PANEL setup deeplink]',r)}catch(_){}})},300)}}\r\n  window.GDX_PANEL_LED_V4_SHARE_SETUP={ready:true,version:VERSION,refresh:refresh,prepare:prepare,shareNow:shareNow,getLastPrepared:function(){return LAST_STATE.prepared},getSetupModel:function(kind){return scrapeModel(kind||'MAIN')},buildSetupDeepLink:buildSetupDeepLink,parseSetupDeepLink:parseSetupDeepLink,restoreSetupDeepLink:restoreSetupDeepLink};\r\n  window.debugPanelV4UniversalShareSetupQaV15=function(){refresh();var root=modalRoot(false),mainMount=root&&root.querySelector('[data-gdx-panel-v4-setup-share-v15=\"MAIN\"]'),altSecondary=root&&root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]:not([hidden])'),altMount=root&&root.querySelector('[data-gdx-panel-v4-setup-share-v15=\"ALT\"]'),main=root?scrapeMainModel(root):null,alt=altSecondary?scrapeAlternativeModel(root):null,current=alt||main||LAST_STATE.lastModel,prepared=!!(LAST_STATE.prepared&&LAST_STATE.prepared.dataUrl),parsed=current?parseSetupDeepLink(current.url):null;var mainNodes=main&&main.schematic&&main.schematic.nodes?main.schematic.nodes.length:0,altNodes=alt&&alt.schematic&&alt.schematic.nodes?alt.schematic.nodes.length:0;var richPass=!!(current&&current.productImageUrl&&current.purposeDescription&&(current.strengths||[]).length);var altReady=!altSecondary||!!(altMount&&alt&&altNodes>=3);var mainReady=!!(root&&mainMount&&main&&main.metrics.length>=3&&mainNodes>=3);var result={ok:!!(mainReady&&altReady&&richPass),version:VERSION,state:root?'OPEN_SETUP_SURFACE':'NO_ACTIVE_SETUP',setupVisible:!!root,mainShareMountExists:!!mainMount,alternativeExpanded:!!altSecondary,alternativeShareMountExists:!!altMount,alternativeShareReady:altReady,mainSchematicNodeCount:mainNodes,alternativeSchematicNodeCount:altNodes,productImageExists:!!(current&&current.productImageUrl),purposeLabel:current?current.purposeLabel:'',purposeContextExists:!!(current&&current.purposeDescription),strengthCount:current&&current.strengths?current.strengths.length:0,currentVariant:current?current.variantKey:'',currentAltMode:current?current.altMode||'':'',metricCount:current?current.metrics.length:0,deepLinkUrl:current?current.url:'',deepLinkVariant:parsed?parsed.variant:'',previewPrepared:prepared,immediateMountPolicy:'CLICK_CAPTURE + MUTATION_OBSERVER + 650MS OPEN-MODAL POLL',note:'V1.5.1 keeps Panel core sealed, preserves MAIN/ALT share content, removes generic gdx_open from setup share URLs, and adds mobile final-target stability without changing setup truth.'};console.log(result);return result};window.debugPanelV4UniversalShareSetupQaV14=window.debugPanelV4UniversalShareSetupQaV15;window.debugPanelV4UniversalShareSetupQaV13=window.debugPanelV4UniversalShareSetupQaV15;window.debugPanelV4UniversalShareSetupQaV12=window.debugPanelV4UniversalShareSetupQaV15;window.debugPanelV4UniversalShareSetupQaV11=window.debugPanelV4UniversalShareSetupQaV15;window.debugPanelV4UniversalShareSetupQaV1=window.debugPanelV4UniversalShareSetupQaV15;\r\nwindow.debugPanelV4NlightSingleSceneShareParityQaV1=function(){\r\n    refresh();\r\n    var np=nlightPilotCurrent(),root=modalRoot(false),model=root?scrapeMainModel(root):null;\r\n    var mount=root&&root.querySelector('[data-gdx-panel-v4-setup-share-v15=\"MAIN\"]');\r\n    var live=np&&np.svg||null;\r\n    var scene=np&&np.scene||null;\r\n    var ctx=np&&np.context||null;\r\n    var liveProducts=live?[].slice.call(live.querySelectorAll('[data-r17c3-product-label=\"1\"]')).map(function(n){return clean(n.textContent)}):[];\r\n    var liveRoles=live?[].slice.call(live.querySelectorAll('[data-r17c3-role-caption=\"1\"]')).map(function(n){return clean(n.textContent)}):[];\r\n    var expectedProducts=scene&&scene.lights?scene.lights.map(function(l){return clean(l.productTitle)}):[];\r\n    var expectedRoles=scene&&scene.lights?scene.lights.map(function(l){return clean(l.roleLabel)}):[];\r\n    var metricLabels=model&&model.metrics?model.metrics.map(function(r){return clean(r.label)}):[];\r\n    var parsed=model?parseSetupDeepLink(model.url):null;\r\n    var prepared=LAST_STATE.prepared;\r\n    var result={\r\n      ok:!!(\r\n        np&&root&&model&&model.nlightPilot===true&&mount&&visible(mount)&&\r\n        liveProducts.length===3&&liveRoles.length===3&&\r\n        liveProducts.join('|')===expectedProducts.join('|')&&\r\n        liveRoles.join('|')===expectedRoles.join('|')&&\r\n        (metricLabels.indexOf('Arka Plan / RGB I\u015F\u0131\u011F\u0131')>-1||metricLabels.indexOf('Kontur / Kenar I\u015F\u0131\u011F\u0131')>-1)&&\r\n        parsed&&clean(parsed.setupLevel)===ADVANCED_LEVEL&&!clean(parsed.pilot)&&\r\n        model.nlightSceneSignature&&\r\n        prepared&&prepared.dataUrl&&prepared.model&&prepared.model.nlightPilot===true\r\n      ),\r\n      version:VERSION,\r\n      setupVisible:!!root,\r\n      shareMountVisible:!!(mount&&visible(mount)),\r\n      modelNlightPilot:!!(model&&model.nlightPilot===true),\r\n      liveProducts:liveProducts,\r\n      expectedProducts:expectedProducts,\r\n      liveRoles:liveRoles,\r\n      expectedRoles:expectedRoles,\r\n      metricLabels:metricLabels,\r\n      currentPurpose:ctx&&ctx.selection?clean(ctx.selection.activePurposeTitle):'',\r\n      currentSubpurpose:ctx&&ctx.selection?clean(ctx.selection.activeSubPurposeTitle):'',\r\n      activeSlotId:scene?clean(scene.activeSlotId):'',\r\n      sceneSignature:model?clean(model.nlightSceneSignature):'',\r\n      deepLinkPilot:parsed?clean(parsed.pilot):'',\r\n      deepLinkSetupLevel:parsed?clean(parsed.setupLevel):'',\r\n      preparedReady:!!(prepared&&prepared.dataUrl),\r\n      preparedNlightPilot:!!(prepared&&prepared.model&&prepared.model.nlightPilot===true),\r\n      preparedSceneSignature:prepared&&prepared.model?clean(prepared.model.nlightSceneSignature):'',\r\n      note:'R1.7G requires Product/Background and Interview/Rim share, PNG schematic and QR/deep-link to consume the same live N-light scene. Legacy 1/2-light share remains unchanged when Advanced is off.'\r\n    };\r\n    console.log(result);return result\r\n  };\r\n  window.debugPanelV4UniversalShareSetupSchematicReadabilityQaV1=function(){refresh();var root=modalRoot(false),main=scrapeMainModel(root),altSecondary=root&&root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]:not([hidden])'),alt=altSecondary?scrapeAlternativeModel(root):null,current=alt||main||LAST_STATE.lastModel,svg=liveV27SvgForModel(current),vb=(svg&&clean(svg.getAttribute('viewBox'))||'0 0 980 650').split(/\\s+/).map(Number),vw=Number(vb[2]||980),vh=Number(vb[3]||650),crop=svg?liveV27ShareCropBox(svg,vw,vh):null,baseScale=Math.min(686/vw,466/vh),cropScale=crop?Math.min(686/crop.w,466/crop.h):0,zoomGain=crop&&baseScale?Number((cropScale/baseScale).toFixed(3)):0,fixtureLabels=svg?[].slice.call(svg.querySelectorAll('text.fixture-label')):[],labelSafety=fixtureLabels.map(function(n){var b=svgNodeBBox(n);return b?{text:clean(n.textContent),left:b.x,right:b.x+b.w,insideSourceViewBox:b.x>=0&&(b.x+b.w)<=vw}:null}).filter(Boolean),labelsInside=labelSafety.length>=2&&labelSafety.every(function(x){return x.insideSourceViewBox});var result={ok:!!(svg&&crop&&crop.x===0&&crop.w===vw&&zoomGain>=1.16&&crop.h<vh&&labelsInside),version:VERSION,setupVisible:!!root,currentVariant:current?current.variantKey:'',sharePrepared:!!(LAST_STATE.prepared&&LAST_STATE.prepared.dataUrl),liveSvgReady:!!svg,viewBox:{x:Number(vb[0]||0),y:Number(vb[1]||0),w:vw,h:vh},cropBox:crop,baseScale:baseScale,cropScale:cropScale,zoomGain:zoomGain,horizontalClipGuard:crop?crop.x===0&&crop.w===vw:false,fixtureLabelSourceSafety:labelSafety,fixtureLabelsInsideSourceViewBox:labelsInside,typography:{fixtureProductPxMax:27,fixtureProductPxMin:22,roleCaptionPx:21,technicalPx:17,subjectPx:22,cameraPx:20},drawBox:{x:90,y:504,w:686,h:466},expectation:'PNG setup \u015Femas\u0131 dikey bo\u015Flu\u011Fu crop eder; yatay V27 geni\u015Fli\u011Fini korur. B\u00FCy\u00FCt\u00FClm\u00FC\u015F \u00FCr\u00FCn k\u0131sa adlar\u0131 soldan/sa\u011Fdan kesilmez.'};console.log(result);return result};\r\n\r\n  window.debugPanelV4UniversalShareSetupDeepLinkQaV15=function(){\r\n    var parsed=parseSetupDeepLink(location.href),root=modalRoot(false),model=root?scrapeModel():LAST_STATE.lastModel,st=selectionState()||{};\r\n    var altSecondary=root&&root.querySelector('[data-gdx-r34-cr07-a3-secondary=\"1\"]:not([hidden])');\r\n    var altModeBtn=parsed&&parsed.altMode&&root?root.querySelector('[data-gdx-r34-cr07-a3-action=\"mode\"][data-gdx-r34-cr07-a3-mode-key=\"'+parsed.altMode.replace(/\"/g,'\\\"')+'\"][aria-pressed=\"true\"]'):null;\r\n    var productPass=!!(parsed&&model&&clean(parsed.key)===clean(model.productKey));\r\n    var purposePass=!!(parsed&&clean(parsed.purposeKey)===clean(st.activePurposeKey));\r\n    var subPurposePass=!!(parsed&&clean(parsed.subPurposeKey)===clean(st.activeSubPurposeKey));\r\n    var variantPass=!!(parsed&&(parsed.variant!=='ALT'||(altSecondary&&(!parsed.altMode||altModeBtn))));\r\n    var setupSnap=parsed?setupFinalSnapshot(parsed):null;\r\n    var setupLevelPass=!!(!parsed||clean(parsed.setupLevel)!==ADVANCED_LEVEL||(setupSnap&&setupSnap.setupLevelPass));\r\n    var u=new URL(location.href);\r\n    var routePass=clean(u.searchParams.get(OPEN_PARAM))!=='panel-usecase';\r\n    var finalExact=!!(parsed&&root&&productPass&&purposePass&&subPurposePass&&variantPass&&setupLevelPass);\r\n    var result={\r\n      ok:finalExact,\r\n      version:VERSION,\r\n      locationHasSetupDeepLink:!!parsed,\r\n      setupVisible:!!root,\r\n      productKey:model?model.productKey:'',\r\n      targetProductKey:parsed?parsed.key:'',\r\n      productPass:productPass,\r\n      purposeKey:parsed?parsed.purposeKey:'',\r\n      activePurposeKey:clean(st.activePurposeKey),\r\n      purposePass:purposePass,\r\n      subPurposeKey:parsed?parsed.subPurposeKey:'',\r\n      activeSubPurposeKey:clean(st.activeSubPurposeKey),\r\n      subPurposePass:subPurposePass,\r\n      targetVariant:parsed?parsed.variant:'',\r\n      targetAltMode:parsed?parsed.altMode:'',\r\n      targetSetupLevel:parsed?clean(parsed.setupLevel):'',\r\n      setupLevelPass:setupLevelPass,\r\n      alternativeVisible:!!altSecondary,\r\n      alternativeModeRestored:!!altModeBtn,\r\n      variantPass:variantPass,\r\n      gdxOpen:clean(u.searchParams.get(OPEN_PARAM)),\r\n      gdxOpenSuppressed:routePass,\r\n      finalExact:finalExact,\r\n      restoreResult:LAST_STATE.restoreResult||null,\r\n      note:'V1.5.1 requires exact product + purpose + subpurpose + MAIN/ALT final target and suppresses the generic panel-usecase opener on setup share routes.'\r\n    };\r\n    console.log(result);return result;\r\n  };\r\n  window.debugPanelV4UniversalShareSetupDeepLinkQaV14=window.debugPanelV4UniversalShareSetupDeepLinkQaV15;\r\n  window.debugPanelV4UniversalSetupLoaderQaV1=function(){var svc=window.GDX_NORA_UNIVERSAL_SHARE_LOADER_V1;return svc&&svc.qa?svc.qa('setup'):{ok:false,version:'PANEL-UNIVERSAL-LOADER-01-WHY-SETUP-V1',code:'LOADER_SERVICE_NOT_READY'}};\r\n  window.debugPanelV4SetupMobileFinalTargetQaV1=function(){\r\n    var parsed=parseSetupDeepLink(location.href),snap=parsed?setupFinalSnapshot(parsed):null,u=new URL(location.href),rr=LAST_STATE.restoreResult||null;\r\n    var result={\r\n      ok:!!(parsed&&snap&&snap.exact&&clean(u.searchParams.get(OPEN_PARAM))!=='panel-usecase'),\r\n      version:'PANEL-SETUP-M01-MOBILE-FINAL-TARGET-STABILITY-V1',\r\n      likelyMobile:isLikelyMobileSetupColdStart(),\r\n      locationHasSetupDeepLink:!!parsed,\r\n      gdxOpen:clean(u.searchParams.get(OPEN_PARAM)),\r\n      gdxOpenSuppressed:clean(u.searchParams.get(OPEN_PARAM))!=='panel-usecase',\r\n      snapshot:snap,\r\n      restoreResult:rr,\r\n      mobileMode:!!(rr&&rr.mobileMode),\r\n      recoveryAttempted:!!(rr&&rr.recoveryAttempted),\r\n      note:'Run on a setup deeplink/QR target. PASS requires exact product, purpose, subpurpose and MAIN/ALT final setup state.'\r\n    };\r\n    console.log(result);return result\r\n  };\r\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',boot,{once:true});else boot();\r\n})(window, document);\r\n\r\n\r\n\r\n/* =========================================================\r\n   PANEL LED V4 \u2014 FAZ07-C WHY SHARE V1.1\r\n   PNG content polish + robust reason extraction.\r\n   Boundary: share-layer only; sealed Panel core untouched.\r\n   ========================================================= */\r\n(function(window, document){\r\n  'use strict';\r\n  if(window.GDX_PANEL_LED_V4_WHY_SHARE_V11_READY) return;\r\n  window.GDX_PANEL_LED_V4_WHY_SHARE_V11_READY = true;\r\n\r\n  var VERSION='PANEL-V4-FAZ07-C-WHY-SHARE-V1.1.4-MOBILE-FULLKEY-COLD-START-GATE',W=1080,H=1440;\r\n  var LAST={prepared:null,model:null,mounted:false,restoreResult:null};\r\n  var observer=null,timer=null;\r\n\r\n  /* PANEL WHY-02 PERFORMANCE DIAGNOSTIC V1 \u2014 OBSERVATION ONLY.\r\n     No Panel core, selection, scoring, ranking, setup, commerce or restore behavior changes. */\r\n  var PERF_VERSION='PANEL-WHY-02-PERSISTENT-LATENCY-DIAGNOSTIC-V1';\r\n  var PERF={version:PERF_VERSION,active:false,target:null,marks:{},result:null};\r\n\r\n  function perfNow(){try{return Math.round(performance.now())}catch(_){return null}}\r\n  function perfMark(name,extra){\r\n    if(!PERF.active)return;\r\n    if(PERF.marks[name]==null)PERF.marks[name]=perfNow();\r\n    if(extra&&typeof extra==='object')PERF[name+'Data']=extra\r\n  }\r\n  function perfClass(ms){\r\n    if(!Number.isFinite(Number(ms)))return'NO_RESULT';\r\n    ms=Number(ms);\r\n    if(ms<1500)return'EXCELLENT_LT_1_5S';\r\n    if(ms<=3000)return'ACCEPTABLE_1_5_TO_3S';\r\n    if(ms<=5000)return'OPTIMIZE_3_TO_5S';\r\n    return'FAIL_GT_5S'\r\n  }\r\n  function perfNavigation(){\r\n    try{\r\n      var n=performance.getEntriesByType('navigation')[0];if(!n)return null;\r\n      return{\r\n        dnsMs:Math.round(n.domainLookupEnd-n.domainLookupStart),\r\n        connectMs:Math.round(n.connectEnd-n.connectStart),\r\n        ttfbMs:Math.round(n.responseStart-n.requestStart),\r\n        responseMs:Math.round(n.responseEnd-n.responseStart),\r\n        domInteractiveMs:Math.round(n.domInteractive),\r\n        domContentLoadedMs:Math.round(n.domContentLoadedEventEnd),\r\n        loadEventMs:Math.round(n.loadEventEnd||0),\r\n        transferSize:n.transferSize||0,\r\n        encodedBodySize:n.encodedBodySize||0,\r\n        decodedBodySize:n.decodedBodySize||0\r\n      }\r\n    }catch(_){return null}\r\n  }\r\n  function perfDevice(){\r\n    try{\r\n      var c=navigator.connection||navigator.mozConnection||navigator.webkitConnection||{};\r\n      return{\r\n        viewport:window.innerWidth+'x'+window.innerHeight,\r\n        hardwareConcurrency:Number(navigator.hardwareConcurrency)||null,\r\n        deviceMemory:Number(navigator.deviceMemory)||null,\r\n        effectiveType:String(c.effectiveType||''),\r\n        downlink:Number.isFinite(Number(c.downlink))?Number(c.downlink):null,\r\n        rtt:Number.isFinite(Number(c.rtt))?Number(c.rtt):null,\r\n        saveData:c.saveData===true\r\n      }\r\n    }catch(_){return null}\r\n  }\r\n  function perfFinalize(ok,code){\r\n    if(!PERF.active)return null;\r\n    perfMark('RESTORE_END',{ok:!!ok,code:String(code||'')});\r\n    var total=PERF.marks.RESTORE_END;\r\n    var order=[\r\n      'SCRIPT_READY','BOOT','RESTORE_SCHEDULED','RESTORE_START',\r\n      'LAUNCHER_SHELL_READY','SHELL_OPEN','SELECTION_API_READY',\r\n      'SELECTION_RESTORED','WHY_BUTTON_READY','WHY_MODAL_VISIBLE','RESTORE_END'\r\n    ];\r\n    var stages={},prev=null;\r\n    order.forEach(function(k){\r\n      var v=PERF.marks[k];\r\n      if(Number.isFinite(v)){\r\n        if(prev&&Number.isFinite(PERF.marks[prev]))stages[prev+'\u2192'+k]=v-PERF.marks[prev];\r\n        prev=k\r\n      }\r\n    });\r\n    var slow=null;\r\n    Object.keys(stages).forEach(function(k){if(!slow||stages[k]>slow.ms)slow={stage:k,ms:stages[k]}});\r\n    PERF.result={\r\n      ok:!!ok,\r\n      version:PERF_VERSION,\r\n      functionalVersion:VERSION,\r\n      code:String(code||''),\r\n      totalToRestoreEndMs:Number.isFinite(total)?total:null,\r\n      classification:perfClass(total),\r\n      targetMs:{excellentUnder:1500,acceptableMax:3000,optimizeOver:3000,failOver:5000},\r\n      slowestStage:slow,\r\n      marks:Object.assign({},PERF.marks),\r\n      stageDurations:stages,\r\n      navigation:perfNavigation(),\r\n      device:perfDevice(),\r\n      target:PERF.target,\r\n      panelPolicy:'SEALED_CORE_NO_TOUCH',\r\n      note:'Diagnostic only. performance.now() is relative to navigation start; Panel restore behavior is unchanged.'\r\n    };\r\n    window.__GDX_PANEL_WHY_PERF_V1=PERF.result;\r\n    return PERF.result\r\n  }\r\n\r\n  function clean(v){return String(v==null?'':v).replace(/\\s+/g,' ').trim()}\r\n  function esc(v){return String(v==null?'':v).replace(/[&<>\"']/g,function(c){return{'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#39;'}[c]})}\r\n  function visible(el){if(!el||!(el instanceof Element))return false;var s=getComputedStyle(el),r=el.getBoundingClientRect();return s.display!=='none'&&s.visibility!=='hidden'&&Number(s.opacity||1)!==0&&r.width>120&&r.height>120}\r\n  function modalRoot(){var list=[].slice.call(document.querySelectorAll('[data-gdx-r11-modal=\"1\"][data-gdx-r11-modal-type=\"reason\"]'));for(var i=0;i<list.length;i++){if(visible(list[i]))return list[i]}return null}\r\n  function selectionState(){try{return window.GDX_PANEL_V4_R28_SELECTION_STATE||((typeof window.getPanelV4R28SelectionState==='function')?window.getPanelV4R28SelectionState():null)||null}catch(_){return null}}\r\n  function productKey(root,title){var nora=root&&root.querySelector('[data-gdx-panel-r29-r6-product]');var key=clean(nora&&nora.getAttribute('data-gdx-panel-r29-r6-product'));if(key)return key;var cards=[].slice.call(document.querySelectorAll('[data-gdx-r11-card]'));var hit=cards.find(function(c){return clean((c.querySelector('h4')||{}).textContent)===clean(title)});return clean(hit&&hit.getAttribute('data-gdx-r11-card'))}\r\n  var SHARE='gdx_share',KEY='gdx_panel_key',REF='gdx_panel_ref',PURPOSE='gdx_panel_purpose',SUB='gdx_panel_sub',OPEN='gdx_open';\r\n\r\n  function hashKey(value){\r\n    var s=clean(value),h=2166136261;\r\n    for(var i=0;i<s.length;i+=1){h^=s.charCodeAt(i);h=Math.imul(h,16777619)}\r\n    return (h>>>0).toString(36)\r\n  }\r\n  function buildDeepLink(root,title){\r\n    var sel=selectionState()||{},key=productKey(root,title);\r\n    try{\r\n      var u=new URL(location.origin+location.pathname);\r\n      u.searchParams.set(SHARE,'why');\r\n      if(key)u.searchParams.set(KEY,key);\r\n      if(sel.activePurposeKey)u.searchParams.set(PURPOSE,sel.activePurposeKey);\r\n      if(sel.activeSubPurposeKey)u.searchParams.set(SUB,sel.activeSubPurposeKey);\r\n      u.hash='';\r\n      return u.toString()\r\n    }catch(_){return location.href}\r\n  }\r\n  function buildQrDeepLink(root,title){\r\n    var sel=selectionState()||{},key=productKey(root,title);\r\n    try{\r\n      var u=new URL(location.origin+location.pathname);\r\n      u.searchParams.set(SHARE,'why');\r\n      if(key)u.searchParams.set(REF,hashKey(key));\r\n      if(sel.activePurposeKey)u.searchParams.set(PURPOSE,sel.activePurposeKey);\r\n      if(sel.activeSubPurposeKey)u.searchParams.set(SUB,sel.activeSubPurposeKey);\r\n      u.hash='';\r\n      return u.toString()\r\n    }catch(_){return buildDeepLink(root,title)}\r\n  }\r\n  function parseDeepLink(value){\r\n    try{\r\n      var u=new URL(value||location.href,location.origin);\r\n      if(clean(u.searchParams.get(SHARE))!=='why')return null;\r\n      var key=clean(u.searchParams.get(KEY)),ref=clean(u.searchParams.get(REF)),purpose=clean(u.searchParams.get(PURPOSE)),sub=clean(u.searchParams.get(SUB));\r\n      if((!key&&!ref)||!purpose||!sub)return null;\r\n      return{key:key,ref:ref,purposeKey:purpose,subPurposeKey:sub,url:u.toString()}\r\n    }catch(_){return null}\r\n  }\r\n  function matchesParsedProduct(parsed,key){\r\n    if(!parsed||!key)return false;\r\n    if(parsed.key)return clean(parsed.key)===clean(key);\r\n    return !!(parsed.ref&&hashKey(key)===parsed.ref)\r\n  }\r\n  (function(){\r\n    var p=parseDeepLink(location.href);\r\n    if(p){\r\n      try{\r\n        var u=new URL(location.href);\r\n        if(clean(u.searchParams.get(OPEN))==='panel-usecase'){\r\n          u.searchParams.delete(OPEN);\r\n          history.replaceState(history.state,'',u.toString())\r\n        }\r\n      }catch(_){}\r\n      PERF.active=true;\r\n      PERF.target={productKey:p.key||'',productRef:p.ref||'',purposeKey:p.purposeKey,subPurposeKey:p.subPurposeKey};\r\n      perfMark('SCRIPT_READY')\r\n    }\r\n  })();\r\n  function waitFor(fn,timeout,interval){timeout=Number(timeout)||8000;interval=Number(interval)||90;return new Promise(function(resolve){var start=Date.now();(function tick(){var v=null;try{v=fn()}catch(_){}if(v)return resolve(v);if(Date.now()-start>=timeout)return resolve(null);setTimeout(tick,interval)})()})}\r\n  function delayMs(ms){return new Promise(function(resolve){setTimeout(resolve,Math.max(0,Number(ms)||0))})}\r\n  function exactWhySelection(p){var s=selectionState()||{};return !!(p&&clean(s.activePurposeKey)===clean(p.purposeKey)&&clean(s.activeSubPurposeKey)===clean(p.subPurposeKey))}\r\n  function whyReasonButtonFor(p){var buttons=[].slice.call(document.querySelectorAll('[data-gdx-r11-action=\"reason\"][data-gdx-r11-key]'));for(var i=0;i<buttons.length;i+=1){var candidate=clean(buttons[i].getAttribute('data-gdx-r11-key'));if(matchesParsedProduct(p,candidate))return buttons[i]}return null}\r\n  function isLikelyMobileColdStart(){\r\n    try{\r\n      return !!(\r\n        (window.matchMedia&&window.matchMedia('(pointer: coarse)').matches) ||\r\n        Number(navigator.maxTouchPoints||0)>0 ||\r\n        Math.min(window.innerWidth||9999,window.screen&&window.screen.width||9999)<=820\r\n      )\r\n    }catch(_){return false}\r\n  }\r\n  async function waitForMobileColdStartGate(p,mode){\r\n    var started=Date.now();\r\n    var shell=await waitFor(function(){var s=document.getElementById('gdxPanelV4Shell');return s&&!s.hidden&&s.getAttribute('aria-hidden')!=='true'?s:null},12000,90);\r\n    if(!shell)return{ok:false,code:'MOBILE_SHELL_NOT_READY',mode:mode,elapsedMs:Date.now()-started};\r\n    var setter=await waitFor(function(){return typeof window.setPanelV4R28Selection==='function'?window.setPanelV4R28Selection:null},12000,90);\r\n    if(!setter)return{ok:false,code:'MOBILE_SELECTION_API_NOT_READY',mode:mode,elapsedMs:Date.now()-started};\r\n    /*\r\n      Physical mobile cold-start can publish the shell before the default R28\r\n      selection has finished. If the shared target is written too early, the late\r\n      default initializer can overwrite it and leave the user on the purpose menu.\r\n      Wait for any real baseline purpose/subpurpose first, then one bounded quiet window.\r\n    */\r\n    var baseline=await waitFor(function(){var st=selectionState()||{};return clean(st.activePurposeKey)&&clean(st.activeSubPurposeKey)?st:null},12000,90);\r\n    if(!baseline)return{ok:false,code:'MOBILE_BASE_SELECTION_NOT_READY',mode:mode,elapsedMs:Date.now()-started};\r\n    await delayMs(260);\r\n    return{\r\n      ok:true,\r\n      code:'MOBILE_COLD_START_SETTLED',\r\n      mode:mode,\r\n      baselinePurposeKey:clean(baseline.activePurposeKey),\r\n      baselineSubPurposeKey:clean(baseline.activeSubPurposeKey),\r\n      elapsedMs:Date.now()-started\r\n    }\r\n  }\r\n\r\n  var STABILITY={version:'PANEL-WHY-03-MOBILE-FINAL-TARGET-STABILITY-V1',target:null,samples:[],final:null};\r\n  function stabilitySnapshot(p){\r\n    var r=modalRoot(),data=r?model():null;\r\n    var sel=selectionState()||{};\r\n    var out={\r\n      atMs:perfNow(),\r\n      whyVisible:!!r,\r\n      targetProductKey:p?p.key:'',\r\n      targetProductRef:p?p.ref:'',\r\n      activeProductKey:data?data.productKey:'',\r\n      targetPurposeKey:p?p.purposeKey:'',\r\n      activePurposeKey:clean(sel.activePurposeKey),\r\n      targetSubPurposeKey:p?p.subPurposeKey:'',\r\n      activeSubPurposeKey:clean(sel.activeSubPurposeKey)\r\n    };\r\n    out.productTargetPass=!!(p&&data&&matchesParsedProduct(p,data.productKey));\r\n    out.exact=!!(\r\n      p&&r&&data&&\r\n      out.productTargetPass&&\r\n      clean(sel.activePurposeKey)===clean(p.purposeKey)&&\r\n      clean(sel.activeSubPurposeKey)===clean(p.subPurposeKey)\r\n    );\r\n    return out\r\n  }\r\n  function scheduleStabilityAudit(p){\r\n    STABILITY.target=p?{key:p.key||'',ref:p.ref||'',purposeKey:p.purposeKey,subPurposeKey:p.subPurposeKey}:null;\r\n    STABILITY.samples=[];\r\n    STABILITY.final=null;\r\n    [250,900,1800].forEach(function(delay,index){\r\n      setTimeout(function(){\r\n        var s=stabilitySnapshot(p);s.delayMs=delay;STABILITY.samples.push(s);\r\n        if(index===2){\r\n          STABILITY.final={\r\n            ok:STABILITY.samples.length===3&&STABILITY.samples.every(function(x){return x.exact===true}),\r\n            version:STABILITY.version,\r\n            target:STABILITY.target,\r\n            samples:STABILITY.samples.slice(),\r\n            finalExact:s.exact===true,\r\n            note:'Observation only. No Panel core or modal state is changed by this stability audit.'\r\n          };\r\n          window.__GDX_PANEL_WHY_STABILITY_V1=STABILITY.final\r\n        }\r\n      },delay)\r\n    })\r\n  }\r\n  async function restoreDeepLink(value){\r\n    var p=parseDeepLink(value||location.href);if(!p)return{ok:false,code:'NO_WHY_DEEPLINK',version:VERSION};\r\n    perfMark('RESTORE_START');\r\n    var compactMode=!!(p.ref&&!p.key),mobileFullKeyMode=!!(p.key&&!p.ref&&isLikelyMobileColdStart()),mobileGateMode=!!(compactMode||mobileFullKeyMode),gate=null,recoveryAttempted=false;\r\n    var launcher=await waitFor(function(){return document.getElementById('gdxPanelV4Launcher')},12000,100),shell=await waitFor(function(){return document.getElementById('gdxPanelV4Shell')},12000,100);\r\n    if(launcher&&shell)perfMark('LAUNCHER_SHELL_READY');\r\n    if(launcher&&shell&&(shell.hidden||shell.getAttribute('aria-hidden')==='true'))try{launcher.click()}catch(_){}\r\n    var shellOpen=await waitFor(function(){var s=document.getElementById('gdxPanelV4Shell');return s&&!s.hidden&&s.getAttribute('aria-hidden')!=='true'?s:null},12000,100);\r\n    if(!shellOpen){perfFinalize(false,'PANEL_MOTOR_NOT_OPENED');return{ok:false,code:'PANEL_MOTOR_NOT_OPENED',version:VERSION,compactMode:compactMode}}\r\n    perfMark('SHELL_OPEN');\r\n\r\n    /*\r\n      Mobile cold-start readiness gate:\r\n      - COMPACT_REF QR: always uses the proven mobile gate.\r\n      - FULL_KEY textual deeplink: uses the SAME gate only on likely mobile devices.\r\n      Desktop FULL_KEY keeps the existing fast path.\r\n    */\r\n    if(mobileGateMode){\r\n      gate=await waitForMobileColdStartGate(p,compactMode?'COMPACT_REF':'FULL_KEY_MOBILE');\r\n      if(!gate.ok){\r\n        perfFinalize(false,gate.code);\r\n        return{\r\n          ok:false,code:gate.code,version:VERSION,\r\n          compactMode:compactMode,mobileFullKeyMode:mobileFullKeyMode,\r\n          routeGate:gate\r\n        }\r\n      }\r\n    }\r\n\r\n    var setter=await waitFor(function(){return typeof window.setPanelV4R28Selection==='function'?window.setPanelV4R28Selection:null},12000,100);\r\n    if(!setter){perfFinalize(false,'SELECTION_API_NOT_READY');return{ok:false,code:'SELECTION_API_NOT_READY',version:VERSION,compactMode:compactMode,routeGate:gate}}\r\n    perfMark('SELECTION_API_READY');\r\n\r\n    async function applyExactWhy(reason){\r\n      var selected=null;\r\n      try{selected=setter(p.purposeKey,p.subPurposeKey)}catch(e){return{ok:false,code:'SELECTION_RESTORE_FAILED',reason:reason,message:String(e&&e.message||e)}}\r\n      if(!selected)return{ok:false,code:'SELECTION_NOT_FOUND',reason:reason};\r\n      var selectionReady=await waitFor(function(){return exactWhySelection(p)?selectionState():null},mobileGateMode?12000:8000,90);\r\n      if(!selectionReady)return{ok:false,code:'WHY_SELECTION_NOT_STABLE',reason:reason};\r\n      perfMark('SELECTION_RESTORED');\r\n\r\n      var button=await waitFor(function(){return whyReasonButtonFor(p)},mobileGateMode?12000:8000,90);\r\n      if(!button)return{ok:false,code:'WHY_BUTTON_NOT_FOUND',reason:reason,key:p.key||'',ref:p.ref||''};\r\n      var resolvedKey=clean(button.getAttribute('data-gdx-r11-key'));\r\n      perfMark('WHY_BUTTON_READY');\r\n      try{button.click()}catch(_){}\r\n\r\n      var root=await waitFor(function(){var r=modalRoot();if(!r)return null;var d=model();return d&&matchesParsedProduct(p,d.productKey)&&exactWhySelection(p)?r:null},mobileGateMode?10000:6000,80);\r\n      if(!root)return{ok:false,code:'WHY_MODAL_NOT_OPENED_EXACT',reason:reason,key:resolvedKey||p.key||'',ref:p.ref||''};\r\n      perfMark('WHY_MODAL_VISIBLE');\r\n      try{root.scrollIntoView({block:'start',behavior:'auto'})}catch(_){}\r\n      refresh();\r\n      return{ok:true,code:'WHY_EXACT_TARGET_APPLIED',reason:reason,key:resolvedKey||p.key||'',ref:p.ref||'',root:root}\r\n    }\r\n\r\n    var applied=await applyExactWhy(compactMode?'QR_AFTER_MOBILE_COLD_START_GATE':(mobileFullKeyMode?'FULL_KEY_AFTER_MOBILE_COLD_START_GATE':'FULL_KEY_PRIMARY'));\r\n    if(!applied.ok){perfFinalize(false,applied.code);return{ok:false,code:applied.code,version:VERSION,compactMode:compactMode,routeGate:gate,recoveryAttempted:false,detail:applied}}\r\n\r\n    if(mobileGateMode){\r\n      /* One bounded late-init recovery only. No polling loop and no ranking mutation. */\r\n      await delayMs(520);\r\n      var snap=stabilitySnapshot(p);\r\n      if(!snap.exact){\r\n        recoveryAttempted=true;\r\n        var retry=await applyExactWhy(compactMode?'QR_ONE_LATE_INIT_RECOVERY':'FULL_KEY_MOBILE_ONE_LATE_INIT_RECOVERY');\r\n        if(!retry.ok){\r\n          perfFinalize(false,retry.code);\r\n          return{\r\n            ok:false,code:retry.code,version:VERSION,\r\n            compactMode:compactMode,mobileFullKeyMode:mobileFullKeyMode,\r\n            routeGate:gate,recoveryAttempted:true,detail:retry\r\n          }\r\n        }\r\n        await delayMs(360);\r\n        snap=stabilitySnapshot(p);\r\n        if(!snap.exact){\r\n          perfFinalize(false,'WHY_FINAL_TARGET_NOT_STABLE');\r\n          return{\r\n            ok:false,code:'WHY_FINAL_TARGET_NOT_STABLE',version:VERSION,\r\n            compactMode:compactMode,mobileFullKeyMode:mobileFullKeyMode,\r\n            routeGate:gate,recoveryAttempted:true,snapshot:snap\r\n          }\r\n        }\r\n      }\r\n    }\r\n\r\n    perfFinalize(true,'WHY_DEEPLINK_RESTORED');\r\n    scheduleStabilityAudit(p);\r\n    return{\r\n      ok:true,code:'WHY_DEEPLINK_RESTORED',version:VERSION,\r\n      key:applied.key||p.key||'',ref:p.ref||'',\r\n      purposeKey:p.purposeKey,subPurposeKey:p.subPurposeKey,\r\n      compactMode:compactMode,mobileFullKeyMode:mobileFullKeyMode,\r\n      mobileGateMode:mobileGateMode,\r\n      routeGate:gate,recoveryAttempted:recoveryAttempted\r\n    }\r\n  }\r\n\r\n  function qrApi(){return window.GDX_PANEL_LED_V4_QR||null}\r\n  function productImage(root){var img=root&&root.querySelector('[data-gdx-r11-modal-slider-image=\"1\"],.gdx-r11-modal-main-img img');return img?clean(img.currentSrc||img.src):''}\r\n  function scoreRows(root){return[].slice.call(root.querySelectorAll('[data-gdx-r11-balanced-score-strip-item=\"1\"]')).slice(0,3).map(function(el,i){var n=Number(el.getAttribute('data-score')||clean((el.querySelector('strong')||{}).textContent).match(/\\d+/)?.[0]||0);return{label:['Ama\u00E7 Uyumu','Genel F/P','Rol Uyumu'][i]||clean((el.querySelector('b')||{}).textContent),value:n,tone:['#27d17f','#ffd022','#40c3e0'][i]||'#40c3e0'}}).filter(function(r){return Number.isFinite(r.value)})}\r\n  function purposeContext(root){\r\n    var head=clean((root.querySelector('.gdx-r11-modal-head p')||{}).textContent);\r\n    var persona=root.querySelector('[data-gdx-r11-persona-fit=\"1\"][data-gdx-r11-persona-mode=\"reason\"]');\r\n    var intro=clean((persona&&persona.querySelector('p')||{}).textContent);\r\n    var lis=persona?[].slice.call(persona.querySelectorAll('li,[data-gdx-r11-persona-item=\"1\"]')).map(function(li){return clean(li.textContent)}).filter(Boolean):[];\r\n    return{label:head||'Se\u00E7ilen kullan\u0131m amac\u0131',description:[intro].concat(lis.slice(0,2)).filter(Boolean).join(' \u00B7 ')||'Se\u00E7ili kullan\u0131m amac\u0131 i\u00E7in \u00FCr\u00FCn tipi, \u0131\u015F\u0131k rol\u00FC ve \u00E7al\u0131\u015Fma ko\u015Fullar\u0131 birlikte de\u011Ferlendirilir.',profile:lis}\r\n  }\r\n  function reasonItems(root){\r\n    var out=[];\r\n    [].slice.call(root.querySelectorAll('[data-gdx-r11-purpose-weight-item=\"1\"],.gdx-r11-purpose-weight-item')).slice(0,5).forEach(function(el){\r\n      var title=clean((el.querySelector('.gdx-r11-purpose-weight-title b')||el.querySelector('b')||{}).textContent);\r\n      var score=clean((el.querySelector('[data-gdx-r11-purpose-weight-score=\"1\"]')||el.querySelector('.gdx-r11-purpose-weight-bars strong')||{}).textContent);\r\n      var weight=clean((el.querySelector('.gdx-r11-purpose-weight-title em')||{}).textContent);\r\n      var comment=clean((el.querySelector('small')||{}).textContent);\r\n      if(title)out.push({title:title,score:score,meta:weight,comment:comment})\r\n    });\r\n    if(!out.length){\r\n      var source=root.querySelector('[data-gdx-panel-r29-reason-nora=\"1\"]');\r\n      if(source)[].slice.call(source.querySelectorAll('[data-gdx-panel-r29-r6-copy]')).slice(0,3).forEach(function(card){\r\n        var title=clean((card.querySelector('strong')||{}).textContent),comment=clean((card.querySelector('p')||{}).textContent);\r\n        if(title||comment)out.push({title:title||'NORA de\u011Ferlendirmesi',score:'',meta:'',comment:comment})\r\n      });\r\n    }\r\n    if(!out.length){\r\n      var persona=root.querySelector('[data-gdx-r11-persona-fit=\"1\"][data-gdx-r11-persona-mode=\"reason\"]');\r\n      if(persona)[].slice.call(persona.querySelectorAll('li')).slice(0,3).forEach(function(li,i){var t=clean(li.textContent);if(t)out.push({title:['Kullan\u0131m uyumu','\u00C7ekim senaryosu','Karar profili'][i]||'Kullan\u0131m profili',score:'',meta:'',comment:t})})\r\n    }\r\n    return out.slice(0,4)\r\n  }\r\n  function noraText(root){\r\n    var source=root.querySelector('[data-gdx-panel-r29-reason-nora=\"1\"]');if(!source)return'';\r\n    var cards=[].slice.call(source.querySelectorAll('[data-gdx-panel-r29-r6-copy] p')).map(function(p){return clean(p.textContent)}).filter(Boolean);return cards.join(' ')||clean(source.textContent)\r\n  }\r\n  function primaryRole(root){return clean((root.querySelector('.gdx-r11-reason-nora-head b')||{}).textContent)}\r\n  function model(){\r\n    var root=modalRoot();if(!root)return null;\r\n    var title=clean((root.querySelector('.gdx-r11-modal-head h3')||{}).textContent)||'Panel LED \u00FCr\u00FCn \u00F6nerisi',purpose=purposeContext(root),sel=selectionState()||{};\r\n    var m={version:VERSION,shareType:'why',engine:'PANEL',title:title,productKey:productKey(root,title),productImageUrl:productImage(root),purposeLabel:purpose.label,purposeDescription:purpose.description,profile:purpose.profile,role:primaryRole(root),scores:scoreRows(root),reasons:reasonItems(root),nora:noraText(root)||'NORA bu \u00FCr\u00FCn\u00FC se\u00E7ili kullan\u0131m amac\u0131, teknik uygunluk ve rol dengesi birlikte de\u011Ferlendirilerek yorumlar.',url:buildDeepLink(root,title),qrUrl:buildQrDeepLink(root,title),selection:sel};\r\n    LAST.model=m;return m\r\n  }\r\n\r\n  function ensureStyles(){\r\n    if(document.getElementById('gdxPanelV4WhyShareV11Styles'))return;\r\n    var s=document.createElement('style');s.id='gdxPanelV4WhyShareV11Styles';\r\n    s.textContent='.gdx-panel-v4__why-share-v11{margin:12px 0 16px;padding:13px 14px;border:1px solid rgba(31,142,137,.28);border-radius:15px;background:linear-gradient(135deg,rgba(31,142,137,.08),rgba(255,255,255,.02));color:inherit}.gdx-panel-v4__why-share-v11 .k{font-size:10px;font-weight:950;letter-spacing:.13em;color:#19a99f}.gdx-panel-v4__why-share-v11 h3{margin:3px 0 0;font-size:17px}.gdx-panel-v4__why-share-v11 p{margin:7px 0 0;font-size:12px;opacity:.78}.gdx-panel-v4__why-share-v11 .a{display:flex;flex-wrap:wrap;gap:8px;margin-top:11px}.gdx-panel-v4__why-share-v11 button,.gdx-panel-v4__why-share-v11 a{appearance:none;border:1px solid rgba(31,142,137,.34);border-radius:11px;padding:10px 13px;font:850 12px/1.1 Arial,sans-serif;cursor:pointer;text-decoration:none}.gdx-panel-v4__why-share-v11 .primary{background:#0c8f86;color:#fff}.gdx-panel-v4__why-share-v11 .secondary{background:rgba(255,255,255,.08);color:inherit}.gdx-panel-v4__why-share-v11 .s{margin-top:8px;font-size:11px;opacity:.75}.gdx-panel-v4__why-share-v11 .p{margin-top:10px;border-radius:12px;overflow:hidden;background:#071d1e;padding:8px}.gdx-panel-v4__why-share-v11 .p img{display:block;width:100%;height:auto;border-radius:8px}';document.head.appendChild(s)\r\n  }\r\n  function mount(){\r\n    var root=modalRoot();if(!root)return null;var old=root.querySelector('[data-gdx-panel-v4-why-share-v11=\"1\"]');if(old)return old;ensureStyles();\r\n    var m=document.createElement('section');m.className='gdx-panel-v4__why-share-v11';m.dataset.gdxPanelV4WhyShareV11='1';\r\n    m.innerHTML='<div class=\"k\">NORA \u00B7 KARAR PAYLA\u015EIMI</div><h3>Bu karar\u0131 payla\u015F</h3><p>\u00DCr\u00FCn, se\u00E7ilen ama\u00E7, \u00FC\u00E7 karar skoru, karar kriterleri, NORA \u00F6zeti, QR ve ba\u011Flant\u0131 tek kartta haz\u0131rlan\u0131r.</p><div class=\"a\"><button class=\"primary\" data-p>Payla\u015F\u0131m Kart\u0131n\u0131 Haz\u0131rla</button><button class=\"secondary\" data-s hidden>\u015Eimdi Payla\u015F</button><a class=\"secondary\" data-d hidden>PNG \u0130ndir</a></div><div class=\"s\" data-status>Haz\u0131r de\u011Fil.</div><div class=\"p\" data-preview hidden></div>';\r\n    var head=root.querySelector('.gdx-r11-modal-head');if(head&&head.parentNode)head.parentNode.insertBefore(m,head.nextSibling);else root.querySelector('.gdx-r11-modal-panel')?.appendChild(m);LAST.mounted=true;bind(m);return m\r\n  }\r\n\r\n  function rounded(ctx,x,y,w,h,r,fill,stroke,lw){ctx.beginPath();ctx.moveTo(x+r,y);ctx.arcTo(x+w,y,x+w,y+h,r);ctx.arcTo(x+w,y+h,x,y+h,r);ctx.arcTo(x,y+h,x,y,r);ctx.arcTo(x,y,x+w,y,r);ctx.closePath();if(fill){ctx.fillStyle=fill;ctx.fill()}if(stroke){ctx.strokeStyle=stroke;ctx.lineWidth=lw||1;ctx.stroke()}}\r\n  function text(ctx,t,x,y,o){o=o||{};ctx.fillStyle=o.color||'#f2fffb';ctx.font=o.font||'700 24px Arial';ctx.textAlign=o.align||'left';ctx.textBaseline='top';ctx.fillText(String(t||''),x,y)}\r\n  function wrap(ctx,t,x,y,w,lh,max,o){o=o||{};ctx.fillStyle=o.color||'#f2fffb';ctx.font=o.font||'700 24px Arial';ctx.textAlign=o.align||'left';ctx.textBaseline='top';var words=clean(t).split(' '),lines=[],line='';words.forEach(function(word){var test=line?line+' '+word:word;if(ctx.measureText(test).width>w&&line){lines.push(line);line=word}else line=test});if(line)lines.push(line);var clipped=lines.length>max;lines=lines.slice(0,max);if(clipped&&lines.length){var last=lines[lines.length-1];while(ctx.measureText(last+'\u2026').width>w&&last.length>1)last=last.slice(0,-1);lines[lines.length-1]=last+'\u2026'}lines.forEach(function(v,i){ctx.fillText(v,x,y+i*lh)});return lines.length}\r\n  function drawRemote(ctx,url,x,y,w,h){return new Promise(function(resolve){if(!url)return resolve(false);var img=new Image();img.crossOrigin='anonymous';img.onload=function(){try{var sc=Math.min(w/img.naturalWidth,h/img.naturalHeight),dw=img.naturalWidth*sc,dh=img.naturalHeight*sc;ctx.drawImage(img,x+(w-dw)/2,y+(h-dh)/2,dw,dh);resolve(true)}catch(_){resolve(false)}};img.onerror=function(){resolve(false)};img.src=url})}\r\n\r\n  function renderCard(m){\r\n    var c=document.createElement('canvas');c.width=W;c.height=H;var ctx=c.getContext('2d');if(!ctx)return Promise.resolve(null);\r\n    var g=ctx.createLinearGradient(0,0,0,H);g.addColorStop(0,'#041716');g.addColorStop(1,'#071119');ctx.fillStyle=g;ctx.fillRect(0,0,W,H);\r\n    rounded(ctx,42,42,996,1356,30,'#0a2625','#1b8e89',2);\r\n    text(ctx,'NORA \u00B7 PANEL LED \u00B7 NEDEN BU \u00DCR\u00DCN?',76,72,{font:'900 24px Arial',color:'#63f1d7'});\r\n    wrap(ctx,m.title,76,108,690,43,2,{font:'900 38px Arial',color:'#fff'});\r\n    rounded(ctx,820,76,184,150,20,'#fff','#2f8d88',2);\r\n    var productPromise=drawRemote(ctx,m.productImageUrl,834,90,156,122).then(function(ok){if(!ok)text(ctx,'\u00DCR\u00DCN',912,134,{font:'900 24px Arial',color:'#17344a',align:'center'})});\r\n    if(m.role){rounded(ctx,76,182,340,38,19,'#113b38','#27625e',1);text(ctx,m.role,246,192,{font:'800 14px Arial',color:'#e7fffa',align:'center'})}\r\n\r\n    rounded(ctx,76,242,928,150,20,'#103835','#275f5c',1);\r\n    text(ctx,'SE\u00C7\u0130LEN AMA\u00C7 \u00B7 '+m.purposeLabel,100,264,{font:'900 18px Arial',color:'#ffd65c'});\r\n    wrap(ctx,m.purposeDescription,100,298,860,25,3,{font:'700 15px Arial',color:'#eefcf8'});\r\n\r\n    text(ctx,'\u00DC\u00C7 AYRI KARAR \u00D6L\u00C7\u00DCS\u00DC',76,422,{font:'900 18px Arial',color:'#63f1d7'});\r\n    var sx=[76,386,696],tones=['#27d17f','#ffd022','#40c3e0'];\r\n    m.scores.slice(0,3).forEach(function(s,i){\r\n      rounded(ctx,sx[i],456,288,132,18,'#102f2f','#285a57',1);\r\n      text(ctx,s.label,sx[i]+18,476,{font:'900 16px Arial',color:'#e7fffa'});\r\n      text(ctx,Math.round(s.value)+'/100',sx[i]+18,509,{font:'900 34px Arial',color:tones[i]});\r\n      rounded(ctx,sx[i]+18,560,252,8,4,'#23413f');rounded(ctx,sx[i]+18,560,252*Math.max(0,Math.min(100,s.value))/100,8,4,tones[i]);\r\n    });\r\n\r\n    rounded(ctx,76,618,650,370,24,'#0d302e','#26625e',1.5);\r\n    text(ctx,'BU \u00DCR\u00DCN\u00DC \u00D6NE \u00C7IKARAN NEDENLER',104,644,{font:'900 20px Arial',color:'#ffd65c'});\r\n    (m.reasons||[]).slice(0,4).forEach(function(r,i){\r\n      var yy=686+i*68;\r\n      rounded(ctx,104,yy,594,58,14,'#0b2525','#234b49',1);\r\n      text(ctx,String(i+1).padStart(2,'0'),120,yy+12,{font:'900 13px Arial',color:'#63f1d7'});\r\n      text(ctx,r.title||'Karar kriteri',154,yy+8,{font:'900 13px Arial',color:'#fff'});\r\n      var right=[r.meta,r.score].filter(Boolean).join(' \u00B7 ');if(right)text(ctx,right,674,yy+8,{font:'900 10px Arial',color:'#ffd65c',align:'right'});\r\n      wrap(ctx,r.comment||'',154,yy+29,520,18,1,{font:'700 11.5px Arial',color:'#bad8d2'});\r\n    });\r\n\r\n    rounded(ctx,750,618,254,370,24,'#0b2020','#265957',1.5);\r\n    text(ctx,'QR / SONUCU A\u00C7',777,644,{font:'900 17px Arial',color:'#63f1d7'});\r\n    rounded(ctx,774,686,206,206,18,'#fff','#2f8d88',2);\r\n    var qr=qrApi();if(qr&&qr.ready&&typeof qr.drawToCanvas==='function')qr.drawToCanvas(ctx,m.qrUrl||m.url,790,702,174,{background:'#fff',foreground:'#020617',quiet:4});else text(ctx,'QR',877,762,{font:'900 58px Arial',color:'#17344a',align:'center'});\r\n    text(ctx,'CANFOTO.COM',877,908,{font:'900 16px Arial',color:'#63f1d7',align:'center'});\r\n    wrap(ctx,'QR kodu ayn\u0131 ama\u00E7, ayn\u0131 \u00FCr\u00FCn ve \u201CNeden Bu \u00DCr\u00FCn?\u201D karar ekran\u0131n\u0131 yeniden a\u00E7ar.',774,940,206,18,3,{font:'700 11px Arial',color:'#bad8d2'});\r\n\r\n    rounded(ctx,76,1020,928,240,24,'#092927','#1b8e89',1.5);\r\n    text(ctx,'NORA KARAR \u00D6ZET\u0130',104,1046,{font:'900 22px Arial',color:'#63f1d7'});\r\n    wrap(ctx,m.nora,104,1088,870,27,6,{font:'700 16px Arial',color:'#eefcf8'});\r\n    text(ctx,'CANFOTO.COM',540,1340,{font:'900 31px Arial',color:'#63f1d7',align:'center'});\r\n    return productPromise.then(function(){return new Promise(function(resolve){c.toBlob(function(blob){if(!blob)return resolve(null);resolve({canvas:c,blob:blob,dataUrl:c.toDataURL('image/png'),model:m})},'image/png',1)})})\r\n  }\r\n\r\n  function status(m,v){var e=m&&m.querySelector('[data-status]');if(e)e.textContent=clean(v)}\r\n  function preparedUi(m,p){var pv=m.querySelector('[data-preview]'),s=m.querySelector('[data-s]'),d=m.querySelector('[data-d]');pv.hidden=!p;pv.innerHTML=p?'<img src=\"'+esc(p.dataUrl)+'\" alt=\"Panel neden bu \u00FCr\u00FCn payla\u015F\u0131m kart\u0131\">':'';s.hidden=!p;d.hidden=!p;if(p){d.href=p.dataUrl;d.download='canfoto-panel-neden-bu-urun.png'}}\r\n  function copy(v){if(navigator.clipboard&&navigator.clipboard.writeText)return navigator.clipboard.writeText(v);var a=document.createElement('textarea');a.value=v;a.style.position='fixed';a.style.opacity='0';document.body.appendChild(a);a.select();document.execCommand('copy');a.remove();return Promise.resolve()}\r\n  function prepare(){var r=modalRoot(),m=mount(),data=model();if(!r||!m||!data)return Promise.resolve({ok:false,code:'NO_OPEN_WHY',version:VERSION});status(m,'Payla\u015F\u0131m kart\u0131 haz\u0131rlan\u0131yor...');return renderCard(data).then(function(p){LAST.prepared=p;preparedUi(m,p);status(m,p?'Payla\u015F\u0131m kart\u0131 haz\u0131r.':'Kart haz\u0131rlanamad\u0131.');return{ok:!!p,version:VERSION,scoreCount:data.scores.length,reasonCount:data.reasons.length,url:data.url,qrUrl:data.qrUrl||data.url}})}\r\n  function shareNow(){var p=LAST.prepared;if(!p)return Promise.resolve({ok:false,code:'NOT_PREPARED',version:VERSION});var f=typeof File==='function'?new File([p.blob],'canfoto-panel-neden-bu-urun.png',{type:'image/png'}):null;if(f&&navigator.share&&(!navigator.canShare||navigator.canShare({files:[f]})))return navigator.share({title:p.model.title,text:p.model.nora,url:p.model.url,files:[f]}).then(function(){return{ok:true,method:'NATIVE_FILE',version:VERSION}}).catch(function(e){return{ok:false,code:e&&e.name==='AbortError'?'CANCELLED':'FAILED',version:VERSION}});var a=document.createElement('a');a.href=p.dataUrl;a.download='canfoto-panel-neden-bu-urun.png';document.body.appendChild(a);a.click();a.remove();return copy([p.model.title,p.model.purposeLabel,p.model.nora,p.model.url].join('\\n')).then(function(){return{ok:true,method:'DOWNLOAD_AND_COPY',version:VERSION}})}\r\n  function bind(m){if(!m||m.__whyV11)return;m.__whyV11=true;m.addEventListener('click',function(e){if(e.target.closest('[data-p]')){e.preventDefault();prepare()}else if(e.target.closest('[data-s]')){e.preventDefault();shareNow()}})}\r\n  function refresh(){var r=modalRoot();if(!r)return false;var m=mount();bind(m);model();return true}\r\n  function requestRefresh(){clearTimeout(timer);timer=setTimeout(refresh,50)}\r\n  function warm(){[0,40,120,240,480,900,1500].forEach(function(t){setTimeout(refresh,t)})}\r\n  function boot(){perfMark('BOOT');refresh();observer=new MutationObserver(requestRefresh);observer.observe(document.body,{subtree:true,childList:true,attributes:true,attributeFilter:['class','hidden','style','aria-hidden']});document.addEventListener('click',function(e){if(e.target.closest('[data-gdx-r11-action=\"reason\"],[data-gdx-panel-rec-why]'))warm()},true);setInterval(function(){if(modalRoot())refresh()},700);warm();if(parseDeepLink(location.href)){perfMark('RESTORE_SCHEDULED');var target=parseDeepLink(location.href),loader=window.GDX_NORA_UNIVERSAL_SHARE_LOADER_V1,token=loader&&loader.begin?loader.begin('panel','why'):'';setTimeout(function(){if(loader&&loader.stage)loader.stage(token,18,'Se\u00E7im motoru haz\u0131rlan\u0131yor\u2026','Motor haz\u0131rlan\u0131yor');restoreDeepLink(location.href).then(function(r){LAST.restoreResult=r;warm();if(!(r&&r.ok)){if(loader&&loader.finish)loader.finish(token,false,r);return}if(loader&&loader.stage)loader.stage(token,88,'Hedef \u00FCr\u00FCn ekran\u0131 sabitleniyor\u2026','Final ekran do\u011Frulan\u0131yor');setTimeout(function(){var snap=target?stabilitySnapshot(target):null;var finalOk=!!(snap&&snap.exact);var finalResult=finalOk?r:{ok:false,code:'WHY_FINAL_TARGET_NOT_STABLE',version:VERSION,target:target,snapshot:snap,restoreResult:r};LAST.finalTargetResult=finalResult;if(loader&&loader.finish)loader.finish(token,finalOk,finalResult)},700)})},300)}}\r\n  window.GDX_PANEL_LED_V4_SHARE_WHY={ready:true,version:VERSION,refresh:refresh,prepare:prepare,shareNow:shareNow,getModel:model,buildDeepLink:buildDeepLink,buildQrDeepLink:buildQrDeepLink,parseDeepLink:parseDeepLink,restoreDeepLink:restoreDeepLink,_test:{hashKey:hashKey,matchesParsedProduct:matchesParsedProduct}};\r\n  window.debugPanelV4UniversalShareWhyQaV11=function(){refresh();var r=modalRoot(),m=r&&r.querySelector('[data-gdx-panel-v4-why-share-v11=\"1\"]'),data=r?model():LAST.model,p=data?parseDeepLink(data.url):null,qp=data?parseDeepLink(data.qrUrl):null;var deepPass=!!(p&&data&&p.key===data.productKey),qrPass=!!(qp&&data&&matchesParsedProduct(qp,data.productKey));var pass=!!(r&&m&&data&&data.scores.length===3&&data.productImageUrl&&data.purposeLabel&&data.reasons.length>=1&&deepPass&&qrPass);var result={ok:pass,version:VERSION,whyVisible:!!r,shareMountExists:!!m,scoreCount:data?data.scores.length:0,reasonCount:data?data.reasons.length:0,reasonTitles:data?data.reasons.map(function(x){return x.title}):[],productImageExists:!!(data&&data.productImageUrl),purposeLabel:data?data.purposeLabel:'',purposeDescriptionExists:!!(data&&data.purposeDescription),deepLinkUrl:data?data.url:'',qrDeepLinkUrl:data?data.qrUrl:'',deepLinkTargetPass:deepPass,qrDeepLinkTargetPass:qrPass,qrUsesCompactRef:!!(qp&&qp.ref&&!qp.key),qrHasGenericOpen:!!(data&&data.qrUrl&&new URL(data.qrUrl).searchParams.get(OPEN)),previewPrepared:!!(LAST.prepared&&LAST.prepared.dataUrl),panelPolicy:'SEALED_CORE_NO_TOUCH',note:'V1.1.4 keeps the full textual WHY URL unchanged; physical mobile FULL_KEY now uses the same bounded cold-start readiness gate that already made COMPACT_REF QR restore pass.'};console.log(result);return result};\r\n  window.debugPanelV4UniversalShareWhyDeepLinkQaV11=function(){var p=parseDeepLink(location.href),r=modalRoot(),data=r?model():null,sel=selectionState()||{};var productPass=!!(p&&data&&matchesParsedProduct(p,data.productKey));var exact=!!(p&&r&&data&&productPass&&clean(p.purposeKey)===clean(sel.activePurposeKey)&&clean(p.subPurposeKey)===clean(sel.activeSubPurposeKey));var result={ok:exact,version:VERSION,locationHasWhyDeepLink:!!p,whyVisible:!!r,targetProductKey:p?p.key:'',targetProductRef:p?p.ref:'',activeProductKey:data?data.productKey:'',productTargetPass:productPass,targetPurposeKey:p?p.purposeKey:'',activePurposeKey:clean(sel.activePurposeKey),targetSubPurposeKey:p?p.subPurposeKey:'',activeSubPurposeKey:clean(sel.activeSubPurposeKey),linkMode:p?(p.key?'FULL_KEY':'COMPACT_REF'):'',finalTargetResult:LAST.finalTargetResult||null,restoreResult:LAST.restoreResult||null};console.log(result);return result};\r\n  window.debugPanelV4WhyLatencyQaV1=function(){var r=PERF.result||window.__GDX_PANEL_WHY_PERF_V1||{ok:false,version:PERF_VERSION,code:'NO_WHY_PERF_RESULT',active:PERF.active,marks:Object.assign({},PERF.marks)};console.log(r);return r};\r\n  window.debugPanelV4WhyStableTargetQaV1=function(){var r=STABILITY.final||window.__GDX_PANEL_WHY_STABILITY_V1||{ok:false,version:STABILITY.version,code:'STABILITY_AUDIT_PENDING',target:STABILITY.target,samples:STABILITY.samples.slice()};console.log(r);return r};\r\n  window.debugPanelV4WhyRouteQaV1=function(){var p=parseDeepLink(location.href),u=new URL(location.href);var r={ok:!!(p&&clean(u.searchParams.get(OPEN))!=='panel-usecase'),version:'PANEL-WHY-QR01-ROUTE-QA-V1',locationHasWhyDeepLink:!!p,gdxOpen:clean(u.searchParams.get(OPEN)),gdxOpenSuppressed:clean(u.searchParams.get(OPEN))!=='panel-usecase',linkMode:p?(p.key?'FULL_KEY':'COMPACT_REF'):'',targetProductKey:p?p.key:'',targetProductRef:p?p.ref:'',targetPurposeKey:p?p.purposeKey:'',targetSubPurposeKey:p?p.subPurposeKey:''};console.log(r);return r};\r\n  window.debugPanelV4WhyQrRestoreQaV2=function(){var p=parseDeepLink(location.href),r=modalRoot(),data=r?model():null,sel=selectionState()||{},rr=LAST.restoreResult||null;var compact=!!(p&&p.ref&&!p.key),productPass=!!(p&&data&&matchesParsedProduct(p,data.productKey)),exact=!!(compact&&r&&data&&productPass&&clean(sel.activePurposeKey)===clean(p.purposeKey)&&clean(sel.activeSubPurposeKey)===clean(p.subPurposeKey));var out={ok:exact,version:'PANEL-WHY-QR02-MOBILE-COLD-START-READINESS-GATE-V1',compactRefMode:compact,whyVisible:!!r,productTargetPass:productPass,targetProductRef:p?p.ref:'',activeProductKey:data?data.productKey:'',targetPurposeKey:p?p.purposeKey:'',activePurposeKey:clean(sel.activePurposeKey),targetSubPurposeKey:p?p.subPurposeKey:'',activeSubPurposeKey:clean(sel.activeSubPurposeKey),restoreResult:rr,routeGate:rr&&rr.routeGate?rr.routeGate:null,recoveryAttempted:!!(rr&&rr.recoveryAttempted),note:'Run on a desktop tab opened from the compact QR URL. Physical mobile success is still the sealing criterion.'};console.log(out);return out};\r\n  window.debugPanelV4WhyMobileFullKeyQaV1=function(){\r\n    var p=parseDeepLink(location.href),r=modalRoot(),data=r?model():null,sel=selectionState()||{},rr=LAST.restoreResult||null;\r\n    var full=!!(p&&p.key&&!p.ref),productPass=!!(p&&data&&matchesParsedProduct(p,data.productKey));\r\n    var exact=!!(full&&r&&data&&productPass&&clean(sel.activePurposeKey)===clean(p.purposeKey)&&clean(sel.activeSubPurposeKey)===clean(p.subPurposeKey));\r\n    var out={\r\n      ok:exact,\r\n      version:'PANEL-WHY-DL03-MOBILE-FULLKEY-COLD-START-GATE-V1',\r\n      fullKeyMode:full,\r\n      likelyMobile:isLikelyMobileColdStart(),\r\n      whyVisible:!!r,\r\n      productTargetPass:productPass,\r\n      targetProductKey:p?p.key:'',\r\n      activeProductKey:data?data.productKey:'',\r\n      targetPurposeKey:p?p.purposeKey:'',\r\n      activePurposeKey:clean(sel.activePurposeKey),\r\n      targetSubPurposeKey:p?p.subPurposeKey:'',\r\n      activeSubPurposeKey:clean(sel.activeSubPurposeKey),\r\n      restoreResult:rr,\r\n      mobileGateApplied:!!(rr&&rr.mobileGateMode),\r\n      mobileFullKeyMode:!!(rr&&rr.mobileFullKeyMode),\r\n      recoveryAttempted:!!(rr&&rr.recoveryAttempted),\r\n      note:'Run on a mobile FULL_KEY WHY deeplink target. PASS requires exact product + purpose + subpurpose + visible WHY modal.'\r\n    };\r\n    console.log(out);return out\r\n  };\r\n  window.debugPanelV4UniversalShareWhyQaV1=window.debugPanelV4UniversalShareWhyQaV11;\r\n  window.debugPanelV4UniversalShareWhyDeepLinkQaV1=window.debugPanelV4UniversalShareWhyDeepLinkQaV11;\r\n  window.debugPanelV4UniversalWhyLoaderQaV1=function(){var svc=window.GDX_NORA_UNIVERSAL_SHARE_LOADER_V1;return svc&&svc.qa?svc.qa('why'):{ok:false,version:'PANEL-UNIVERSAL-LOADER-01-WHY-SETUP-V1',code:'LOADER_SERVICE_NOT_READY'}};\r\n  window.debugPanelV4WhyQrQaV1=function(){refresh();var data=model()||LAST.model;if(!data){var z={ok:false,version:'PANEL-WHY-QR02-MOBILE-COLD-START-READINESS-GATE-V1',code:'NO_OPEN_WHY'};console.log(z);return z}var full=parseDeepLink(data.url),compact=parseDeepLink(data.qrUrl),fu=new URL(data.url),qu=new URL(data.qrUrl);var result={ok:!!(full&&compact&&full.key===data.productKey&&compact.ref===hashKey(data.productKey)&&!compact.key&&clean(qu.searchParams.get(OPEN))!=='panel-usecase'&&data.qrUrl.length<data.url.length),version:'PANEL-WHY-QR02-MOBILE-COLD-START-READINESS-GATE-V1',fullDeepLinkUrl:data.url,qrDeepLinkUrl:data.qrUrl,fullLength:data.url.length,qrLength:data.qrUrl.length,qrShorterThanFull:data.qrUrl.length<data.url.length,qrUsesCompactRef:!!(compact&&compact.ref&&!compact.key),qrRef:compact?compact.ref:'',expectedRef:hashKey(data.productKey),qrProductRefPass:!!(compact&&compact.ref===hashKey(data.productKey)),qrHasGenericOpen:clean(qu.searchParams.get(OPEN))==='panel-usecase',fullHasGenericOpen:clean(fu.searchParams.get(OPEN))==='panel-usecase',productKey:data.productKey,purposeKey:compact?compact.purposeKey:'',subPurposeKey:compact?compact.subPurposeKey:'',note:'Generation-side QR audit. Full textual deeplink remains unchanged; compact QR restore now adds a QR-only mobile cold-start readiness gate and one bounded late-init recovery.'};console.log(result);return result};\r\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',boot,{once:true});else boot();\r\n})(window, document);\r\n\r\n/* =========================================================\r\n   CAN FOTO \u2014 PANEL LED V4\r\n   FAZ07-F1 \u00B7 MAIN SETUP CDN VISUAL SHARE V1\r\n\r\n   SCOPE\r\n   - PANEL MAIN setup only.\r\n   - Exact currently rendered R30A HTTPS CDN visual.\r\n   - 1600\u00D7900 source-dominant PNG prepared on demand.\r\n   - Exact visual deeplink = sealed Setup M01 deeplink + visual hash marker.\r\n   - Prepared File is created during prepare; physical \u015Eimdi Payla\u015F uses it directly.\r\n\r\n   NO-TOUCH\r\n   - Existing Setup M01 V1.5.1 restore/build/parse functions are NOT replaced.\r\n   - R30A source/manifest/state is read-only.\r\n   - R11/R28/scoring/ranking/F-P/setup truth/commerce/warranty are untouched.\r\n   - Top3 / WHY / Comparison / Universal Loader sealed blocks are untouched.\r\n   - No new MutationObserver, no setInterval, no shared-layout change.\r\n   ========================================================= */\r\n(function(window,document){\r\n  'use strict';\r\n\r\n  if(window.GDX_PANEL_V4_FAZ07_F1_MAIN_CDN_SHARE_READY)return;\r\n  window.GDX_PANEL_V4_FAZ07_F1_MAIN_CDN_SHARE_READY=true;\r\n\r\n  var VERSION='PANEL-FAZ07-F1.3-MAIN-SETUP-CDN-IMMEDIATE-CTA-FULLSCREEN-ZOOM-V1';\r\n  var SOURCE_OWNER='PANEL_R30A_ACTIVE_CDN_VISUAL';\r\n  var VISUAL_PARAM='gdx_v';\r\n  var VISUAL_HASH_PARAM='gdx_vk';\r\n  var WIDTH=1600;\r\n  var HEIGHT=900;\r\n  var MOUNT_ATTR='data-gdx-panel-f1-main-cdn-share';\r\n  var CTA_ATTR='data-gdx-panel-f1-main-cdn-share-cta';\r\n  var ZOOM_CTA_ATTR='data-gdx-panel-f13-main-cdn-zoom-cta';\r\n  var TRAY_ID='gdxPanelV4F1MainCdnShareTray';\r\n  var LIGHTBOX_ID='gdxPanelV4F13MainCdnLightbox';\r\n  var STYLE_ID='gdxPanelV4F1MainCdnShareStyle';\r\n\r\n  var STATE={\r\n    mounted:false,\r\n    mountCount:0,\r\n    preparing:false,\r\n    prepared:null,\r\n    lastError:null,\r\n    lastValidated:null,\r\n    targetMode:false,\r\n    target:null,\r\n    targetFinal:null,\r\n    targetWatchStartedAt:0,\r\n    targetWatchFinishedAt:0,\r\n    targetTimedOut:false,\r\n    nativeShareCalls:0,\r\n    lastShareResult:null,\r\n    sourceLoadCaptureCount:0,\r\n    sourceLoadMountRefreshCount:0,\r\n    lastSourceLoadAt:0,\r\n    lightboxOpen:false,\r\n    lightboxOpenCount:0,\r\n    lightboxCloseCount:0,\r\n    lightboxZoom:1,\r\n    lightboxSourceHash:'',\r\n    lightboxSourceUrl:'',\r\n    lightboxNaturalWidth:0,\r\n    lightboxNaturalHeight:0\r\n  };\r\n\r\n  function clean(v){return String(v==null?'':v).replace(/\\s+/g,' ').trim()}\r\n  function esc(v){return String(v==null?'':v).replace(/[&<>\"']/g,function(c){return{'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#39;'}[c]})}\r\n  function visible(el){\r\n    if(!el||!(el instanceof Element))return false;\r\n    var s=getComputedStyle(el);\r\n    if(el.hidden||s.display==='none'||s.visibility==='hidden'||Number(s.opacity||1)===0)return false;\r\n    var r=el.getBoundingClientRect();\r\n    return r.width>80&&r.height>80\r\n  }\r\n  function canonicalSourceUrl(value){\r\n    try{\r\n      var u=new URL(value||'',location.origin);\r\n      return u.origin+u.pathname+(u.search||'')\r\n    }catch(_){return clean(value)}\r\n  }\r\n  function fnv32(value){\r\n    var s=canonicalSourceUrl(value),h=2166136261;\r\n    for(var i=0;i<s.length;i+=1){h^=s.charCodeAt(i);h=Math.imul(h,16777619)}\r\n    return('00000000'+(h>>>0).toString(16)).slice(-8)\r\n  }\r\n  function setupSvc(){return window.GDX_PANEL_LED_V4_SHARE_SETUP||null}\r\n  function qrApi(){return window.GDX_PANEL_LED_V4_QR||null}\r\n\r\n  function rawSource(){\r\n    var layers=[].slice.call(document.querySelectorAll('[data-gdx-panel-r30a-cdn-layer=\"1\"]'));\r\n    var layer=null;\r\n    for(var i=0;i<layers.length;i+=1){if(visible(layers[i])){layer=layers[i];break}}\r\n    var img=layer&&layer.querySelector('img[data-gdx-panel-r30a-cdn-visual=\"1\"]');\r\n    var host=layer&&layer.closest('[data-gdx-panel-r30a-setup-visual=\"1\"]');\r\n    if(!layer||!img||!host||!visible(layer))return null;\r\n    var src=clean(img.getAttribute('data-gdx-panel-r30a-src')||img.currentSrc||img.getAttribute('src'));\r\n    if(!/^https:\\/\\//i.test(src))return null;\r\n    return{\r\n      owner:SOURCE_OWNER,\r\n      layer:layer,\r\n      host:host,\r\n      img:img,\r\n      src:src,\r\n      visualHash:fnv32(src),\r\n      templateKey:clean(host.getAttribute('data-gdx-panel-r30a-template-key')),\r\n      scenarioKey:clean(host.getAttribute('data-gdx-panel-r30a-scenario-key')),\r\n      cdnSelectionKey:clean(host.getAttribute('data-gdx-panel-r30a-cdn-selection-key')),\r\n      activeSelectionKey:clean(host.getAttribute('data-gdx-panel-r30a-active-selection-key')),\r\n      productKey:clean(host.getAttribute('data-gdx-panel-r30a-product-key')),\r\n      exactR32:clean(host.getAttribute('data-gdx-panel-r32-exact')),\r\n      alt:clean(img.alt)||'Panel LED kurulum g\u00F6rseli',\r\n      naturalWidth:Number(img.naturalWidth||0),\r\n      naturalHeight:Number(img.naturalHeight||0)\r\n    }\r\n  }\r\n\r\n  function mainModel(){\r\n    var svc=setupSvc();\r\n    if(!svc||typeof svc.getSetupModel!=='function')return null;\r\n    try{return svc.getSetupModel('MAIN')||null}catch(_){return null}\r\n  }\r\n\r\n  function parseSetup(value){\r\n    var svc=setupSvc();\r\n    if(!svc||typeof svc.parseSetupDeepLink!=='function')return null;\r\n    try{return svc.parseSetupDeepLink(value)||null}catch(_){return null}\r\n  }\r\n\r\n  function validatedCurrent(){\r\n    var src=rawSource();\r\n    var model=mainModel();\r\n    var parsed=model&&model.url?parseSetup(model.url):null;\r\n    var activeVisual=window.GDX_PANEL_V4_R30A_ACTIVE_VISUAL_STATE||null;\r\n    var sourceStatePass=!!(\r\n      src&&activeVisual&&\r\n      clean(activeVisual.activeTemplateKey)===clean(src.templateKey)&&\r\n      clean(activeVisual.cdnUrl)===clean(src.src)&&\r\n      activeVisual.cdnVisible===true\r\n    );\r\n    var modelPass=!!(\r\n      src&&model&&parsed&&\r\n      clean(parsed.variant||'MAIN')==='MAIN'&&\r\n      clean(parsed.key)===clean(src.productKey)&&\r\n      clean(src.activeSelectionKey)===clean(parsed.purposeKey)+'::'+clean(parsed.subPurposeKey)\r\n    );\r\n    var result={ok:!!(src&&model&&parsed&&sourceStatePass&&modelPass),src:src,model:model,parsed:parsed,sourceStatePass:sourceStatePass,modelPass:modelPass};\r\n    STATE.lastValidated=result;\r\n    return result\r\n  }\r\n\r\n  function visualDeepLink(model,src){\r\n    if(!model||!src||!model.url)return'';\r\n    try{\r\n      var u=new URL(model.url,location.origin);\r\n      u.searchParams.set(VISUAL_PARAM,'1');\r\n      u.searchParams.set(VISUAL_HASH_PARAM,src.visualHash);\r\n      u.hash='';\r\n      return u.toString()\r\n    }catch(_){return''}\r\n  }\r\n\r\n  function parseVisualDeepLink(value){\r\n    try{\r\n      var u=new URL(value||location.href,location.origin);\r\n      if(clean(u.searchParams.get(VISUAL_PARAM))!=='1')return null;\r\n      var visualHash=clean(u.searchParams.get(VISUAL_HASH_PARAM));\r\n      var setup=parseSetup(u.toString());\r\n      if(!visualHash||!setup)return null;\r\n      return{visualHash:visualHash,setup:setup,url:u.toString()}\r\n    }catch(_){return null}\r\n  }\r\n\r\n  function exactSetupTarget(target,model){\r\n    var active=model&&model.url?parseSetup(model.url):null;\r\n    if(!target||!active)return false;\r\n    return !!(\r\n      clean(active.key)===clean(target.setup.key)&&\r\n      clean(active.purposeKey)===clean(target.setup.purposeKey)&&\r\n      clean(active.subPurposeKey)===clean(target.setup.subPurposeKey)&&\r\n      clean(active.variant||'MAIN')===clean(target.setup.variant||'MAIN')&&\r\n      clean(active.altMode||'')===clean(target.setup.altMode||'')\r\n    )\r\n  }\r\n\r\n  function targetSnapshot(target){\r\n    var validated=validatedCurrent();\r\n    var src=validated.src;\r\n    var model=validated.model;\r\n    var setupExact=exactSetupTarget(target,model);\r\n    var visualExact=!!(src&&target&&clean(src.visualHash)===clean(target.visualHash));\r\n    var exact=!!(target&&validated.ok&&setupExact&&visualExact);\r\n    return{\r\n      exact:exact,\r\n      setupExact:setupExact,\r\n      visualExact:visualExact,\r\n      currentValidated:!!validated.ok,\r\n      sourceVisible:!!src,\r\n      sourceOwner:src?src.owner:'',\r\n      sourceUrl:src?src.src:'',\r\n      sourceHash:src?src.visualHash:'',\r\n      targetVisualHash:target?target.visualHash:'',\r\n      templateKey:src?src.templateKey:'',\r\n      scenarioKey:src?src.scenarioKey:'',\r\n      cdnSelectionKey:src?src.cdnSelectionKey:'',\r\n      activeSelectionKey:src?src.activeSelectionKey:'',\r\n      productKey:src?src.productKey:'',\r\n      exactR32:src?src.exactR32:'',\r\n      naturalWidth:src?src.naturalWidth:0,\r\n      naturalHeight:src?src.naturalHeight:0,\r\n      purposeLabel:model?clean(model.purposeLabel):'',\r\n      variantKey:model?clean(model.variantKey):'',\r\n      setupUrl:model?clean(model.url):''\r\n    }\r\n  }\r\n\r\n  function beginTargetWatch(){\r\n    var target=parseVisualDeepLink(location.href);\r\n    if(!target)return false;\r\n    STATE.targetMode=true;\r\n    STATE.target=target;\r\n    STATE.targetWatchStartedAt=Date.now();\r\n    STATE.targetTimedOut=false;\r\n    var started=Date.now();\r\n\r\n    (function tick(){\r\n      var snap=targetSnapshot(target);\r\n      if(snap.exact){\r\n        setTimeout(function(){\r\n          var stable=targetSnapshot(target);\r\n          if(stable.exact){\r\n            stable.stableAfterQuietWindow=true;\r\n            STATE.targetFinal=stable;\r\n            STATE.targetWatchFinishedAt=Date.now();\r\n            try{\r\n              var v=validatedCurrent();\r\n              if(v.src&&v.src.layer&&typeof v.src.layer.scrollIntoView==='function'){\r\n                v.src.layer.scrollIntoView({behavior:'smooth',block:'center'})\r\n              }\r\n            }catch(_){}\r\n            finiteMountRefresh();\r\n            return\r\n          }\r\n          if(Date.now()-started>15000){\r\n            stable.stableAfterQuietWindow=false;\r\n            STATE.targetFinal=stable;\r\n            STATE.targetWatchFinishedAt=Date.now();\r\n            STATE.targetTimedOut=true;\r\n            return\r\n          }\r\n          setTimeout(tick,90)\r\n        },260);\r\n        return\r\n      }\r\n      if(Date.now()-started>15000){\r\n        snap.stableAfterQuietWindow=false;\r\n        STATE.targetFinal=snap;\r\n        STATE.targetWatchFinishedAt=Date.now();\r\n        STATE.targetTimedOut=true;\r\n        return\r\n      }\r\n      setTimeout(tick,90)\r\n    })();\r\n    return true\r\n  }\r\n\r\n  function addStyle(){\r\n    if(document.getElementById(STYLE_ID))return;\r\n    var style=document.createElement('style');\r\n    style.id=STYLE_ID;\r\n    style.textContent=\r\n      '['+MOUNT_ATTR+'=\"1\"]{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap;margin:9px 0 2px;padding:0 2px}'+\r\n      '['+CTA_ATTR+'=\"1\"],['+ZOOM_CTA_ATTR+'=\"1\"]{appearance:none;border-radius:999px;font:900 12px/1 Arial,sans-serif;padding:10px 14px;min-height:38px;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease}'+\r\n      '['+CTA_ATTR+'=\"1\"]{border:1px solid rgba(15,118,110,.55);background:#0f766e;color:#fff;box-shadow:0 8px 22px rgba(15,118,110,.18)}'+\r\n      '['+ZOOM_CTA_ATTR+'=\"1\"]{border:1px solid rgba(43,111,138,.52);background:#102429;color:#eafffb;box-shadow:0 8px 22px rgba(2,132,199,.12)}'+\r\n      '['+CTA_ATTR+'=\"1\"]:hover,['+ZOOM_CTA_ATTR+'=\"1\"]:hover{transform:translateY(-1px)}'+\r\n      '['+CTA_ATTR+'=\"1\"]:focus-visible,['+ZOOM_CTA_ATTR+'=\"1\"]:focus-visible{outline:3px solid #0284c7;outline-offset:3px}'+\r\n      '['+CTA_ATTR+'=\"1\"]:disabled{opacity:.58;cursor:wait}'+\r\n      '#'+TRAY_ID+'{position:fixed;right:16px;bottom:16px;z-index:2147483200;width:min(620px,calc(100vw - 32px));max-height:84vh;overflow:auto;border:1px solid rgba(43,216,229,.32);border-radius:20px;background:#07131c;color:#fff;box-shadow:0 24px 80px rgba(0,0,0,.52);padding:14px;font-family:Arial,sans-serif}'+\r\n      '#'+TRAY_ID+' .f1-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}'+\r\n      '#'+TRAY_ID+' .f1-head strong{font-size:15px;color:#67f3da}'+\r\n      '#'+TRAY_ID+' .f1-x{appearance:none;width:36px;height:36px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:#102429;color:#fff;font-size:18px;cursor:pointer}'+\r\n      '#'+TRAY_ID+' .f1-preview{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;border-radius:14px;background:#020617;border:1px solid rgba(255,255,255,.1)}'+\r\n      '#'+TRAY_ID+' .f1-copy{margin:10px 2px;color:#cfe8e3;font-size:12px;line-height:1.45}'+\r\n      '#'+TRAY_ID+' .f1-actions{display:flex;gap:8px;flex-wrap:wrap}'+\r\n      '#'+TRAY_ID+' .f1-actions button,#'+TRAY_ID+' .f1-actions a{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:12px;padding:0 15px;text-decoration:none;font:900 13px/1 Arial,sans-serif;cursor:pointer}'+\r\n      '#'+TRAY_ID+' .f1-primary{border:1px solid #16b5a6;background:#0f766e;color:#fff}'+\r\n      '#'+TRAY_ID+' .f1-secondary{border:1px solid rgba(255,255,255,.2);background:#102429;color:#fff}'+\r\n\r\n      '#'+LIGHTBOX_ID+'{position:fixed;inset:0;z-index:2147483600;background:rgba(2,11,20,.975);color:#fff;font-family:Arial,sans-serif;display:flex;flex-direction:column;overscroll-behavior:contain}'+\r\n      '#'+LIGHTBOX_ID+' .f13-bar{position:relative;z-index:2;display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid rgba(103,243,218,.22);background:rgba(7,19,28,.97);min-height:58px}'+\r\n      '#'+LIGHTBOX_ID+' .f13-title{min-width:0;flex:1 1 auto;font:900 14px/1.2 Arial,sans-serif;color:#eafffb;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}'+\r\n      '#'+LIGHTBOX_ID+' .f13-tools{display:flex;align-items:center;gap:6px;flex:0 0 auto}'+\r\n      '#'+LIGHTBOX_ID+' .f13-tool{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-width:40px;height:38px;padding:0 10px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:#102429;color:#fff;font:900 13px/1 Arial,sans-serif;cursor:pointer}'+\r\n      '#'+LIGHTBOX_ID+' .f13-tool.is-close{font-size:19px;min-width:42px}'+\r\n      '#'+LIGHTBOX_ID+' .f13-tool:focus-visible{outline:3px solid #0284c7;outline-offset:2px}'+\r\n      '#'+LIGHTBOX_ID+' .f13-stage{position:relative;flex:1 1 auto;min-height:0;overflow:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom;padding:18px;display:block}'+\r\n      '#'+LIGHTBOX_ID+' .f13-image{display:block;height:auto;max-width:none;max-height:none;margin:0 auto;border-radius:12px;box-shadow:0 20px 70px rgba(0,0,0,.48);user-select:none;-webkit-user-drag:none}'+\r\n      '#'+LIGHTBOX_ID+' .f13-foot{position:relative;z-index:2;padding:8px 12px 10px;text-align:center;color:#9fc9c2;font:700 11px/1.35 Arial,sans-serif;border-top:1px solid rgba(103,243,218,.12);background:rgba(7,19,28,.96)}'+\r\n\r\n      '@media(max-width:640px){'+\r\n        '['+MOUNT_ATTR+'=\"1\"]{margin-top:7px;gap:7px}'+\r\n        '['+CTA_ATTR+'=\"1\"],['+ZOOM_CTA_ATTR+'=\"1\"]{flex:1 1 145px;min-height:42px;padding-left:10px;padding-right:10px}'+\r\n        '#'+TRAY_ID+'{right:8px;bottom:8px;width:calc(100vw - 16px);padding:10px;border-radius:16px}'+\r\n        '#'+TRAY_ID+' .f1-actions>*{flex:1 1 130px}'+\r\n        '#'+LIGHTBOX_ID+' .f13-bar{padding:8px;gap:6px;min-height:54px}'+\r\n        '#'+LIGHTBOX_ID+' .f13-title{font-size:12px}'+\r\n        '#'+LIGHTBOX_ID+' .f13-tools{gap:4px}'+\r\n        '#'+LIGHTBOX_ID+' .f13-tool{min-width:36px;height:36px;padding:0 8px;font-size:12px}'+\r\n        '#'+LIGHTBOX_ID+' .f13-stage{padding:10px}'+\r\n        '#'+LIGHTBOX_ID+' .f13-foot{font-size:10px;padding:7px 8px 9px}'+\r\n      '}';\r\n    document.head.appendChild(style)\r\n  }\r\n\r\n  function closeFullscreenVisual(reason){\r\n    var box=document.getElementById(LIGHTBOX_ID);\r\n    if(box&&box.parentNode)box.parentNode.removeChild(box);\r\n\r\n    STATE.lightboxOpen=false;\r\n    STATE.lightboxCloseCount+=1;\r\n\r\n    try{\r\n      var root=document.documentElement;\r\n      if(root&&root.hasAttribute('data-gdx-panel-f13-prev-overflow')){\r\n        root.style.overflow=root.getAttribute('data-gdx-panel-f13-prev-overflow')||'';\r\n        root.removeAttribute('data-gdx-panel-f13-prev-overflow')\r\n      }\r\n      var body=document.body;\r\n      if(body&&body.hasAttribute('data-gdx-panel-f13-prev-overflow')){\r\n        body.style.overflow=body.getAttribute('data-gdx-panel-f13-prev-overflow')||'';\r\n        body.removeAttribute('data-gdx-panel-f13-prev-overflow')\r\n      }\r\n    }catch(_){}\r\n\r\n    STATE.lastError=reason&&reason!=='user_close'?STATE.lastError:null;\r\n    return true\r\n  }\r\n\r\n  function fullscreenBaseWidth(stage,src){\r\n    var available=Math.max(280,Number(stage&&stage.clientWidth||window.innerWidth||320)-24);\r\n    var natural=Math.max(available,Number(src&&src.naturalWidth||0));\r\n    return Math.min(available,natural)\r\n  }\r\n\r\n  function applyFullscreenZoom(box,zoom,keepCenter){\r\n    if(!box)return false;\r\n    var stage=box.querySelector('.f13-stage');\r\n    var img=box.querySelector('.f13-image');\r\n    var pct=box.querySelector('[data-f13-zoom-pct]');\r\n    if(!stage||!img)return false;\r\n\r\n    var beforeW=stage.scrollWidth||1;\r\n    var beforeH=stage.scrollHeight||1;\r\n    var centerX=stage.scrollLeft+stage.clientWidth/2;\r\n    var centerY=stage.scrollTop+stage.clientHeight/2;\r\n    var ratioX=centerX/beforeW;\r\n    var ratioY=centerY/beforeH;\r\n\r\n    zoom=Math.max(1,Math.min(4,Number(zoom||1)));\r\n    STATE.lightboxZoom=zoom;\r\n\r\n    var src=rawSource();\r\n    var base=fullscreenBaseWidth(stage,src);\r\n    var maxNatural=Math.max(base,Number(src&&src.naturalWidth||0),1672);\r\n    var targetWidth=Math.min(maxNatural,Math.round(base*zoom));\r\n    img.style.width=targetWidth+'px';\r\n\r\n    if(pct)pct.textContent=Math.round(zoom*100)+'%';\r\n\r\n    if(keepCenter){\r\n      requestAnimationFrame(function(){\r\n        var newW=stage.scrollWidth||1;\r\n        var newH=stage.scrollHeight||1;\r\n        stage.scrollLeft=Math.max(0,ratioX*newW-stage.clientWidth/2);\r\n        stage.scrollTop=Math.max(0,ratioY*newH-stage.clientHeight/2)\r\n      })\r\n    }\r\n\r\n    return true\r\n  }\r\n\r\n  function openFullscreenVisual(){\r\n    var validated=validatedCurrent();\r\n    if(!validated.ok){\r\n      STATE.lastError={code:'FULLSCREEN_SOURCE_NOT_READY',at:Date.now()};\r\n      return false\r\n    }\r\n\r\n    closeFullscreenVisual('replace_existing');\r\n\r\n    var src=validated.src;\r\n    var box=document.createElement('section');\r\n    box.id=LIGHTBOX_ID;\r\n    box.setAttribute('role','dialog');\r\n    box.setAttribute('aria-modal','true');\r\n    box.setAttribute('aria-label','Panel LED kurulum g\u00F6rselini b\u00FCy\u00FCt');\r\n    box.setAttribute('tabindex','-1');\r\n\r\n    box.innerHTML=\r\n      '<div class=\"f13-bar\">'+\r\n        '<div class=\"f13-title\">'+esc(validated.model&&validated.model.purposeLabel||'Panel LED kurulum g\u00F6rseli')+'</div>'+\r\n        '<div class=\"f13-tools\">'+\r\n          '<button type=\"button\" class=\"f13-tool\" data-f13-zoom-out aria-label=\"Uzakla\u015Ft\u0131r\">\u2212</button>'+\r\n          '<button type=\"button\" class=\"f13-tool\" data-f13-zoom-pct aria-label=\"Yak\u0131nla\u015Ft\u0131rma oran\u0131\">100%</button>'+\r\n          '<button type=\"button\" class=\"f13-tool\" data-f13-zoom-in aria-label=\"Yak\u0131nla\u015Ft\u0131r\">+</button>'+\r\n          '<button type=\"button\" class=\"f13-tool is-close\" data-f13-close aria-label=\"Kapat\">\u00D7</button>'+\r\n        '</div>'+\r\n      '</div>'+\r\n      '<div class=\"f13-stage\" data-f13-stage>'+\r\n        '<img class=\"f13-image\" src=\"'+esc(src.src)+'\" alt=\"'+esc(src.alt)+'\" draggable=\"false\">'+\r\n      '</div>'+\r\n      '<div class=\"f13-foot\">G\u00F6rseli kayd\u0131rabilir, + / \u2212 ile yak\u0131nla\u015Ft\u0131rabilirsiniz.</div>';\r\n\r\n    var stage=box.querySelector('.f13-stage');\r\n    var image=box.querySelector('.f13-image');\r\n\r\n    function close(){closeFullscreenVisual('user_close')}\r\n    box.querySelector('[data-f13-close]').addEventListener('click',close);\r\n\r\n    box.querySelector('[data-f13-zoom-in]').addEventListener('click',function(){\r\n      applyFullscreenZoom(box,STATE.lightboxZoom+0.5,true)\r\n    });\r\n    box.querySelector('[data-f13-zoom-out]').addEventListener('click',function(){\r\n      applyFullscreenZoom(box,STATE.lightboxZoom-0.5,true)\r\n    });\r\n    box.querySelector('[data-f13-zoom-pct]').addEventListener('click',function(){\r\n      applyFullscreenZoom(box,1,false);\r\n      stage.scrollLeft=0;\r\n      stage.scrollTop=0\r\n    });\r\n\r\n    stage.addEventListener('click',function(event){\r\n      if(event.target===stage)close()\r\n    });\r\n\r\n    document.body.appendChild(box);\r\n\r\n    try{\r\n      var root=document.documentElement;\r\n      if(root&&!root.hasAttribute('data-gdx-panel-f13-prev-overflow')){\r\n        root.setAttribute('data-gdx-panel-f13-prev-overflow',root.style.overflow||'');\r\n        root.style.overflow='hidden'\r\n      }\r\n      var body=document.body;\r\n      if(body&&!body.hasAttribute('data-gdx-panel-f13-prev-overflow')){\r\n        body.setAttribute('data-gdx-panel-f13-prev-overflow',body.style.overflow||'');\r\n        body.style.overflow='hidden'\r\n      }\r\n    }catch(_){}\r\n\r\n    STATE.lightboxOpen=true;\r\n    STATE.lightboxOpenCount+=1;\r\n    STATE.lightboxSourceHash=src.visualHash;\r\n    STATE.lightboxSourceUrl=src.src;\r\n    STATE.lightboxNaturalWidth=src.naturalWidth;\r\n    STATE.lightboxNaturalHeight=src.naturalHeight;\r\n\r\n    var mobile=window.matchMedia&&window.matchMedia('(max-width:640px)').matches;\r\n    STATE.lightboxZoom=mobile?2:1;\r\n\r\n    function ready(){\r\n      applyFullscreenZoom(box,STATE.lightboxZoom,false);\r\n      if(mobile){\r\n        requestAnimationFrame(function(){\r\n          stage.scrollLeft=Math.max(0,(stage.scrollWidth-stage.clientWidth)/2)\r\n        })\r\n      }\r\n      try{box.focus({preventScroll:true})}catch(_){}\r\n    }\r\n\r\n    if(image.complete&&image.naturalWidth>0)ready();\r\n    else image.addEventListener('load',ready,{once:true});\r\n\r\n    return true\r\n  }\r\n\r\n\r\n  function removeStaleMounts(validLayer){\r\n    [].slice.call(document.querySelectorAll('['+MOUNT_ATTR+'=\"1\"]')).forEach(function(node){\r\n      if(!validLayer||node.previousElementSibling!==validLayer){node.remove()}\r\n    })\r\n  }\r\n\r\n  function mount(){\r\n    addStyle();\r\n    var validated=validatedCurrent();\r\n    if(!validated.ok){removeStaleMounts(null);STATE.mounted=false;return false}\r\n    var layer=validated.src.layer;\r\n    removeStaleMounts(layer);\r\n    var existing=layer.nextElementSibling;\r\n    if(existing&&existing.getAttribute&&existing.getAttribute(MOUNT_ATTR)==='1'){\r\n      STATE.mounted=true;\r\n      return true\r\n    }\r\n    var wrap=document.createElement('div');\r\n    wrap.setAttribute(MOUNT_ATTR,'1');\r\n    wrap.setAttribute('data-gdx-panel-f1-source-hash',validated.src.visualHash);\r\n    var zoomButton=document.createElement('button');\r\n    zoomButton.type='button';\r\n    zoomButton.setAttribute(ZOOM_CTA_ATTR,'1');\r\n    zoomButton.textContent='G\u00F6rseli B\u00FCy\u00FCt';\r\n    zoomButton.setAttribute('aria-label','Bu Panel LED kurulum g\u00F6rselini tam ekran b\u00FCy\u00FCt');\r\n    zoomButton.addEventListener('click',function(e){\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      openFullscreenVisual()\r\n    });\r\n\r\n    var button=document.createElement('button');\r\n    button.type='button';\r\n    button.setAttribute(CTA_ATTR,'1');\r\n    button.textContent='G\u00F6rseli Payla\u015F';\r\n    button.setAttribute('aria-label','Bu Panel LED kurulum g\u00F6rselini 16:9 payla\u015F');\r\n    button.addEventListener('click',function(e){\r\n      e.preventDefault();\r\n      e.stopPropagation();\r\n      prepareFromCurrent(button)\r\n    });\r\n\r\n    wrap.appendChild(zoomButton);\r\n    wrap.appendChild(button);\r\n    if(layer.parentNode){layer.parentNode.insertBefore(wrap,layer.nextSibling)}\r\n    STATE.mounted=true;\r\n    STATE.mountCount+=1;\r\n    return true\r\n  }\r\n\r\n  function finiteMountRefresh(){\r\n    [0,60,180,420,900,1600,2600].forEach(function(ms){setTimeout(mount,ms)})\r\n  }\r\n\r\n  function onR30aCdnImageLoadCapture(event){\r\n    var target=event&&event.target;\r\n    if(!target||!target.matches||!target.matches('img[data-gdx-panel-r30a-cdn-visual=\"1\"]'))return;\r\n\r\n    STATE.sourceLoadCaptureCount+=1;\r\n    STATE.lastSourceLoadAt=Date.now();\r\n\r\n    /*\r\n     * R30A publishes cdn_ready in the image's own onload target handler.\r\n     * This capture listener waits until the load event is fully processed,\r\n     * then reuses the existing F1 validation/mount path.\r\n     * R30A state is never written here.\r\n     */\r\n    setTimeout(function(){\r\n      STATE.sourceLoadMountRefreshCount+=1;\r\n      finiteMountRefresh()\r\n    },0)\r\n  }\r\n\r\n  function rounded(ctx,x,y,w,h,r,fill,stroke,lineWidth){\r\n    ctx.beginPath();ctx.moveTo(x+r,y);ctx.arcTo(x+w,y,x+w,y+h,r);ctx.arcTo(x+w,y+h,x,y+h,r);ctx.arcTo(x,y+h,x,y,r);ctx.arcTo(x,y,x+w,y,r);ctx.closePath();\r\n    if(fill){ctx.fillStyle=fill;ctx.fill()}if(stroke){ctx.strokeStyle=stroke;ctx.lineWidth=lineWidth||1;ctx.stroke()}\r\n  }\r\n  function text(ctx,value,x,y,opts){opts=opts||{};ctx.save();ctx.font=opts.font||'700 24px Arial';ctx.fillStyle=opts.color||'#fff';ctx.textAlign=opts.align||'left';ctx.textBaseline=opts.baseline||'top';ctx.fillText(clean(value),x,y);ctx.restore()}\r\n  function wrapText(ctx,value,x,y,maxW,lineH,maxLines,opts){\r\n    var words=clean(value).split(' '),line='',lines=[];ctx.save();ctx.font=(opts&&opts.font)||'700 22px Arial';\r\n    for(var i=0;i<words.length;i+=1){var test=line?line+' '+words[i]:words[i];if(ctx.measureText(test).width>maxW&&line){lines.push(line);line=words[i]}else line=test}\r\n    if(line)lines.push(line);if(maxLines&&lines.length>maxLines){lines=lines.slice(0,maxLines);lines[maxLines-1]=lines[maxLines-1].replace(/\\s+\\S*$/,'')+'\u2026'}ctx.restore();\r\n    lines.forEach(function(row,index){text(ctx,row,x,y+index*lineH,opts)});return lines.length\r\n  }\r\n  function loadBlobImage(url){\r\n    return fetch(url,{mode:'cors',credentials:'omit'}).then(function(r){if(!r.ok)throw new Error('IMAGE_HTTP_'+r.status);return r.blob()}).then(function(blob){\r\n      return new Promise(function(resolve,reject){var objectUrl=URL.createObjectURL(blob);var img=new Image();img.onload=function(){resolve({img:img,objectUrl:objectUrl})};img.onerror=function(){URL.revokeObjectURL(objectUrl);reject(new Error('IMAGE_DECODE_FAILED'))};img.src=objectUrl})\r\n    })\r\n  }\r\n  function drawContain(ctx,img,x,y,w,h){\r\n    var iw=Number(img.naturalWidth||img.width||1),ih=Number(img.naturalHeight||img.height||1),scale=Math.min(w/iw,h/ih),dw=iw*scale,dh=ih*scale;\r\n    ctx.fillStyle='#020617';ctx.fillRect(x,y,w,h);ctx.drawImage(img,x+(w-dw)/2,y+(h-dh)/2,dw,dh)\r\n  }\r\n\r\n  function renderPackage(model,src,url){\r\n    var qr=qrApi();\r\n    if(!qr||!qr.ready||typeof qr.drawToCanvas!=='function')return Promise.reject(new Error('QR_NOT_READY'));\r\n    return loadBlobImage(src.src).then(function(loaded){\r\n      var canvas=document.createElement('canvas');canvas.width=WIDTH;canvas.height=HEIGHT;\r\n      var ctx=canvas.getContext('2d');if(!ctx){URL.revokeObjectURL(loaded.objectUrl);throw new Error('CANVAS_CONTEXT_UNAVAILABLE')}\r\n      var g=ctx.createLinearGradient(0,0,WIDTH,HEIGHT);g.addColorStop(0,'#030b14');g.addColorStop(.62,'#07131c');g.addColorStop(1,'#102429');ctx.fillStyle=g;ctx.fillRect(0,0,WIDTH,HEIGHT);\r\n      rounded(ctx,34,34,1532,832,28,'#07131c','#246f72',2);\r\n      text(ctx,'NORA \u00B7 PANEL LED \u00B7 KURULUM G\u00D6RSEL\u0130',70,58,{font:'900 23px Arial',color:'#67f3da'});\r\n      wrapText(ctx,model.title||'Panel LED Dinamik Kurulum',70,94,1120,42,1,{font:'900 38px Arial',color:'#fff'});\r\n      rounded(ctx,70,150,1220,690,22,'#020617','#1b8e89',2);drawContain(ctx,loaded.img,82,162,1196,666);\r\n      rounded(ctx,1310,150,220,690,22,'#0d3435','#265f5d',1);\r\n      text(ctx,'SE\u00C7\u0130LEN AMA\u00C7',1330,178,{font:'900 13px Arial',color:'#67f3da'});\r\n      wrapText(ctx,model.purposeLabel||'Se\u00E7ili kullan\u0131m amac\u0131',1330,204,180,24,5,{font:'800 16px Arial',color:'#eefcf8'});\r\n      text(ctx,'G\u00D6RSEL',1330,356,{font:'900 13px Arial',color:'#2bd8e5'});\r\n      wrapText(ctx,src.alt||'Panel LED kurulum g\u00F6rseli',1330,382,180,22,4,{font:'800 15px Arial',color:'#eefcf8'});\r\n      text(ctx,'QR \u00B7 SETUP DETAYI',1420,518,{font:'900 12px Arial',color:'#67f3da',align:'center'});\r\n      rounded(ctx,1318,544,204,204,18,'#fff','#2f8d88',2);qr.drawToCanvas(ctx,url,1326,552,188,{background:'#fff',foreground:'#020617',quiet:4});\r\n      text(ctx,'Ana setup + g\u00F6rsel',1420,766,{font:'800 11px Arial',color:'#bfe2dc',align:'center'});\r\n      text(ctx,'CANFOTO.COM',1420,800,{font:'900 16px Arial',color:'#67f3da',align:'center'});\r\n      URL.revokeObjectURL(loaded.objectUrl);\r\n      return new Promise(function(resolve,reject){\r\n        canvas.toBlob(function(blob){\r\n          if(!blob)return reject(new Error('PNG_BLOB_FAILED'));\r\n          var objectUrl=URL.createObjectURL(blob),file=null;\r\n          try{if(typeof File==='function')file=new File([blob],'canfoto-panel-main-kurulum-gorseli-16x9.png',{type:'image/png'})}catch(_){}\r\n          var fileShareSupported=!!(file&&navigator.share&&(!navigator.canShare||navigator.canShare({files:[file]})));\r\n          resolve({\r\n            ok:true,version:VERSION,engine:'panel',kind:'main-setup-cdn-visual',width:WIDTH,height:HEIGHT,blob:blob,objectUrl:objectUrl,file:file,fileShareSupported:fileShareSupported,url:url,model:model,\r\n            source:{owner:src.owner,url:src.src,visualHash:src.visualHash,templateKey:src.templateKey,scenarioKey:src.scenarioKey,cdnSelectionKey:src.cdnSelectionKey,activeSelectionKey:src.activeSelectionKey,productKey:src.productKey,exactR32:src.exactR32,naturalWidth:Number(loaded.img.naturalWidth||0),naturalHeight:Number(loaded.img.naturalHeight||0)}\r\n          })\r\n        },'image/png',1)\r\n      })\r\n    })\r\n  }\r\n\r\n  function closeTray(){var tray=document.getElementById(TRAY_ID);if(tray)tray.remove()}\r\n  function showTray(pkg){\r\n    closeTray();\r\n    var tray=document.createElement('section');tray.id=TRAY_ID;tray.setAttribute('role','dialog');tray.setAttribute('aria-label','Panel LED 16:9 g\u00F6rsel payla\u015F\u0131m\u0131 haz\u0131r');\r\n    tray.innerHTML='<div class=\"f1-head\"><strong>16:9 g\u00F6rsel haz\u0131r.</strong><button class=\"f1-x\" type=\"button\" aria-label=\"Kapat\">\u00D7</button></div><img class=\"f1-preview\" alt=\"Haz\u0131rlanan Panel LED 16:9 kurulum payla\u015F\u0131m g\u00F6rseli\"><div class=\"f1-copy\">Kurulum g\u00F6rseliniz haz\u0131r. \u0130sterseniz \u015Fimdi payla\u015F\u0131n veya PNG olarak indirin. QR kodu bu kurulum sayfas\u0131n\u0131 do\u011Frudan a\u00E7ar.</div><div class=\"f1-actions\"><button class=\"f1-primary\" type=\"button\" data-f1-share-now>\u015Eimdi Payla\u015F</button><a class=\"f1-secondary\" data-f1-download>PNG \u0130ndir</a><button class=\"f1-secondary\" type=\"button\" data-f1-close>Kapat</button></div>';\r\n    tray.querySelector('.f1-preview').src=pkg.objectUrl;\r\n    var download=tray.querySelector('[data-f1-download]');download.href=pkg.objectUrl;download.download='canfoto-panel-main-kurulum-gorseli-16x9.png';\r\n    tray.querySelector('.f1-x').addEventListener('click',closeTray);tray.querySelector('[data-f1-close]').addEventListener('click',closeTray);tray.querySelector('[data-f1-share-now]').addEventListener('click',function(){shareNow()});\r\n    document.body.appendChild(tray)\r\n  }\r\n\r\n  function prepareFromCurrent(button){\r\n    if(STATE.preparing)return Promise.resolve({ok:false,code:'PREPARE_IN_PROGRESS',version:VERSION});\r\n    var validated=validatedCurrent();\r\n    if(!validated.ok){STATE.lastError={code:'MAIN_SOURCE_NOT_EXACTLY_VALIDATED',at:Date.now()};return Promise.resolve({ok:false,code:'MAIN_SOURCE_NOT_EXACTLY_VALIDATED',version:VERSION})}\r\n    var url=visualDeepLink(validated.model,validated.src);\r\n    if(!url){STATE.lastError={code:'VISUAL_DEEPLINK_BUILD_FAILED',at:Date.now()};return Promise.resolve({ok:false,code:'VISUAL_DEEPLINK_BUILD_FAILED',version:VERSION})}\r\n    STATE.preparing=true;if(button){button.disabled=true;button.textContent='Haz\u0131rlan\u0131yor\u2026'}\r\n    return renderPackage(validated.model,validated.src,url).then(function(pkg){\r\n      if(STATE.prepared&&STATE.prepared.objectUrl){try{URL.revokeObjectURL(STATE.prepared.objectUrl)}catch(_){}}\r\n      STATE.prepared=pkg;STATE.lastError=null;showTray(pkg);return{ok:true,version:VERSION,prepared:true,width:pkg.width,height:pkg.height,fileReady:!!pkg.file,fileShareSupported:pkg.fileShareSupported,url:pkg.url,source:pkg.source}\r\n    }).catch(function(error){STATE.lastError={code:'PREPARE_FAILED',message:String(error&&error.message||error),at:Date.now()};return{ok:false,code:'PREPARE_FAILED',message:String(error&&error.message||error),version:VERSION}}).finally(function(){STATE.preparing=false;if(button){button.disabled=false;button.textContent='G\u00F6rseli Payla\u015F'}})\r\n  }\r\n\r\n  function shareNow(){\r\n    var pkg=STATE.prepared;\r\n    if(!pkg||!pkg.ok){var nr={ok:false,code:'NOT_PREPARED',version:VERSION};STATE.lastShareResult=nr;return Promise.resolve(nr)}\r\n    if(pkg.file&&pkg.fileShareSupported&&navigator.share){\r\n      STATE.nativeShareCalls+=1;\r\n      var promise;\r\n      try{promise=navigator.share({title:(pkg.model&&pkg.model.title)||'Panel LED kurulum g\u00F6rseli',text:[pkg.model&&pkg.model.purposeLabel,'Can Foto Panel LED 16:9 kurulum g\u00F6rseli'].filter(Boolean).join(' \u00B7 '),url:pkg.url,files:[pkg.file]})}\r\n      catch(error){var thr={ok:false,code:'NATIVE_SHARE_THROW',message:String(error&&error.message||error),version:VERSION};STATE.lastShareResult=thr;return Promise.resolve(thr)}\r\n      return Promise.resolve(promise).then(function(){var r={ok:true,method:'native-share-file-url',hasFile:true,version:VERSION};STATE.lastShareResult=r;return r}).catch(function(error){var r={ok:false,code:error&&error.name==='AbortError'?'CANCELLED':'NATIVE_SHARE_FAILED',message:String(error&&error.message||error),version:VERSION};STATE.lastShareResult=r;return r})\r\n    }\r\n    var a=document.createElement('a');a.href=pkg.objectUrl;a.download='canfoto-panel-main-kurulum-gorseli-16x9.png';document.body.appendChild(a);a.click();a.remove();var r={ok:true,method:'png-download',hasFile:!!pkg.file,version:VERSION};STATE.lastShareResult=r;return Promise.resolve(r)\r\n  }\r\n\r\n  function install(){\r\n    addStyle();\r\n    finiteMountRefresh();\r\n\r\n    /*\r\n     * F1.2 immediate CTA:\r\n     * The share CTA is refreshed from the actual R30A CDN image load event.\r\n     * No click on the CDN visual is required.\r\n     */\r\n    document.addEventListener('load',onR30aCdnImageLoadCapture,true);\r\n\r\n    document.addEventListener('click',function(event){\r\n      var target=event.target&&event.target.closest?event.target.closest('[data-gdx-r11-action=\"setup\"],[data-gdx-r12-action=\"setup\"],[data-gdx-r34-cr07-a3-action],[data-gdx-panel-r30a-cdn-layer=\"1\"]'):null;\r\n      if(target)finiteMountRefresh()\r\n    },true);\r\n    window.addEventListener('gdx-panel-v4-r28-selection-change',finiteMountRefresh);\r\n\r\n    window.addEventListener('keydown',function(event){\r\n      if(event.key==='Escape'&&STATE.lightboxOpen){\r\n        event.preventDefault();\r\n        event.stopPropagation();\r\n        closeFullscreenVisual('escape')\r\n      }\r\n    },true);\r\n\r\n    window.addEventListener('resize',function(){\r\n      if(!STATE.lightboxOpen)return;\r\n      var box=document.getElementById(LIGHTBOX_ID);\r\n      if(box)applyFullscreenZoom(box,STATE.lightboxZoom,false)\r\n    });\r\n\r\n    beginTargetWatch()\r\n  }\r\n\r\n  window.GDX_PANEL_V4_FAZ07_F1_MAIN_CDN_SHARE={\r\n    ready:true,version:VERSION,refresh:mount,prepare:function(){return prepareFromCurrent(null)},shareNow:shareNow,openFullscreen:openFullscreenVisual,closeFullscreen:closeFullscreenVisual,getPrepared:function(){return STATE.prepared},getState:function(){return STATE},parseVisualDeepLink:parseVisualDeepLink,targetSnapshot:function(){return STATE.target?targetSnapshot(STATE.target):null}\r\n  };\r\n\r\n  window.debugPanelV4F1MainCdnShareQaV1=function(){\r\n    mount();var validated=validatedCurrent(),src=validated.src,model=validated.model,url=validated.ok?visualDeepLink(model,src):'',parsed=url?parseVisualDeepLink(url):null;\r\n    var result={\r\n      ok:!!(validated.ok&&url&&parsed&&parsed.visualHash===src.visualHash&&/^https:\\/\\/www\\.canfoto\\.com\\/pages\\/panel-led-secim-motoru/i.test(url)),\r\n      version:VERSION,sourceOwner:src?src.owner:'',sourceVisible:!!src,currentValidated:!!validated.ok,sourceStatePass:!!validated.sourceStatePass,modelPass:!!validated.modelPass,sourceUrl:src?src.src:'',sourceHash:src?src.visualHash:'',templateKey:src?src.templateKey:'',scenarioKey:src?src.scenarioKey:'',cdnSelectionKey:src?src.cdnSelectionKey:'',activeSelectionKey:src?src.activeSelectionKey:'',productKey:src?src.productKey:'',exactR32:src?src.exactR32:'',naturalWidth:src?src.naturalWidth:0,naturalHeight:src?src.naturalHeight:0,outputWidth:WIDTH,outputHeight:HEIGHT,outputAspect:'16:9',setupModelReady:!!model,purposeLabel:model?clean(model.purposeLabel):'',deepLinkUrl:url,deepLinkHasVisualMarker:!!parsed,visualHashPass:!!(src&&parsed&&parsed.visualHash===src.visualHash),mountExists:!!document.querySelector('['+MOUNT_ATTR+'=\"1\"]'),zoomCtaExists:!!document.querySelector('['+ZOOM_CTA_ATTR+'=\"1\"]'),prepared:!!(STATE.prepared&&STATE.prepared.ok),lazyCanvas:true,newMutationObserver:false,newSetInterval:false,immediateCtaLoadCaptureInstalled:true,fullscreenZoomAvailable:true,sourceLoadCaptureCount:STATE.sourceLoadCaptureCount,sourceLoadMountRefreshCount:STATE.sourceLoadMountRefreshCount,lastSourceLoadAt:STATE.lastSourceLoadAt,note:'F1.3 source QA. Immediate share CTA + fullscreen zoom share the same validated R30A MAIN source; Setup M01 remains the exact setup owner.'\r\n    };console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4F12ImmediateCtaQaV1=function(){\r\n    var validated=validatedCurrent();\r\n    var mountNode=document.querySelector('['+MOUNT_ATTR+'=\"1\"]');\r\n    var cta=mountNode&&mountNode.querySelector('['+CTA_ATTR+'=\"1\"]');\r\n\r\n    var result={\r\n      ok:!!(\r\n        validated.ok&&\r\n        mountNode&&\r\n        cta&&\r\n        STATE.sourceLoadCaptureCount>=1&&\r\n        STATE.sourceLoadMountRefreshCount>=1\r\n      ),\r\n      version:VERSION,\r\n      sourceReady:!!validated.ok,\r\n      mountExists:!!mountNode,\r\n      ctaExists:!!cta,\r\n      ctaText:cta?clean(cta.textContent):'',\r\n      sourceLoadCaptureCount:STATE.sourceLoadCaptureCount,\r\n      sourceLoadMountRefreshCount:STATE.sourceLoadMountRefreshCount,\r\n      lastSourceLoadAt:STATE.lastSourceLoadAt,\r\n      clickRequired:false,\r\n      newMutationObserver:false,\r\n      newSetInterval:false,\r\n      note:'PASS requires G\u00F6rseli Payla\u015F to be present immediately after R30A CDN load, without clicking the image. F1.3 adds fullscreen zoom without changing this contract.'\r\n    };\r\n\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4F13MainCdnFullscreenQaV1=function(){\r\n    var validated=validatedCurrent();\r\n    var mountNode=document.querySelector('['+MOUNT_ATTR+'=\"1\"]');\r\n    var zoomCta=mountNode&&mountNode.querySelector('['+ZOOM_CTA_ATTR+'=\"1\"]');\r\n    var box=document.getElementById(LIGHTBOX_ID);\r\n    var stage=box&&box.querySelector('.f13-stage');\r\n    var image=box&&box.querySelector('.f13-image');\r\n\r\n    var result={\r\n      ok:!!(\r\n        validated.ok&&\r\n        mountNode&&\r\n        zoomCta&&\r\n        STATE.lightboxOpen&&\r\n        box&&\r\n        stage&&\r\n        image&&\r\n        clean(image.currentSrc||image.getAttribute('src'))===clean(validated.src.src)&&\r\n        clean(STATE.lightboxSourceHash)===clean(validated.src.visualHash)&&\r\n        STATE.lightboxZoom>=1\r\n      ),\r\n      version:VERSION,\r\n      sourceReady:!!validated.ok,\r\n      mountExists:!!mountNode,\r\n      zoomCtaExists:!!zoomCta,\r\n      zoomCtaText:zoomCta?clean(zoomCta.textContent):'',\r\n      lightboxOpen:STATE.lightboxOpen,\r\n      lightboxDomExists:!!box,\r\n      lightboxStageExists:!!stage,\r\n      lightboxImageExists:!!image,\r\n      exactSourceUrl:!!(validated.ok&&image&&clean(image.currentSrc||image.getAttribute('src'))===clean(validated.src.src)),\r\n      exactSourceHash:!!(validated.ok&&clean(STATE.lightboxSourceHash)===clean(validated.src.visualHash)),\r\n      zoom:STATE.lightboxZoom,\r\n      openCount:STATE.lightboxOpenCount,\r\n      closeCount:STATE.lightboxCloseCount,\r\n      naturalWidth:STATE.lightboxNaturalWidth,\r\n      naturalHeight:STATE.lightboxNaturalHeight,\r\n      fullscreenViewportWidth:box?Math.round(box.getBoundingClientRect().width):0,\r\n      fullscreenViewportHeight:box?Math.round(box.getBoundingClientRect().height):0,\r\n      stageScrollWidth:stage?stage.scrollWidth:0,\r\n      stageClientWidth:stage?stage.clientWidth:0,\r\n      panAvailable:!!(stage&&stage.scrollWidth>stage.clientWidth),\r\n      mobileInitialZoomPolicy:'2x on <=640px; 1x desktop; controls 1x\u20134x',\r\n      newMutationObserver:false,\r\n      note:'Run while the fullscreen viewer is open. PASS proves the exact current R30A MAIN source is shown in an in-page fullscreen, pan/zoom-capable viewer.'\r\n    };\r\n\r\n    console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4F1MainCdnPreparedQaV1=function(){\r\n    var p=STATE.prepared;var result={ok:!!(p&&p.ok&&p.width===1600&&p.height===900&&p.blob&&p.objectUrl&&p.url&&p.source&&p.source.visualHash),version:VERSION,prepared:!!(p&&p.ok),width:p?p.width:0,height:p?p.height:0,fileReady:!!(p&&p.file),fileShareSupported:!!(p&&p.fileShareSupported),objectUrlReady:!!(p&&p.objectUrl),deepLinkUrl:p?p.url:'',source:p?p.source:null,nativeShareCalls:STATE.nativeShareCalls,lastShareResult:STATE.lastShareResult,note:'Prepared File exists before physical \u015Eimdi Payla\u015F when File API is supported.'};console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4F1MainCdnDeepLinkQaV1=function(){\r\n    var target=parseVisualDeepLink(location.href),snap=target?targetSnapshot(target):null;var result={ok:!!(target&&snap&&snap.exact&&STATE.targetFinal&&STATE.targetFinal.exact&&STATE.targetFinal.stableAfterQuietWindow),version:VERSION,visualDeepLinkMode:!!target,snapshot:snap,stableTarget:STATE.targetFinal||null,targetTimedOut:STATE.targetTimedOut,targetWatchStartedAt:STATE.targetWatchStartedAt,targetWatchFinishedAt:STATE.targetWatchFinishedAt,note:'Run on the page opened from the F1 QR/deeplink. PASS requires sealed Setup M01 exact state + exact current R30A visual hash stable for 260 ms.'};console.log(result);return result\r\n  };\r\n\r\n  window.debugPanelV4F1MainCdnNativeShareQaV1=function(){\r\n    var p=STATE.prepared;var result={ok:!!(p&&p.ok&&p.file&&p.fileShareSupported),version:VERSION,prepared:!!(p&&p.ok),fileReady:!!(p&&p.file),fileShareSupported:!!(p&&p.fileShareSupported),nativeShareCalls:STATE.nativeShareCalls,lastShareResult:STATE.lastShareResult,note:'Before physical \u015Eimdi Payla\u015F, nativeShareCalls should be 0. After click it should become 1 on supported browsers.'};console.log(result);return result\r\n  };\r\n\r\n  if(document.readyState==='loading')document.addEventListener('DOMContentLoaded',install,{once:true});else install();\r\n\r\n})(window,document);\r\n\r\n/* =========================================================\r\n   PANEL LED V4 \u2014 FAZ07-F2 UX-R3 ALT-AMA\u00C7 CDN VISUAL SHARE V1\r\n\r\n   SOURCE OWNER:\r\n   - Existing sealed UX-R3 V7 purpose modal preview cards.\r\n   - Exact current HTTPS CDN source from data-gdx-uxr3-image-src.\r\n   - R30A manifest/CDN map only verifies visual identity.\r\n\r\n   STATE OWNER:\r\n   - UX-R3 pendingPurposeKey / pendingSubPurposeKey.\r\n   - R28 remains the ONLY committed selection owner.\r\n   - This adapter NEVER calls setPanelV4R28Selection().\r\n\r\n   RESTORE:\r\n   canonical page\r\n   -> public UX-R3 open(purposeKey)\r\n   -> exact sub-purpose through existing V7 UI click path\r\n   -> exact scenario/source identity\r\n   -> existing V7 image lightbox\r\n   -> 260 ms stable exact target\r\n   -> committed R28 selection must remain unchanged.\r\n\r\n   SHARE:\r\n   - Source-dominant 1600\u00D7900 PNG.\r\n   - QR/deeplink to exact pending purpose/sub-purpose/scenario visual.\r\n   - Lazy canvas: only after physical \"G\u00F6rseli Payla\u015F\".\r\n   - Prepared File for immediate native share on physical \"\u015Eimdi Payla\u015F\".\r\n   - No Linki Kopyala.\r\n   - No new MutationObserver / setInterval.\r\n   - F1.3 / Setup / Top3 / WHY / Comparison NO-TOUCH.\r\n   ========================================================= */\r\n(function(window,document){\r\n  'use strict';\r\n\r\n  if(window.GDX_PANEL_V4_FAZ07_F2_PURPOSE_CDN_SHARE_READY)return;\r\n  window.GDX_PANEL_V4_FAZ07_F2_PURPOSE_CDN_SHARE_READY=true;\r\n\r\n  var VERSION='PANEL-FAZ07-F2.2-UXR3-PURPOSE-CDN-VISUAL-SHARE-CTA-TWIN-V1';\r\n  var ROUTE='https://www.canfoto.com/pages/panel-led-secim-motoru';\r\n\r\n  var P_VISUAL='gdx_pv';\r\n  var P_PURPOSE='gdx_pp';\r\n  var P_SUB='gdx_ps';\r\n  var P_SCENARIO='gdx_pc';\r\n  var P_HASH='gdx_pk';\r\n  var P_LIGHTBOX='gdx_pl';\r\n\r\n  var CARD_ATTR='data-gdx-panel-f2-purpose-visual-share';\r\n  var CTA_ATTR='data-gdx-panel-f2-purpose-visual-share-cta';\r\n  var TRAY_ID='gdxPanelV4F2PurposeVisualShareTray';\r\n  var STYLE_ID='gdxPanelV4F2PurposeVisualShareStyle';\r\n\r\n  var WIDTH=1600;\r\n  var HEIGHT=900;\r\n\r\n  var SCENARIO_ORDER=[\r\n    'balanced_key_fill',\r\n    'rgb_background_accent',\r\n    'compact_support_close_range'\r\n  ];\r\n\r\n  var STATE={\r\n    mountPasses:0,\r\n    mountedButtonCount:0,\r\n    preparing:false,\r\n    prepared:null,\r\n    lastError:null,\r\n    nativeShareCalls:0,\r\n    lastShareResult:null,\r\n\r\n    targetMode:false,\r\n    target:null,\r\n    targetStartedAt:0,\r\n    targetFinishedAt:0,\r\n    targetTimedOut:false,\r\n    committedBefore:'',\r\n    committedAfter:'',\r\n    restoreAttempted:false,\r\n    restoreResult:null,\r\n    finalTarget:null,\r\n    readinessAttempts:0,\r\n    readinessResult:null,\r\n    openAttempts:0,\r\n    openSucceededAt:0\r\n  };\r\n\r\n  function clean(value){\r\n    return String(value==null?'':value).replace(/\\s+/g,' ').trim()\r\n  }\r\n\r\n  function esc(value){\r\n    return String(value==null?'':value).replace(/[&<>\"']/g,function(c){\r\n      return {'&':'&amp;','<':'&lt;','>':'&gt;','\"':'&quot;',\"'\":'&#39;'}[c]\r\n    })\r\n  }\r\n\r\n  function canonicalUrl(value){\r\n    var raw=clean(value);\r\n    if(!raw)return '';\r\n    try{return new URL(raw,document.baseURI).href}catch(_){return raw}\r\n  }\r\n\r\n  function fnv32(value){\r\n    var s=canonicalUrl(value);\r\n    var h=2166136261;\r\n    for(var i=0;i<s.length;i+=1){\r\n      h^=s.charCodeAt(i);\r\n      h=Math.imul(h,16777619)\r\n    }\r\n    return ('00000000'+(h>>>0).toString(16)).slice(-8)\r\n  }\r\n\r\n  function purposeApi(){\r\n    return window.GDX_PANEL_V4_R32_UX_R3_PURPOSE_MODAL||null\r\n  }\r\n\r\n  function purposeState(){\r\n    return (\r\n      window.GDX_PANEL_V4_R32_UX_R3_PURPOSE_MODAL_STATE||\r\n      (purposeApi()&&purposeApi().state)||\r\n      null\r\n    )\r\n  }\r\n\r\n  function currentCommittedKey(){\r\n    return clean(\r\n      window.GDX_PANEL_V4_R28_SELECTION_STATE&&\r\n      window.GDX_PANEL_V4_R28_SELECTION_STATE.activeSelectionKey\r\n    )\r\n  }\r\n\r\n  function qrApi(){\r\n    return window.GDX_PANEL_LED_V4_QR||null\r\n  }\r\n\r\n  function manifestRows(purposeKey,subPurposeKey){\r\n    var manifest=window.GDX_PANEL_V4_R30A_SETUP_VISUAL_MANIFEST||{};\r\n    var rows=Array.isArray(manifest.templates)?manifest.templates:[];\r\n    return rows.filter(function(row){\r\n      return (\r\n        clean(row&&row.purposeKey)===clean(purposeKey)&&\r\n        clean(row&&row.subPurposeKey)===clean(subPurposeKey)\r\n      )\r\n    }).slice().sort(function(a,b){\r\n      return (\r\n        SCENARIO_ORDER.indexOf(clean(a&&a.scenarioType))-\r\n        SCENARIO_ORDER.indexOf(clean(b&&b.scenarioType))\r\n      )\r\n    }).slice(0,3)\r\n  }\r\n\r\n  function cdnForRow(row){\r\n    row=row||{};\r\n    var map=window.GDX_PANEL_V4_R30A_CDN_URL_MAP||{};\r\n    return canonicalUrl(\r\n      map[clean(row.cdnSelectionKey)]||\r\n      map[clean(row.templateKey)]||\r\n      row.cdnUrl\r\n    )\r\n  }\r\n\r\n  function modalLayer(){\r\n    return document.getElementById('gdxPanelV4R32UxR3PurposeModalLayer')\r\n  }\r\n\r\n  function previewCards(){\r\n    var layer=modalLayer();\r\n    return layer\r\n      ?Array.prototype.slice.call(layer.querySelectorAll('[data-gdx-uxr3-preview-card=\"1\"]'))\r\n      :[]\r\n  }\r\n\r\n  function selectedSubLabel(){\r\n    var layer=modalLayer();\r\n    var selected=layer&&layer.querySelector('[data-gdx-uxr3-sub].is-selected');\r\n    var strong=selected&&selected.querySelector('strong');\r\n    return clean(strong&&strong.textContent)\r\n  }\r\n\r\n  function purposeLabel(){\r\n    var layer=modalLayer();\r\n    var title=layer&&layer.querySelector('#gdxPanelV4R32UxR3PurposeModalTitle');\r\n    return clean(title&&title.textContent)\r\n  }\r\n\r\n  function cardSource(card,index){\r\n    if(!card)return null;\r\n\r\n    var state=purposeState();\r\n    var purposeKey=clean(state&&state.pendingPurposeKey);\r\n    var subPurposeKey=clean(state&&state.pendingSubPurposeKey);\r\n    if(!purposeKey||!subPurposeKey)return null;\r\n\r\n    var control=card.querySelector('[data-gdx-uxr3-image-open=\"1\"]');\r\n    var image=card.querySelector('.gdx-uxr3-thumb img');\r\n    var src=canonicalUrl(\r\n      control&&control.getAttribute('data-gdx-uxr3-image-src')||\r\n      image&&(image.currentSrc||image.getAttribute('src'))\r\n    );\r\n    if(!/^https:\\/\\//i.test(src))return null;\r\n\r\n    var rows=manifestRows(purposeKey,subPurposeKey);\r\n    var matched=null;\r\n\r\n    rows.some(function(row){\r\n      var expected=cdnForRow(row);\r\n      if(expected&&expected===src){\r\n        matched=row;\r\n        return true\r\n      }\r\n      return false\r\n    });\r\n\r\n    if(!matched&&rows[index]){\r\n      var expectedAtIndex=cdnForRow(rows[index]);\r\n      if(expectedAtIndex&&expectedAtIndex===src)matched=rows[index]\r\n    }\r\n\r\n    if(!matched)return null;\r\n\r\n    var scenarioType=clean(matched.scenarioType);\r\n    var copy=card.querySelector('.gdx-uxr3-preview-copy');\r\n    var scenarioLabel=clean(copy&&copy.querySelector('b')&&copy.querySelector('b').textContent);\r\n    var scenarioTitle=clean(copy&&copy.querySelector('strong')&&copy.querySelector('strong').textContent);\r\n    var alt=clean(\r\n      control&&control.getAttribute('data-gdx-uxr3-image-alt')||\r\n      image&&image.alt||\r\n      scenarioTitle||\r\n      'Panel LED kurulum g\u00F6rseli'\r\n    );\r\n\r\n    return{\r\n      owner:'PANEL_UXR3_V7_PENDING_CDN_VISUAL',\r\n      card:card,\r\n      control:control,\r\n      image:image,\r\n      src:src,\r\n      visualHash:fnv32(src),\r\n      purposeKey:purposeKey,\r\n      subPurposeKey:subPurposeKey,\r\n      purposeLabel:purposeLabel(),\r\n      subPurposeLabel:selectedSubLabel(),\r\n      scenarioType:scenarioType,\r\n      scenarioLabel:scenarioLabel,\r\n      scenarioTitle:scenarioTitle,\r\n      templateKey:clean(matched.templateKey),\r\n      scenarioKey:clean(matched.scenarioKey),\r\n      cdnSelectionKey:clean(matched.cdnSelectionKey),\r\n      alt:alt,\r\n      naturalWidth:Number(image&&image.naturalWidth||0),\r\n      naturalHeight:Number(image&&image.naturalHeight||0),\r\n      committedSelectionKey:currentCommittedKey()\r\n    }\r\n  }\r\n\r\n  function buildDeepLink(source){\r\n    if(!source)return '';\r\n    try{\r\n      var u=new URL(ROUTE);\r\n      u.searchParams.set(P_VISUAL,'1');\r\n      u.searchParams.set(P_PURPOSE,source.purposeKey);\r\n      u.searchParams.set(P_SUB,source.subPurposeKey);\r\n      u.searchParams.set(P_SCENARIO,source.scenarioType);\r\n      u.searchParams.set(P_HASH,source.visualHash);\r\n      u.searchParams.set(P_LIGHTBOX,'1');\r\n      return u.toString()\r\n    }catch(_){\r\n      return ''\r\n    }\r\n  }\r\n\r\n  function parseDeepLink(value){\r\n    try{\r\n      var u=new URL(value||location.href,location.origin);\r\n      if(clean(u.searchParams.get(P_VISUAL))!=='1')return null;\r\n\r\n      var purposeKey=clean(u.searchParams.get(P_PURPOSE));\r\n      var subPurposeKey=clean(u.searchParams.get(P_SUB));\r\n      var scenarioType=clean(u.searchParams.get(P_SCENARIO));\r\n      var visualHash=clean(u.searchParams.get(P_HASH));\r\n      var lightbox=clean(u.searchParams.get(P_LIGHTBOX))!=='0';\r\n\r\n      if(\r\n        !purposeKey||\r\n        !subPurposeKey||\r\n        SCENARIO_ORDER.indexOf(scenarioType)<0||\r\n        !/^[a-f0-9]{8}$/i.test(visualHash)\r\n      )return null;\r\n\r\n      return{\r\n        purposeKey:purposeKey,\r\n        subPurposeKey:subPurposeKey,\r\n        scenarioType:scenarioType,\r\n        visualHash:visualHash,\r\n        lightbox:lightbox,\r\n        url:u.toString()\r\n      }\r\n    }catch(_){\r\n      return null\r\n    }\r\n  }\r\n\r\n  function addStyle(){\r\n    if(document.getElementById(STYLE_ID))return;\r\n\r\n    var style=document.createElement('style');\r\n    style.id=STYLE_ID;\r\n    style.textContent=\r\n      '['+CARD_ATTR+'=\"1\"]{display:inline-block;margin-left:12px;vertical-align:baseline}'+\r\n      '['+CTA_ATTR+'=\"1\"]{cursor:pointer}'+\r\n      '['+CTA_ATTR+'=\"1\"]:disabled{opacity:.58;cursor:wait}'+\r\n\r\n      '#'+TRAY_ID+'{position:fixed;right:16px;bottom:16px;z-index:2147483630;width:min(620px,calc(100vw - 32px));max-height:84vh;overflow:auto;border:1px solid rgba(43,216,229,.32);border-radius:20px;background:#07131c;color:#fff;box-shadow:0 24px 80px rgba(0,0,0,.56);padding:14px;font-family:Arial,sans-serif}'+\r\n      '#'+TRAY_ID+' .f2-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}'+\r\n      '#'+TRAY_ID+' .f2-head strong{font-size:15px;color:#67f3da}'+\r\n      '#'+TRAY_ID+' .f2-x{appearance:none;width:36px;height:36px;border:1px solid rgba(255,255,255,.18);border-radius:10px;background:#102429;color:#fff;font-size:18px;cursor:pointer}'+\r\n      '#'+TRAY_ID+' .f2-preview{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;border-radius:14px;background:#020617;border:1px solid rgba(255,255,255,.1)}'+\r\n      '#'+TRAY_ID+' .f2-copy{margin:10px 2px;color:#cfe8e3;font-size:12px;line-height:1.45}'+\r\n      '#'+TRAY_ID+' .f2-actions{display:flex;gap:8px;flex-wrap:wrap}'+\r\n      '#'+TRAY_ID+' .f2-actions button,#'+TRAY_ID+' .f2-actions a{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:12px;padding:0 15px;text-decoration:none;font:900 13px/1 Arial,sans-serif;cursor:pointer}'+\r\n      '#'+TRAY_ID+' .f2-primary{border:1px solid #16b5a6;background:#0f766e;color:#fff}'+\r\n      '#'+TRAY_ID+' .f2-secondary{border:1px solid rgba(255,255,255,.2);background:#102429;color:#fff}'+\r\n      '@media(max-width:720px){'+\r\n        '['+CARD_ATTR+'=\"1\"]{margin-left:9px}'+\r\n        '#'+TRAY_ID+'{right:8px;bottom:8px;width:calc(100vw - 16px);padding:10px;border-radius:16px}'+\r\n        '#'+TRAY_ID+' .f2-actions>*{flex:1 1 130px}'+\r\n      '}';\r\n\r\n    document.head.appendChild(style)\r\n  }\r\n\r\n  function removeStaleMounts(){\r\n    var current=previewCards();\r\n    Array.prototype.slice.call(document.querySelectorAll('['+CARD_ATTR+'=\"1\"]')).forEach(function(node){\r\n      var card=node.closest('[data-gdx-uxr3-preview-card=\"1\"]');\r\n      if(!card||current.indexOf(card)<0){\r\n        if(node.parentNode)node.parentNode.removeChild(node)\r\n      }\r\n    })\r\n  }\r\n\r\n  function mount(){\r\n    addStyle();\r\n    removeStaleMounts();\r\n\r\n    var cards=previewCards();\r\n    if(cards.length!==3)return false;\r\n\r\n    var mounted=0;\r\n\r\n    cards.forEach(function(card,index){\r\n      var source=cardSource(card,index);\r\n      var copy=card.querySelector('.gdx-uxr3-preview-copy');\r\n      if(!source||!copy)return;\r\n\r\n      var existing=card.querySelector('['+CARD_ATTR+'=\"1\"]');\r\n      if(existing){\r\n        existing.setAttribute('data-gdx-panel-f2-source-hash',source.visualHash);\r\n        mounted+=1;\r\n        return\r\n      }\r\n\r\n      var wrap=document.createElement('div');\r\n      wrap.setAttribute(CARD_ATTR,'1');\r\n      wrap.setAttribute('data-gdx-panel-f2-source-hash',source.visualHash);\r\n      wrap.setAttribute('data-gdx-panel-f2-scenario',source.scenarioType);\r\n\r\n      var button=document.createElement('button');\r\n      button.type='button';\r\n      button.className='gdx-uxr3-open-image';\r\n      button.setAttribute(CTA_ATTR,'1');\r\n      button.textContent='Payla\u015F';\r\n      button.setAttribute('aria-label','Bu \u00E7ekim senaryosu g\u00F6rselini payla\u015F');\r\n\r\n      button.addEventListener('click',function(event){\r\n        event.preventDefault();\r\n        event.stopPropagation();\r\n        prepareFromCard(card,button)\r\n      });\r\n\r\n      wrap.appendChild(button);\r\n      copy.appendChild(wrap);\r\n      mounted+=1\r\n    });\r\n\r\n    STATE.mountPasses+=1;\r\n    STATE.mountedButtonCount=mounted;\r\n    return mounted===3\r\n  }\r\n\r\n  function finiteMountRefresh(){\r\n    [0,40,120,280,560,900].forEach(function(ms){\r\n      setTimeout(mount,ms)\r\n    })\r\n  }\r\n\r\n  function rounded(ctx,x,y,w,h,r,fill,stroke,lineWidth){\r\n    ctx.beginPath();\r\n    ctx.moveTo(x+r,y);\r\n    ctx.arcTo(x+w,y,x+w,y+h,r);\r\n    ctx.arcTo(x+w,y+h,x,y+h,r);\r\n    ctx.arcTo(x,y+h,x,y,r);\r\n    ctx.arcTo(x,y,x+w,y,r);\r\n    ctx.closePath();\r\n    if(fill){ctx.fillStyle=fill;ctx.fill()}\r\n    if(stroke){ctx.strokeStyle=stroke;ctx.lineWidth=lineWidth||1;ctx.stroke()}\r\n  }\r\n\r\n  function text(ctx,value,x,y,opts){\r\n    opts=opts||{};\r\n    ctx.save();\r\n    ctx.font=opts.font||'700 24px Arial';\r\n    ctx.fillStyle=opts.color||'#fff';\r\n    ctx.textAlign=opts.align||'left';\r\n    ctx.textBaseline=opts.baseline||'top';\r\n    ctx.fillText(clean(value),x,y);\r\n    ctx.restore()\r\n  }\r\n\r\n  function wrapText(ctx,value,x,y,maxW,lineH,maxLines,opts){\r\n    opts=opts||{};\r\n    var words=clean(value).split(' ').filter(Boolean);\r\n    var lines=[];\r\n    var line='';\r\n\r\n    ctx.save();\r\n    ctx.font=opts.font||'700 22px Arial';\r\n\r\n    words.forEach(function(word){\r\n      var trial=line?line+' '+word:word;\r\n      if(line&&ctx.measureText(trial).width>maxW){\r\n        lines.push(line);\r\n        line=word\r\n      }else{\r\n        line=trial\r\n      }\r\n    });\r\n\r\n    if(line)lines.push(line);\r\n\r\n    if(maxLines&&lines.length>maxLines){\r\n      lines=lines.slice(0,maxLines);\r\n      lines[maxLines-1]=lines[maxLines-1].replace(/\\s+\\S*$/,'')+'\u2026'\r\n    }\r\n\r\n    ctx.restore();\r\n\r\n    lines.forEach(function(row,index){\r\n      text(ctx,row,x,y+index*lineH,opts)\r\n    });\r\n\r\n    return lines.length\r\n  }\r\n\r\n  function loadBlobImage(url){\r\n    return fetch(url,{mode:'cors',credentials:'omit'})\r\n      .then(function(response){\r\n        if(!response.ok)throw new Error('IMAGE_HTTP_'+response.status);\r\n        return response.blob()\r\n      })\r\n      .then(function(blob){\r\n        return new Promise(function(resolve,reject){\r\n          var objectUrl=URL.createObjectURL(blob);\r\n          var image=new Image();\r\n\r\n          image.onload=function(){\r\n            resolve({image:image,objectUrl:objectUrl,blob:blob})\r\n          };\r\n\r\n          image.onerror=function(){\r\n            URL.revokeObjectURL(objectUrl);\r\n            reject(new Error('IMAGE_DECODE_FAILED'))\r\n          };\r\n\r\n          image.src=objectUrl\r\n        })\r\n      })\r\n  }\r\n\r\n  function drawContain(ctx,image,x,y,w,h){\r\n    var iw=Math.max(1,Number(image.naturalWidth||image.width||1));\r\n    var ih=Math.max(1,Number(image.naturalHeight||image.height||1));\r\n    var scale=Math.min(w/iw,h/ih);\r\n    var dw=Math.round(iw*scale);\r\n    var dh=Math.round(ih*scale);\r\n\r\n    ctx.fillStyle='#020617';\r\n    ctx.fillRect(x,y,w,h);\r\n    ctx.drawImage(image,x+(w-dw)/2,y+(h-dh)/2,dw,dh)\r\n  }\r\n\r\n  function render(source,url){\r\n    var qr=qrApi();\r\n    if(!qr||!qr.ready||typeof qr.drawToCanvas!=='function'){\r\n      return Promise.reject(new Error('QR_NOT_READY'))\r\n    }\r\n\r\n    return loadBlobImage(source.src).then(function(loaded){\r\n      var canvas=document.createElement('canvas');\r\n      canvas.width=WIDTH;\r\n      canvas.height=HEIGHT;\r\n\r\n      var ctx=canvas.getContext('2d');\r\n      if(!ctx){\r\n        URL.revokeObjectURL(loaded.objectUrl);\r\n        throw new Error('CANVAS_CONTEXT_UNAVAILABLE')\r\n      }\r\n\r\n      var gradient=ctx.createLinearGradient(0,0,WIDTH,HEIGHT);\r\n      gradient.addColorStop(0,'#031517');\r\n      gradient.addColorStop(.64,'#062a2d');\r\n      gradient.addColorStop(1,'#071119');\r\n      ctx.fillStyle=gradient;\r\n      ctx.fillRect(0,0,WIDTH,HEIGHT);\r\n\r\n      rounded(ctx,34,34,1532,832,28,'#071b20','#2f8d88',2);\r\n\r\n      text(ctx,'NORA \u00B7 PANEL LED \u00B7 \u00C7EK\u0130M SENARYOSU',70,58,{\r\n        font:'900 24px Arial',\r\n        color:'#63f1d7'\r\n      });\r\n\r\n      wrapText(\r\n        ctx,\r\n        source.purposeLabel||'Panel LED \u00E7ekim amac\u0131',\r\n        70,94,1110,42,1,\r\n        {font:'900 38px Arial',color:'#fff'}\r\n      );\r\n\r\n      rounded(ctx,70,150,1220,690,22,'#020617','#1b8e89',2);\r\n      drawContain(ctx,loaded.image,82,162,1196,666);\r\n\r\n      rounded(ctx,1310,150,220,690,22,'#0d3435','#265f5d',1);\r\n\r\n      text(ctx,'ALT AMA\u00C7',1330,178,{\r\n        font:'900 13px Arial',\r\n        color:'#ffd65c'\r\n      });\r\n\r\n      wrapText(\r\n        ctx,\r\n        source.subPurposeLabel||source.subPurposeKey,\r\n        1330,204,180,23,4,\r\n        {font:'800 16px Arial',color:'#eefcf8'}\r\n      );\r\n\r\n      text(ctx,'G\u00D6RSEL',1330,328,{\r\n        font:'900 13px Arial',\r\n        color:'#63f1d7'\r\n      });\r\n\r\n      wrapText(\r\n        ctx,\r\n        source.scenarioTitle||source.scenarioLabel||'Kurulum g\u00F6rseli',\r\n        1330,354,180,22,5,\r\n        {font:'800 15px Arial',color:'#eefcf8'}\r\n      );\r\n\r\n      text(ctx,'QR \u00B7 G\u00D6RSEL\u0130 A\u00C7',1420,520,{\r\n        font:'900 13px Arial',\r\n        color:'#63f1d7',\r\n        align:'center'\r\n      });\r\n\r\n      rounded(ctx,1324,548,192,192,18,'#fff','#2f8d88',2);\r\n      qr.drawToCanvas(ctx,url,1330,554,180,{\r\n        background:'#fff',\r\n        foreground:'#020617',\r\n        quiet:4\r\n      });\r\n\r\n      text(ctx,'Se\u00E7im ekran\u0131nda a\u00E7',1420,758,{\r\n        font:'800 11px Arial',\r\n        color:'#bfe2dc',\r\n        align:'center'\r\n      });\r\n\r\n      text(ctx,'CANFOTO.COM',1420,792,{\r\n        font:'900 16px Arial',\r\n        color:'#ffd65c',\r\n        align:'center'\r\n      });\r\n\r\n      URL.revokeObjectURL(loaded.objectUrl);\r\n\r\n      return new Promise(function(resolve,reject){\r\n        canvas.toBlob(function(blob){\r\n          if(!blob)return reject(new Error('PNG_BLOB_FAILED'));\r\n\r\n          var objectUrl=URL.createObjectURL(blob);\r\n          var file=null;\r\n\r\n          try{\r\n            if(typeof File==='function'){\r\n              file=new File(\r\n                [blob],\r\n                'canfoto-panel-alt-amac-kurulum-gorseli.png',\r\n                {type:'image/png'}\r\n              )\r\n            }\r\n          }catch(_){}\r\n\r\n          resolve({\r\n            ok:true,\r\n            version:VERSION,\r\n            engine:'panel',\r\n            kind:'purpose-visual',\r\n            width:WIDTH,\r\n            height:HEIGHT,\r\n            blob:blob,\r\n            objectUrl:objectUrl,\r\n            file:file,\r\n            fileShareSupported:!!(\r\n              file&&\r\n              navigator.share&&\r\n              (!navigator.canShare||navigator.canShare({files:[file]}))\r\n            ),\r\n            url:url,\r\n            source:source\r\n          })\r\n        },'image/png',1)\r\n      })\r\n    })\r\n  }\r\n\r\n  function closeTray(){\r\n    var tray=document.getElementById(TRAY_ID);\r\n    if(tray&&tray.parentNode)tray.parentNode.removeChild(tray)\r\n  }\r\n\r\n  function showTray(pkg){\r\n    closeTray();\r\n\r\n    var tray=document.createElement('section');\r\n    tray.id=TRAY_ID;\r\n    tray.setAttribute('role','dialog');\r\n    tray.setAttribute('aria-label','\u00C7ekim senaryosu g\u00F6rseli payla\u015F\u0131m\u0131 haz\u0131r');\r\n\r\n    tray.innerHTML=\r\n      '<div class=\"f2-head\">'+\r\n        '<strong>G\u00F6rsel payla\u015Fmaya haz\u0131r</strong>'+\r\n        '<button type=\"button\" class=\"f2-x\" data-f2-close aria-label=\"Kapat\">\u00D7</button>'+\r\n      '</div>'+\r\n      '<img class=\"f2-preview\" alt=\"Haz\u0131rlanan Panel LED \u00E7ekim senaryosu payla\u015F\u0131m g\u00F6rseli\">'+\r\n      '<div class=\"f2-copy\">\u00C7ekim senaryosu g\u00F6rseliniz haz\u0131r. \u0130sterseniz \u015Fimdi payla\u015F\u0131n veya PNG olarak indirin. QR kodu bu g\u00F6rseli se\u00E7im ekran\u0131nda do\u011Frudan a\u00E7ar.</div>'+\r\n      '<div class=\"f2-actions\">'+\r\n        '<button type=\"button\" class=\"f2-primary\" data-f2-share-now>\u015Eimdi Payla\u015F</button>'+\r\n        '<a class=\"f2-secondary\" data-f2-download>PNG \u0130ndir</a>'+\r\n        '<button type=\"button\" class=\"f2-secondary\" data-f2-close>Kapat</button>'+\r\n      '</div>';\r\n\r\n    var preview=tray.querySelector('.f2-preview');\r\n    preview.src=pkg.objectUrl;\r\n\r\n    var download=tray.querySelector('[data-f2-download]');\r\n    download.href=pkg.objectUrl;\r\n    download.download='canfoto-panel-alt-amac-kurulum-gorseli.png';\r\n\r\n    Array.prototype.slice.call(tray.querySelectorAll('[data-f2-close]')).forEach(function(button){\r\n      button.addEventListener('click',closeTray)\r\n    });\r\n\r\n    tray.querySelector('[data-f2-share-now]').addEventListener('click',function(){\r\n      shareNow()\r\n    });\r\n\r\n    document.body.appendChild(tray)\r\n  }\r\n\r\n  function prepareFromCard(card,button){\r\n    if(STATE.preparing)return Promise.resolve(null);\r\n\r\n    var cards=previewCards();\r\n    var index=cards.indexOf(card);\r\n    var source=cardSource(card,index);\r\n\r\n    if(!source){\r\n      STATE.lastError={code:'SOURCE_NOT_READY',at:Date.now()};\r\n      return Promise.resolve(null)\r\n    }\r\n\r\n    var url=buildDeepLink(source);\r\n    if(!url){\r\n      STATE.lastError={code:'DEEPLINK_NOT_READY',at:Date.now()};\r\n      return Promise.resolve(null)\r\n    }\r\n\r\n    STATE.preparing=true;\r\n\r\n    if(button){\r\n      button.disabled=true;\r\n      button.textContent='Haz\u0131rlan\u0131yor\u2026'\r\n    }\r\n\r\n    return render(source,url)\r\n      .then(function(pkg){\r\n        if(STATE.prepared&&STATE.prepared.objectUrl){\r\n          try{URL.revokeObjectURL(STATE.prepared.objectUrl)}catch(_){}\r\n        }\r\n\r\n        STATE.prepared=pkg;\r\n        STATE.lastError=null;\r\n        showTray(pkg);\r\n        return pkg\r\n      })\r\n      .catch(function(error){\r\n        STATE.lastError={\r\n          code:'PREPARE_FAILED',\r\n          message:String(error&&error.message||error),\r\n          at:Date.now()\r\n        };\r\n        return null\r\n      })\r\n      .finally(function(){\r\n        STATE.preparing=false;\r\n        if(button){\r\n          button.disabled=false;\r\n          button.textContent='Payla\u015F'\r\n        }\r\n      })\r\n  }\r\n\r\n  function shareNow(){\r\n    var pkg=STATE.prepared;\r\n\r\n    if(!pkg||!pkg.ok){\r\n      return Promise.resolve({\r\n        ok:false,\r\n        code:'NOT_PREPARED',\r\n        version:VERSION\r\n      })\r\n    }\r\n\r\n    if(pkg.file&&pkg.fileShareSupported&&navigator.share){\r\n      STATE.nativeShareCalls+=1;\r\n\r\n      var promise;\r\n\r\n      try{\r\n        promise=navigator.share({\r\n          title:pkg.source.scenarioTitle||'Panel LED \u00E7ekim senaryosu',\r\n          text:[\r\n            pkg.source.purposeLabel,\r\n            pkg.source.subPurposeLabel,\r\n            pkg.source.scenarioTitle,\r\n            'Can Foto'\r\n          ].filter(Boolean).join(' \u00B7 '),\r\n          url:pkg.url,\r\n          files:[pkg.file]\r\n        })\r\n      }catch(error){\r\n        STATE.lastShareResult={\r\n          ok:false,\r\n          method:'native-share-file-url',\r\n          code:'NATIVE_SHARE_THROW',\r\n          message:String(error&&error.message||error)\r\n        };\r\n        return Promise.resolve(STATE.lastShareResult)\r\n      }\r\n\r\n      return Promise.resolve(promise)\r\n        .then(function(){\r\n          STATE.lastShareResult={\r\n            ok:true,\r\n            method:'native-share-file-url',\r\n            hasFile:true,\r\n            url:pkg.url\r\n          };\r\n          return STATE.lastShareResult\r\n        })\r\n        .catch(function(error){\r\n          STATE.lastShareResult={\r\n            ok:false,\r\n            method:'native-share-file-url',\r\n            code:error&&error.name==='AbortError'?'CANCELLED':'NATIVE_SHARE_FAILED',\r\n            message:String(error&&error.message||error),\r\n            hasFile:true,\r\n            url:pkg.url\r\n          };\r\n          return STATE.lastShareResult\r\n        })\r\n    }\r\n\r\n    var link=document.createElement('a');\r\n    link.href=pkg.objectUrl;\r\n    link.download='canfoto-panel-alt-amac-kurulum-gorseli.png';\r\n    document.body.appendChild(link);\r\n    link.click();\r\n    link.remove();\r\n\r\n    STATE.lastShareResult={\r\n      ok:true,\r\n      method:'png-download',\r\n      hasFile:!!pkg.file,\r\n      url:pkg.url\r\n    };\r\n\r\n    return Promise.resolve(STATE.lastShareResult)\r\n  }\r\n\r\n  function exactSourceForTarget(target){\r\n    var cards=previewCards();\r\n    var found=null;\r\n\r\n    cards.some(function(card,index){\r\n      var source=cardSource(card,index);\r\n      if(\r\n        source&&\r\n        source.scenarioType===target.scenarioType&&\r\n        source.visualHash===target.visualHash\r\n      ){\r\n        found=source;\r\n        return true\r\n      }\r\n      return false\r\n    });\r\n\r\n    return found\r\n  }\r\n\r\n  function targetSnapshot(target){\r\n    var state=purposeState();\r\n    var source=target?exactSourceForTarget(target):null;\r\n    var lightbox=document.getElementById('gdxPanelV4R32UxR3ImageLightbox');\r\n    var lightboxImage=lightbox&&lightbox.querySelector('img');\r\n    var lightboxSrc=canonicalUrl(\r\n      lightboxImage&&(lightboxImage.currentSrc||lightboxImage.getAttribute('src'))\r\n    );\r\n\r\n    var committed=currentCommittedKey();\r\n\r\n    var purposeExact=!!(\r\n      target&&state&&\r\n      state.open===true&&\r\n      clean(state.pendingPurposeKey)===target.purposeKey\r\n    );\r\n\r\n    var subExact=!!(\r\n      target&&state&&\r\n      clean(state.pendingSubPurposeKey)===target.subPurposeKey\r\n    );\r\n\r\n    var visualExact=!!(\r\n      source&&\r\n      source.scenarioType===target.scenarioType&&\r\n      source.visualHash===target.visualHash\r\n    );\r\n\r\n    var lightboxExact=!!(\r\n      target&&\r\n      (!target.lightbox||(\r\n        state&&\r\n        state.lightboxOpen===true&&\r\n        lightbox&&\r\n        lightboxImage&&\r\n        lightboxSrc===source.src\r\n      ))\r\n    );\r\n\r\n    var committedUnchanged=clean(STATE.committedBefore)===clean(committed);\r\n\r\n    return{\r\n      exact:!!(\r\n        purposeExact&&\r\n        subExact&&\r\n        visualExact&&\r\n        lightboxExact&&\r\n        committedUnchanged\r\n      ),\r\n      purposeExact:purposeExact,\r\n      subPurposeExact:subExact,\r\n      visualExact:visualExact,\r\n      lightboxExact:lightboxExact,\r\n      purposeModalOpen:!!(state&&state.open),\r\n      lightboxOpen:!!(state&&state.lightboxOpen),\r\n      targetPurposeKey:target?target.purposeKey:'',\r\n      activePurposeKey:clean(state&&state.pendingPurposeKey),\r\n      targetSubPurposeKey:target?target.subPurposeKey:'',\r\n      activeSubPurposeKey:clean(state&&state.pendingSubPurposeKey),\r\n      targetScenarioType:target?target.scenarioType:'',\r\n      activeScenarioType:source?source.scenarioType:'',\r\n      targetVisualHash:target?target.visualHash:'',\r\n      activeVisualHash:source?source.visualHash:'',\r\n      sourceUrl:source?source.src:'',\r\n      committedBefore:STATE.committedBefore,\r\n      committedAfter:committed,\r\n      committedUnchanged:committedUnchanged,\r\n      previewCardCount:previewCards().length\r\n    }\r\n  }\r\n\r\n  function waitUntil(test,timeout,step){\r\n    timeout=Number(timeout)||12000;\r\n    step=Number(step)||80;\r\n\r\n    return new Promise(function(resolve){\r\n      var started=Date.now();\r\n\r\n      (function tick(){\r\n        var value=null;\r\n\r\n        try{value=test()}catch(_){}\r\n\r\n        if(value){\r\n          resolve({ok:true,value:value,elapsed:Date.now()-started});\r\n          return\r\n        }\r\n\r\n        if(Date.now()-started>=timeout){\r\n          resolve({ok:false,value:null,elapsed:Date.now()-started});\r\n          return\r\n        }\r\n\r\n        setTimeout(tick,step)\r\n      })()\r\n    })\r\n  }\r\n\r\n  function r28BlueprintSnapshot(target){\r\n    var fn=window.debugPanelV4R28R1R1SelectionUiBlueprintScenarioLockKeyFix;\r\n    if(typeof fn!=='function'){\r\n      return{\r\n        ready:false,\r\n        code:'R28_BLUEPRINT_QA_NOT_READY',\r\n        purposeReady:false,\r\n        subPurposeReady:false\r\n      }\r\n    }\r\n\r\n    try{\r\n      var result=fn();\r\n      var bp=result&&result.ok&&result.diagnostics\r\n        ?result.diagnostics.selectionUiBlueprint\r\n        :null;\r\n      var purposes=bp&&Array.isArray(bp.mainPurposes)?bp.mainPurposes:[];\r\n      var purpose=purposes.find(function(item){\r\n        return clean(item&&item.purposeKey)===target.purposeKey\r\n      })||null;\r\n      var subs=purpose&&Array.isArray(purpose.subPurposes)?purpose.subPurposes:[];\r\n      var sub=subs.find(function(item){\r\n        return clean(item&&item.subPurposeKey)===target.subPurposeKey\r\n      })||null;\r\n\r\n      return{\r\n        ready:!!(result&&result.ok&&bp&&purpose&&sub),\r\n        code:result&&result.ok?'R28_BLUEPRINT_READ':'R28_BLUEPRINT_QA_NOT_PASS',\r\n        qaOk:!!(result&&result.ok),\r\n        blueprintReady:!!bp,\r\n        purposeReady:!!purpose,\r\n        subPurposeReady:!!sub,\r\n        purposeKey:purpose?clean(purpose.purposeKey):'',\r\n        subPurposeKey:sub?clean(sub.subPurposeKey):''\r\n      }\r\n    }catch(error){\r\n      return{\r\n        ready:false,\r\n        code:'R28_BLUEPRINT_QA_ERROR',\r\n        message:String(error&&error.message||error),\r\n        purposeReady:false,\r\n        subPurposeReady:false\r\n      }\r\n    }\r\n  }\r\n\r\n  function purposeRestoreReadiness(target){\r\n    var api=purposeApi();\r\n    var blueprint=r28BlueprintSnapshot(target);\r\n    var manifest=manifestRows(target.purposeKey,target.subPurposeKey);\r\n    var exactScenario=manifest.find(function(row){\r\n      return clean(row&&row.scenarioType)===target.scenarioType\r\n    })||null;\r\n    var sourceUrl=exactScenario?cdnForRow(exactScenario):'';\r\n    var sourceHash=sourceUrl?fnv32(sourceUrl):'';\r\n\r\n    var ready=!!(\r\n      api&&\r\n      typeof api.open==='function'&&\r\n      blueprint.ready&&\r\n      manifest.length===3&&\r\n      exactScenario&&\r\n      /^https:\\/\\//i.test(sourceUrl)&&\r\n      sourceHash===target.visualHash\r\n    );\r\n\r\n    return{\r\n      ready:ready,\r\n      apiReady:!!(api&&typeof api.open==='function'),\r\n      blueprint:blueprint,\r\n      manifestCount:manifest.length,\r\n      scenarioReady:!!exactScenario,\r\n      sourceUrl:sourceUrl,\r\n      sourceHash:sourceHash,\r\n      visualHashPass:!!(sourceHash&&sourceHash===target.visualHash)\r\n    }\r\n  }\r\n\r\n  function waitForPurposeRestoreReadiness(target,timeout){\r\n    return waitUntil(function(){\r\n      STATE.readinessAttempts+=1;\r\n      var snapshot=purposeRestoreReadiness(target);\r\n      STATE.readinessResult=snapshot;\r\n      return snapshot.ready?snapshot:null\r\n    },timeout||15000,90)\r\n  }\r\n\r\n  function openPurposeWhenReady(target,timeout){\r\n    return waitUntil(function(){\r\n      STATE.openAttempts+=1;\r\n\r\n      var readiness=purposeRestoreReadiness(target);\r\n      STATE.readinessResult=readiness;\r\n      if(!readiness.ready)return null;\r\n\r\n      var api=purposeApi();\r\n      var state=purposeState();\r\n\r\n      if(\r\n        state&&\r\n        state.open===true&&\r\n        clean(state.pendingPurposeKey)===target.purposeKey\r\n      ){\r\n        STATE.openSucceededAt=Date.now();\r\n        return{\r\n          api:api,\r\n          alreadyOpen:true,\r\n          readiness:readiness\r\n        }\r\n      }\r\n\r\n      var opened=false;\r\n      try{\r\n        opened=api.open(target.purposeKey,null)!==false\r\n      }catch(_){\r\n        opened=false\r\n      }\r\n\r\n      if(!opened)return null;\r\n\r\n      STATE.openSucceededAt=Date.now();\r\n      return{\r\n        api:api,\r\n        alreadyOpen:false,\r\n        readiness:readiness\r\n      }\r\n    },timeout||15000,120)\r\n  }\r\n\r\n  function restoreTarget(target){\r\n    STATE.restoreAttempted=true;\r\n    STATE.committedBefore=currentCommittedKey();\r\n\r\n    return waitForPurposeRestoreReadiness(target,15000)\r\n      .then(function(readinessReady){\r\n        if(!readinessReady.ok){\r\n          return{\r\n            ok:false,\r\n            code:'PURPOSE_RESTORE_READINESS_TIMEOUT',\r\n            readiness:STATE.readinessResult\r\n          }\r\n        }\r\n\r\n        return openPurposeWhenReady(target,15000)\r\n      })\r\n      .then(function(openReady){\r\n        if(openReady&&openReady.ok===false){\r\n          return openReady\r\n        }\r\n\r\n        if(!openReady||!openReady.ok){\r\n          return{\r\n            ok:false,\r\n            code:'PURPOSE_MODAL_OPEN_RETRY_TIMEOUT',\r\n            readiness:STATE.readinessResult,\r\n            openAttempts:STATE.openAttempts\r\n          }\r\n        }\r\n\r\n        return waitUntil(function(){\r\n          var layer=modalLayer();\r\n          var state=purposeState();\r\n\r\n          if(\r\n            !layer||\r\n            !state||\r\n            state.open!==true||\r\n            clean(state.pendingPurposeKey)!==target.purposeKey\r\n          )return null;\r\n\r\n          var buttons=Array.prototype.slice.call(layer.querySelectorAll('[data-gdx-uxr3-sub]'));\r\n          return buttons.find(function(button){\r\n            return clean(button.getAttribute('data-gdx-uxr3-sub'))===target.subPurposeKey\r\n          })||null\r\n        },9000,70)\r\n          .then(function(subReady){\r\n            if(!subReady.ok){\r\n              return {ok:false,code:'SUBPURPOSE_BUTTON_NOT_READY'}\r\n            }\r\n\r\n            subReady.value.click();\r\n\r\n            return waitUntil(function(){\r\n              var state=purposeState();\r\n              if(\r\n                !state||\r\n                clean(state.pendingPurposeKey)!==target.purposeKey||\r\n                clean(state.pendingSubPurposeKey)!==target.subPurposeKey||\r\n                previewCards().length!==3\r\n              )return null;\r\n\r\n              var source=exactSourceForTarget(target);\r\n              return source||null\r\n            },9000,70)\r\n              .then(function(visualReady){\r\n                if(!visualReady.ok){\r\n                  return {ok:false,code:'TARGET_VISUAL_NOT_READY'}\r\n                }\r\n\r\n                var source=visualReady.value;\r\n\r\n                if(target.lightbox){\r\n                  var control=source.card&&source.card.querySelector(\r\n                    '[data-gdx-uxr3-image-open=\"1\"][data-gdx-uxr3-image-src]'\r\n                  );\r\n\r\n                  if(!control){\r\n                    return {ok:false,code:'LIGHTBOX_TRIGGER_NOT_READY'}\r\n                  }\r\n\r\n                  control.click();\r\n                }\r\n\r\n                return waitUntil(function(){\r\n                  var snap=targetSnapshot(target);\r\n                  return snap.exact?snap:null\r\n                },7000,70)\r\n                  .then(function(exactReady){\r\n                    if(!exactReady.ok){\r\n                      return {\r\n                        ok:false,\r\n                        code:'FINAL_TARGET_NOT_EXACT',\r\n                        snapshot:targetSnapshot(target)\r\n                      }\r\n                    }\r\n\r\n                    return new Promise(function(resolve){\r\n                      setTimeout(function(){\r\n                        var stable=targetSnapshot(target);\r\n                        stable.stableAfterQuietWindow=!!stable.exact;\r\n\r\n                        resolve({\r\n                          ok:!!stable.exact,\r\n                          code:stable.exact\r\n                            ?'PURPOSE_VISUAL_DEEPLINK_RESTORED'\r\n                            :'PURPOSE_VISUAL_NOT_STABLE',\r\n                          finalTarget:stable\r\n                        })\r\n                      },260)\r\n                    })\r\n                  })\r\n              })\r\n          })\r\n      })\r\n  }\r\n\r\n  function beginTargetRestore(){\r\n    var target=parseDeepLink(location.href);\r\n    if(!target)return;\r\n\r\n    STATE.targetMode=true;\r\n    STATE.target=target;\r\n    STATE.targetStartedAt=Date.now();\r\n    STATE.committedBefore=currentCommittedKey();\r\n\r\n    restoreTarget(target)\r\n      .then(function(result){\r\n        STATE.restoreResult=result;\r\n        STATE.finalTarget=result&&result.finalTarget?result.finalTarget:null;\r\n        STATE.committedAfter=currentCommittedKey();\r\n        STATE.targetFinishedAt=Date.now();\r\n        STATE.targetTimedOut=!(result&&result.ok)\r\n      })\r\n      .catch(function(error){\r\n        STATE.restoreResult={\r\n          ok:false,\r\n          code:'F2_RESTORE_ERROR',\r\n          message:String(error&&error.message||error)\r\n        };\r\n        STATE.committedAfter=currentCommittedKey();\r\n        STATE.targetFinishedAt=Date.now();\r\n        STATE.targetTimedOut=true\r\n      })\r\n  }\r\n\r\n  function install(){\r\n    addStyle();\r\n    finiteMountRefresh();\r\n\r\n    document.addEventListener('click',function(event){\r\n      var target=event.target&&event.target.closest\r\n        ?event.target.closest(\r\n          '[data-gdx-panel-r28-purpose],'+\r\n          '[data-gdx-uxr3-sub],'+\r\n          '[data-gdx-uxr3-image-open],'+\r\n          '[data-gdx-uxr3-close]'\r\n        )\r\n        :null;\r\n\r\n      if(target)finiteMountRefresh()\r\n    },true);\r\n\r\n    beginTargetRestore()\r\n  }\r\n\r\n  window.GDX_PANEL_V4_FAZ07_F2_PURPOSE_CDN_SHARE={\r\n    ready:true,\r\n    version:VERSION,\r\n    refresh:mount,\r\n    prepareCard:function(index){\r\n      var card=previewCards()[Number(index)||0];\r\n      return card?prepareFromCard(card,null):Promise.resolve(null)\r\n    },\r\n    shareNow:shareNow,\r\n    getPrepared:function(){return STATE.prepared},\r\n    getState:function(){return STATE},\r\n    buildDeepLink:buildDeepLink,\r\n    parseDeepLink:parseDeepLink,\r\n    targetSnapshot:function(){\r\n      return STATE.target?targetSnapshot(STATE.target):null\r\n    }\r\n  };\r\n\r\n  window.debugPanelV4F2PurposeVisualSourceQaV1=function(){\r\n    mount();\r\n\r\n    var state=purposeState();\r\n    var cards=previewCards();\r\n    var rows=cards.map(function(card,index){\r\n      var source=cardSource(card,index);\r\n      return{\r\n        index:index,\r\n        sourceReady:!!source,\r\n        sourceUrl:source?source.src:'',\r\n        sourceIsHttps:!!(source&&/^https:\\/\\//i.test(source.src)),\r\n        visualHash:source?source.visualHash:'',\r\n        scenarioType:source?source.scenarioType:'',\r\n        templateKey:source?source.templateKey:'',\r\n        cdnSelectionKey:source?source.cdnSelectionKey:'',\r\n        shareCtaExists:!!card.querySelector('['+CTA_ATTR+'=\"1\"]'),\r\n        shareCtaTwinClass:!!(\r\n          card.querySelector('['+CTA_ATTR+'=\"1\"]')&&\r\n          card.querySelector('['+CTA_ATTR+'=\"1\"]').classList.contains('gdx-uxr3-open-image')\r\n        ),\r\n        shareCtaText:clean(\r\n          card.querySelector('['+CTA_ATTR+'=\"1\"]')&&\r\n          card.querySelector('['+CTA_ATTR+'=\"1\"]').textContent\r\n        )\r\n      }\r\n    });\r\n\r\n    var committed=currentCommittedKey();\r\n    var pendingKey=clean(state&&state.pendingPurposeKey)+'::'+clean(state&&state.pendingSubPurposeKey);\r\n\r\n    var result={\r\n      ok:!!(\r\n        state&&\r\n        state.open===true&&\r\n        clean(state.pendingPurposeKey)&&\r\n        clean(state.pendingSubPurposeKey)&&\r\n        cards.length===3&&\r\n        rows.length===3&&\r\n        rows.every(function(row){\r\n          return (\r\n            row.sourceReady&&\r\n            row.sourceIsHttps&&\r\n            row.visualHash&&\r\n            SCENARIO_ORDER.indexOf(row.scenarioType)>=0&&\r\n            row.shareCtaExists&&\r\n            row.shareCtaTwinClass&&\r\n            row.shareCtaText==='Payla\u015F'\r\n          )\r\n        })\r\n      ),\r\n      version:VERSION,\r\n      sourceOwner:'PANEL_UXR3_V7_PENDING_CDN_VISUAL',\r\n      modalOpen:!!(state&&state.open),\r\n      pendingPurposeKey:clean(state&&state.pendingPurposeKey),\r\n      pendingSubPurposeKey:clean(state&&state.pendingSubPurposeKey),\r\n      pendingSelectionKey:pendingKey,\r\n      committedSelectionKey:committed,\r\n      pendingIsCommitted:!!(pendingKey&&committed&&pendingKey===committed),\r\n      previewCardCount:cards.length,\r\n      shareCtaCount:rows.filter(function(row){return row.shareCtaExists}).length,\r\n      rows:rows,\r\n      lazyCanvas:true,\r\n      newMutationObserver:false,\r\n      newSetInterval:false,\r\n      r28CommitCalledByF2:false,\r\n      note:'F2.2 PASS proves all 3 exact UX-R3 CDN previews receive a Payla\u015F action that visually inherits the existing V7 G\u00F6rseli b\u00FCy\u00FCt control, while pending state remains distinct from committed R28 selection.'\r\n    };\r\n\r\n    console.log(result);\r\n    return result\r\n  };\r\n\r\n  window.debugPanelV4F2PurposeVisualPreparedQaV1=function(){\r\n    var pkg=STATE.prepared;\r\n\r\n    var result={\r\n      ok:!!(\r\n        pkg&&\r\n        pkg.ok&&\r\n        pkg.width===1600&&\r\n        pkg.height===900&&\r\n        pkg.blob&&\r\n        pkg.objectUrl&&\r\n        pkg.url&&\r\n        pkg.source&&\r\n        pkg.source.visualHash\r\n      ),\r\n      version:VERSION,\r\n      prepared:!!(pkg&&pkg.ok),\r\n      width:pkg?pkg.width:0,\r\n      height:pkg?pkg.height:0,\r\n      fileReady:!!(pkg&&pkg.file),\r\n      fileShareSupported:!!(pkg&&pkg.fileShareSupported),\r\n      objectUrlReady:!!(pkg&&pkg.objectUrl),\r\n      deepLinkUrl:pkg?pkg.url:'',\r\n      source:pkg?{\r\n        owner:pkg.source.owner,\r\n        purposeKey:pkg.source.purposeKey,\r\n        subPurposeKey:pkg.source.subPurposeKey,\r\n        scenarioType:pkg.source.scenarioType,\r\n        visualHash:pkg.source.visualHash,\r\n        sourceUrl:pkg.source.src\r\n      }:null,\r\n      nativeShareCalls:STATE.nativeShareCalls,\r\n      lastShareResult:STATE.lastShareResult,\r\n      note:'Prepared 16:9 F2 package from the exact currently rendered UX-R3 CDN preview.'\r\n    };\r\n\r\n    console.log(result);\r\n    return result\r\n  };\r\n\r\n  window.debugPanelV4F2PurposeVisualNativeShareQaV1=function(){\r\n    var pkg=STATE.prepared;\r\n\r\n    var result={\r\n      ok:!!(pkg&&pkg.ok&&pkg.file),\r\n      version:VERSION,\r\n      prepared:!!(pkg&&pkg.ok),\r\n      fileReady:!!(pkg&&pkg.file),\r\n      fileShareSupported:!!(pkg&&pkg.fileShareSupported),\r\n      nativeShareCalls:STATE.nativeShareCalls,\r\n      lastShareResult:STATE.lastShareResult,\r\n      note:'Before physical \u015Eimdi Payla\u015F nativeShareCalls should be 0. After click it should become 1 on supported browsers.'\r\n    };\r\n\r\n    console.log(result);\r\n    return result\r\n  };\r\n\r\n  window.debugPanelV4F2PurposeVisualDeepLinkQaV1=function(){\r\n    var target=parseDeepLink(location.href);\r\n    var snapshot=target?targetSnapshot(target):null;\r\n\r\n    var result={\r\n      ok:!!(\r\n        target&&\r\n        STATE.readinessResult&&\r\n        STATE.readinessResult.ready&&\r\n        snapshot&&\r\n        snapshot.exact&&\r\n        STATE.finalTarget&&\r\n        STATE.finalTarget.exact&&\r\n        STATE.finalTarget.stableAfterQuietWindow&&\r\n        STATE.finalTarget.committedUnchanged\r\n      ),\r\n      version:VERSION,\r\n      visualDeepLinkMode:!!target,\r\n      restoreAttempted:STATE.restoreAttempted,\r\n      readinessAttempts:STATE.readinessAttempts,\r\n      readinessResult:STATE.readinessResult,\r\n      openAttempts:STATE.openAttempts,\r\n      openSucceededAt:STATE.openSucceededAt,\r\n      restoreResult:STATE.restoreResult,\r\n      snapshot:snapshot,\r\n      stableTarget:STATE.finalTarget,\r\n      committedBefore:STATE.committedBefore,\r\n      committedAfter:currentCommittedKey(),\r\n      committedUnchanged:clean(STATE.committedBefore)===clean(currentCommittedKey()),\r\n      targetTimedOut:STATE.targetTimedOut,\r\n      targetStartedAt:STATE.targetStartedAt,\r\n      targetFinishedAt:STATE.targetFinishedAt,\r\n      note:'F2.1 PASS requires R28 blueprint/purpose/sub-purpose/visual readiness before V7 open, then exact pending state + exact scenario CDN visual + existing V7 lightbox, while committed R28 selection remains unchanged.'\r\n    };\r\n\r\n    console.log(result);\r\n    return result\r\n  };\r\n\r\n  if(document.readyState==='loading'){\r\n    document.addEventListener('DOMContentLoaded',install,{once:true})\r\n  }else{\r\n    install()\r\n  }\r\n\r\n})(window,document);\r\n\r\n/* CANFOTO R4-PA P1.20H \u2014 NORA USER LANGUAGE CLOSE V1 */\r\n"],
  "mappings": "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",
  "names": ["window", "document", "url", "stage", "text", "cx", "cy", "lx", "nx", "ny", "spread", "r"]
}
