{
  "version": 3,
  "sources": ["/cdn/shop/t/174/assets/cs-hybrid-flow-refine.js?mobile-polish-check=20260906"],
  "sourcesContent": ["/* V29's editorial sequence, on the existing hybrid commerce foundation. */\r\n(() => {\n  const normalizeStillGallery = root => {\n    // Motion renderers retain their own player and fallback navigation.\n    if (root.querySelector('corsaille-video-first')) return;\n    const gallery = root.querySelector('.cl-gallery');\n    const stage = gallery?.querySelector(':scope > .cl-photo-stage');\n    const controls = stage?.querySelector(':scope > .cl-gallery-controls');\n    if (!controls || !controls.querySelector(':scope > [data-prev]') || !controls.querySelector(':scope > [data-count]') || !controls.querySelector(':scope > [data-next]')) return;\n    // Move the existing node once. RingLab's delegated navigation, current\n    // count, hidden state, and button availability stay on the same elements.\n    controls.classList.add('cl-still-gallery-controls');\n    stage.after(controls);\n  };\n  const attach = root => {\n    if (root.dataset.handle === 'epure-oval' || !root.dataset.hybridReady) return;\n    normalizeStillGallery(root);\n    if (root.dataset.flowRefined) return;\n    const make = (tag, cls, text) => {\r\n      const node = document.createElement(tag);\r\n      if (cls) node.className = cls;\r\n      if (text) node.textContent = text;\r\n      return node;\r\n    };\r\n    const story = root.querySelector('.cl-hybrid-story');\r\n    const dossier = root.querySelector('.cl-dossier');\r\n    if (!story || !dossier) return;\r\n    const ring = /^ring-/.test(root.dataset.sizingMode || '');\r\n    const category = root.dataset.category;\r\n    const pair = root.dataset.pair === 'true';\r\n    const headings = {engagement:'Inelul \u00EEn detaliu.',wedding:'Verigheta \u00EEn detaliu.',earrings:'Cerceii \u00EEn detaliu.',bracelet:'Br\u0103\u021Bara \u00EEn detaliu.',necklace:'Colierul \u00EEn detaliu.'};\r\n    dossier.querySelector('h2').textContent = pair ? 'Perechea \u00EEn detaliu.' : headings[category] || 'Crea\u021Bia \u00EEn detaliu.';\r\n    dossier.id = `cl-details-${root.dataset.handle}`;\r\n    story.querySelector('.cl-description h2').textContent = root.dataset.handle === 'rythme-eternel-lueur-ii' ? 'Lumin\u0103, f\u0103r\u0103 \u00EEnceput sau sf\u00E2r\u0219it.' : 'Detaliul face diferen\u021Ba.';\r\n    story.querySelector('.cl-overline').textContent = root.product.title.split(' | ')[0];\r\n    // Factual existing source description stays intact; no generic claims about\r\n    // certificates, delivery insurance or complimentary services are introduced.\r\n    const documents = dossier.querySelector('.cl-hybrid-documents');\r\n    documents.querySelector('h3').textContent = '\u00CEncredere, \u00EEn fiecare detaliu.';\r\n    const documentation = root.querySelector('[data-documentation-details]');\r\n    if (documentation) {\r\n      documentation.open = true;\r\n      documentation.querySelector('summary span').textContent = 'Documenta\u021Bia diamantelor';\r\n    }\r\n    const rail = make('nav', 'cl-maison-rail');\r\n    rail.setAttribute('aria-label', 'Detalii \u0219i servicii Corsaille');\r\n    const railItem = (title, detail, icon, href, action) => {\r\n      const item = make(href ? 'a' : 'button', 'cl-maison-rail-item');\r\n      if (href) item.href = href; else item.type = 'button';\r\n      if (icon) item.append(icon.cloneNode(true));\r\n      const copy = make('span', 'cl-maison-rail-copy');\r\n      copy.append(make('strong','',title),make('small','',detail));\r\n      item.append(copy);\r\n      if (action) item.addEventListener('click',action);\r\n      rail.append(item);\r\n    };\r\n    const jumpDetails = () => { dossier.scrollIntoView({behavior:'smooth',block:'start'}); };\r\n    railItem('Configura\u021Bia ta',root.pairPurchase && !root.pairPurchase.hasDiamonds() ? 'Metal \u0219i greut\u0103\u021Bi' : 'Metal, diamante \u0219i greut\u0103\u021Bi',root.querySelector('[data-documentation-details] svg'),`#${dossier.id}`);\r\n    const measureIcon = document.createElementNS('http://www.w3.org/2000/svg','svg');\r\n    measureIcon.setAttribute('viewBox','0 0 24 24');\r\n    measureIcon.setAttribute('fill','none'); measureIcon.setAttribute('stroke','currentColor');\r\n    measureIcon.setAttribute('stroke-width','1.3'); measureIcon.setAttribute('aria-hidden','true');\r\n    measureIcon.innerHTML = '<circle cx=\"12\" cy=\"10\" r=\"7\"/><circle cx=\"12\" cy=\"10\" r=\"4.4\"/><path d=\"M4 21h16M4 19v3m16-3v3M8 20v2m4-2v2m4-2v2\"/>';\r\n    if (ring) railItem('Ghid de m\u0103rimi','M\u0103soar\u0103. Compar\u0103. Alege.',measureIcon,null,event=>{\r\n      const trigger = event.currentTarget;\r\n      root.querySelector('[data-size-help]')?.click();\r\n      root.querySelector('[data-size-dialog]')?.addEventListener('close',()=>trigger.focus({preventScroll:true}),{once:true});\r\n    });\r\n    else railItem('Documenta\u021Bie','Ce cuprinde un raport',root.querySelector('[data-documentation-details] svg'),null,jumpDetails);\r\n    story.before(rail);\r\n    // The dossier is the purchase record, including the actual selected total.\r\n    const priceRow = make('div','cl-maison-ledger-total');\r\n    const tax = root.querySelector('[data-tax-note]');\r\n    const priceLabel = make('dt','','Configura\u021Bia ta');\r\n    const taxLabel = make('small','cl-maison-tax');\r\n    const priceValue = make('dd','');\r\n    const total = make('strong','');\r\n    priceValue.append(total,taxLabel); priceRow.append(priceLabel,priceValue);\r\n    dossier.querySelector('.cl-specs').append(priceRow);\r\n    const totalSource = root.querySelector('.cl-purchase-total [data-price]');\r\n    const updateTotal = () => {\r\n      const nativePrice = root.variant?.price;\r\n      const exactTotal = nativePrice != null && String(nativePrice).trim() !== '' && Number.isFinite(Number(nativePrice)) && typeof root.money === 'function'\r\n        ? root.money(Number(nativePrice)) : totalSource.textContent;\r\n      if (total.textContent !== exactTotal) total.textContent = exactTotal;\r\n      taxLabel.textContent = tax?.hidden ? '' : tax?.textContent || '';\r\n    };\r\n    const priceObserver = new MutationObserver(updateTotal);\r\n    priceObserver.observe(totalSource,{childList:true,subtree:true,characterData:true,attributes:true,attributeFilter:['data-price-cents']});\r\n    if (tax) priceObserver.observe(tax,{childList:true,subtree:true,attributes:true,attributeFilter:['hidden']});\r\n    updateTotal();\r\n    const serviceList = documents.querySelector('.cl-services');\r\n    if (serviceList) {\r\n      const copy = make('p','cl-maison-service-intro','Tot ce vrei s\u0103 \u0219tii \u00EEnainte de comand\u0103.');\r\n      serviceList.before(copy);\r\n    }\r\n    // The purchase and dossier service links stay on one line. Retain the\r\n    // complete accessible name and destination, with shorter visible labels\r\n    // where the full Romanian copy would otherwise wrap or become tiny.\r\n    root.querySelectorAll('.cl-services a').forEach(link => {\r\n      const label = link.querySelector('span');\r\n      if (!label || link.querySelector('.cl-service-short')) return;\r\n      const full = label.textContent.trim();\r\n      const short = /shipping/.test(link.href) ? 'Livrare' : /refund/.test(link.href) ? 'Retur' : 'Consilier';\r\n      label.classList.add('cl-service-full');\r\n      label.setAttribute('aria-hidden','true');\r\n      const compact = make('span','cl-service-short',short);\r\n      compact.setAttribute('aria-hidden','true');\r\n      link.setAttribute('aria-label',full);\r\n      link.title = full;\r\n      link.append(compact);\r\n    });\r\n    root.dataset.flowRefined = 'true';\r\n    root.addEventListener('hybrid:dispose',()=>priceObserver.disconnect(),{once:true});\r\n    root.updateSticky();\r\n  };\r\n  const start = () => document.querySelectorAll('corsaille-ring-lab[data-concept=\"hybrid\"]').forEach(attach);\r\n  customElements.whenDefined('corsaille-ring-lab').then(start);\r\n  document.addEventListener('shopify:section:load',start);\r\n})();\r\n"],
  "mappings": "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",
  "names": []
}
