{
  "version": 3,
  "sources": ["/cdn/shop/t/3/assets/ps-modal.js?ps=vehicle-agent-20260521a"],
  "sourcesContent": ["/**\n * assets/ps-modal.js\n * General purpose modal. ES5, no deps.\n */\n(function(window, document){\n  'use strict';\n  var PS = window.PS || (window.PS = {});\n  var root, panel, titleEl, formEl, okBtn, cancelBtn, closeBtn, errorEl, resolver = null, opts = {}, opener = null, modalOpenGeneration = 0;\n  var ROOT_BASE_CLASS = 'ps-modal';\n\n  function q(sel, ctx){ return (ctx||document).querySelector(sel); }\n  function ce(tag){ return document.createElement(tag); }\n  function trimValue(val){ return String(val == null ? '' : val).replace(/^\\s+|\\s+$/g, ''); }\n  function showRoot(){\n    root.style.display = 'flex';\n    root.setAttribute('aria-hidden','false');\n    try { document.body.classList.add('ps-modal-open'); } catch(_e){}\n  }\n  function hideRoot(){\n    root.style.display = 'none';\n    root.setAttribute('aria-hidden','true');\n    try { document.body.classList.remove('ps-modal-open'); } catch(_e){}\n    restoreOpenerFocus();\n  }\n  function isVisibleFocusable(el){\n    var node = el;\n    if (!el || el.disabled || el.getAttribute('aria-hidden') === 'true' || el.tabIndex < 0) return false;\n    if (String(el.tagName || '').toLowerCase() === 'input' && String(el.type || '').toLowerCase() === 'hidden') return false;\n    while (node && node !== document.body) {\n      if (node.hidden || node.getAttribute('aria-hidden') === 'true' || node.style.display === 'none' || node.style.visibility === 'hidden') return false;\n      node = node.parentNode;\n    }\n    return true;\n  }\n  function getFocusable(){\n    var nodes = root ? root.querySelectorAll('a[href],button,input:not([type=\"hidden\"]),select,textarea,[tabindex]') : [];\n    var out = [];\n    for (var i = 0; i < nodes.length; i++) if (isVisibleFocusable(nodes[i])) out.push(nodes[i]);\n    return out;\n  }\n  function trapFocus(evt){\n    var focusable = null;\n    var first = null;\n    var last = null;\n    if (!evt || !root || root.getAttribute('aria-hidden') === 'true') return;\n    if (!((evt.key || evt.keyCode) === 'Tab' || (evt.key || evt.keyCode) === 9)) return;\n    focusable = getFocusable();\n    if (!focusable.length) {\n      if (evt.preventDefault) evt.preventDefault();\n      try { panel.focus(); } catch (_e) {}\n      return;\n    }\n    first = focusable[0];\n    last = focusable[focusable.length - 1];\n    if (evt.shiftKey && document.activeElement === first) {\n      if (evt.preventDefault) evt.preventDefault();\n      last.focus();\n    } else if (!evt.shiftKey && document.activeElement === last) {\n      if (evt.preventDefault) evt.preventDefault();\n      first.focus();\n    }\n  }\n  function restoreOpenerFocus(){\n    var target = opener;\n    opener = null;\n    if (!target || !document.documentElement.contains(target) || target.disabled) return;\n    try { target.focus(); } catch (_e) {}\n  }\n  function focusInitialTarget(){\n    var target = null;\n    var focusSel = opts.focusSelector || '[name]';\n    try { target = formEl.querySelector(focusSel); } catch (_e) { target = null; }\n    if (!isVisibleFocusable(target)) target = null;\n    if (!target && titleEl) {\n      titleEl.tabIndex = -1;\n      target = titleEl;\n    }\n    if (!target) target = panel;\n    try { target.focus(); } catch (_e2) {}\n  }\n  function focusValidationTarget(validation){\n    var target = null;\n    var selector = validation && validation.focusSelector ? validation.focusSelector : '';\n    var candidates = null;\n    var i = 0;\n    if (!selector && validation && validation.name) selector = '[name=\"' + validation.name + '\"]';\n    if (!selector) selector = opts.focusSelector || '[name]';\n    try { target = formEl.querySelector(selector); } catch (_e) { target = null; }\n    if (!isVisibleFocusable(target)) target = null;\n    if (!target) {\n      candidates = formEl.querySelectorAll('[aria-invalid=\"true\"],[name]');\n      for (i = 0; i < candidates.length; i++) {\n        if (isVisibleFocusable(candidates[i])) {\n          target = candidates[i];\n          break;\n        }\n      }\n    }\n    if (target) {\n      target.setAttribute('aria-invalid', 'true');\n      try { target.focus(); } catch (_e2) {}\n      try { target.scrollIntoView({ block: 'center', behavior: 'smooth' }); } catch (_e3) {}\n    } else if (errorEl) {\n      errorEl.tabIndex = -1;\n      try { errorEl.focus(); } catch (_e4) {}\n    }\n  }\n  function setModalClass(extraClass){\n    var classes = [ROOT_BASE_CLASS];\n    var clean = trimValue(extraClass);\n    if (clean) classes.push(clean);\n    if (root) root.className = classes.join(' ');\n  }\n  function getModalApi(){\n    return {\n      root: root,\n      panel: panel,\n      titleEl: titleEl,\n      formEl: formEl,\n      okBtn: okBtn,\n      cancelBtn: cancelBtn,\n      closeBtn: closeBtn,\n      errorEl: errorEl,\n      renderError: renderError,\n      setPrimaryDisabled: setPrimaryDisabled\n    };\n  }\n\n  function clearForm(){ while(formEl.firstChild){ formEl.removeChild(formEl.firstChild); } }\nfunction ensureSelf() {\n    if (document.getElementById('ps-modal')) return;\n    \n    var html = '' +\n      '<div id=\"ps-modal\" class=\"ps-modal\" style=\"display:none\" aria-hidden=\"true\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"psm-title\" aria-describedby=\"psm-form\" tabindex=\"-1\">' +\n        '<div class=\"psm-backdrop\"></div>' +\n        '<div class=\"psm-panel\" role=\"document\" tabindex=\"0\" aria-labelledby=\"psm-title\">' +\n          '<button type=\"button\" class=\"psm-close\" aria-label=\"Close\">' +\n            '<span class=\"svg-wrapper\" aria-hidden=\"true\">' +\n              '<svg xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" class=\"icon icon-close\" viewBox=\"0 0 18 17\"><path fill=\"currentColor\" d=\"M.865 15.978a.5.5 0 0 0 .707.707l7.433-7.431 7.579 7.282a.501.501 0 0 0 .846-.37.5.5 0 0 0-.153-.351L9.712 8.546l7.417-7.416a.5.5 0 1 0-.707-.708L8.991 7.853 1.413.573a.5.5 0 1 0-.693.72l7.563 7.268z\"/></svg>' +\n            '</span>' +\n          '</button>' +\n          '<div id=\"psm-title\" class=\"psm-title\"></div>' +\n          '<form id=\"psm-form\" class=\"psm-body\"></form>' +\n          '<div class=\"psm-footer\">' +\n            '<button type=\"button\" class=\"psm-btn psm-cancel\">Cancel</button>' +\n            '<button type=\"submit\" form=\"psm-form\" class=\"psm-btn psm-primary\" data-ps-modal-primary=\"true\" aria-label=\"Confirm modal action\">OK</button>' +\n          '</div>' +\n        '</div>' +\n      '</div>';\n\n    var css = '.ps-modal{position:fixed;inset:0;z-index:99999;align-items:center;justify-content:center;display:flex}' +\n      '.ps-modal::before{content:\"\";position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:1}' +\n      '.psm-backdrop{position:absolute;inset:0;background:transparent}' +\n      '.psm-panel{position:relative;z-index:2;background:#ffffff;width:92%;max-width:440px;padding:32px;box-shadow:0 5px 15px rgba(0,0,0,0.15);text-align:left;font-family:inherit;border-radius:0}' +\n      '.psm-title{margin:0 0 16px;font-size:22px;font-family:Georgia, \"Times New Roman\", Times, serif;font-weight:400;color:#000;line-height:1.3}' +\n      '.psm-body{display:block;margin-bottom:24px;font-size:15px;line-height:1.6;color:#333}' +\n      '.psm-row{margin:12px 0}' +\n      '.psm-label{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:#333}' +\n      '.psm-input,.psm-select,.psm-text{width:100%;font-size:15px;padding:10px;border:1px solid #ccc;border-radius:0}' +\n      '.psm-content{width:100%}' +\n      '.psm-help{font-size:12px;color:#666;margin-top:4px}' +\n      '.psm-footer{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:0}' +\n      '.psm-btn{border:0;cursor:pointer;font-size:14px;padding:12px 24px;border-radius:0;font-weight:600;transition:opacity 0.2s;letter-spacing:0.5px;min-width:140px}' +\n      '.psm-primary{background:#0f2d52;color:#ffffff;order:1}' +\n      '.psm-cancel{background:transparent;color:#0f2d52;border:1px solid #0f2d52;order:2}' +\n      '.psm-btn[disabled],.psm-btn[aria-disabled=\"true\"]{cursor:not-allowed;opacity:0.7}' +\n      '.ps-modal--hide-cancel .psm-cancel{display:none}' +\n      '.psm-close{position:absolute;top:12px;right:12px;font-size:24px;border:0;background:transparent;color:#999;cursor:pointer;line-height:1}' +\n      '.psm-close .svg-wrapper{display:block;width:1em;height:1em}' +\n      '.psm-close .svg-wrapper>svg{display:block;width:100%;height:100%}' +\n      '.psm-error{color:#b91c1c;font-size:13px;margin-top:8px;display:none}' +\n      '.ps-modal--vehicle-details{overflow-y:auto;-webkit-overflow-scrolling:touch}' +\n      '.ps-modal--vehicle-details .psm-panel{max-width:804px;padding:54px 58px 48px;box-shadow:0 24px 60px rgba(0,0,0,0.18);margin:24px auto;box-sizing:border-box}' +\n      '.ps-modal--vehicle-details .psm-title{margin:0 0 22px;font-size:31px;line-height:1.18;color:#111}' +\n      '.ps-modal--vehicle-details .psm-body{margin-bottom:34px}' +\n      '.ps-modal--vehicle-details.ps-modal--with-product-context .psm-body{margin-bottom:0}' +\n      '.ps-modal--vehicle-details .psm-row{margin:0}' +\n      '.ps-modal--vehicle-details .psm-content{padding:0;border:0}' +\n      '.ps-modal--vehicle-details .psm-close{top:18px;right:24px;width:44px;height:44px;display:flex;align-items:center;justify-content:center;font-size:20px;color:#6f6f6f;font-weight:400}' +\n      '.ps-modal--vehicle-details .psm-close:hover,.ps-modal--vehicle-details .psm-close:focus-visible{color:#183455}' +\n      '.ps-modal--vehicle-details .psm-close:focus-visible{outline:2px solid currentColor;outline-offset:2px}' +\n      '.ps-modal--vehicle-details .psm-footer{justify-content:flex-end;gap:24px}' +\n      '.ps-modal--vehicle-details.ps-modal--with-product-context .psm-footer{margin-top:-116px;min-height:116px;align-items:center;flex-wrap:nowrap}' +\n      '.ps-modal--vehicle-details .psm-cancel{order:1;background:#ffffff;color:#183455;border:2px solid #183455}' +\n      '.ps-modal--vehicle-details .psm-primary{order:2;background:#183455;color:#ffffff;border:2px solid #183455}' +\n      '.ps-modal--vehicle-details .psm-btn{min-width:182px;padding:18px 28px;font-size:18px;letter-spacing:0.02em}' +\n      '.ps-modal--vehicle-details .psm-btn[disabled],.ps-modal--vehicle-details .psm-btn[aria-disabled=\"true\"]{background:#9a9a9a !important;border-color:#9a9a9a !important;color:#ffffff !important;opacity:1}' +\n      '.ps-modal--change-vehicle .psm-panel{max-width:820px}' +\n      '.ps-modal--change-vehicle .psm-title{margin-bottom:18px}' +\n      '.ps-modal--change-vehicle .psm-body{margin-bottom:28px}' +\n      '.ps-modal--change-vehicle .psm-footer{justify-content:flex-start}' +\n      '.ps-modal--change-vehicle .psm-primary{min-width:214px}' +\n      '.ps-modal--change-vehicle .psm-vehicle-field--make{margin-top:0}' +\n      '.ps-modal--change-vehicle .psm-vehicle-field--year{margin-top:16px}' +\n      '.psm-change-vehicle-copy{margin:0 0 28px;font-size:16px;line-height:1.45;color:#171717;max-width:660px}' +\n      '.ps-modal--factory-code .psm-panel{max-width:704px}' +\n      '.ps-modal--factory-code .psm-title{max-width:520px}' +\n      '.psm-factory-copy{margin:0 0 28px;max-width:540px;font-size:16px;line-height:1.55;color:#171717}' +\n      '.psm-factory-copy p{margin:0 0 18px}' +\n      '.psm-factory-copy p:last-child{margin-bottom:0}' +\n      '.psm-factory-copy a{color:#5d2b90;text-decoration:underline}' +\n      '.psm-factory-field{margin-top:0}' +\n      '.psm-single-stage-copy{max-width:560px}' +\n      '.psm-single-stage-options{display:block}' +\n      '.psm-single-stage-option{display:block;padding:18px 22px;border:2px solid #d7d7d7;margin-bottom:12px;cursor:pointer;font-size:18px;line-height:1.35;color:#1e1e1e}' +\n      '.psm-single-stage-option:last-child{margin-bottom:0}' +\n      '.psm-single-stage-radio{margin-right:10px;vertical-align:middle}' +\n      '.psm-single-stage-notice{margin-top:16px;padding:14px 16px;background:#fff8e1;border:1px solid #ffe082;font-size:14px;color:#6d4c00;line-height:1.5}' +\n      '.psm-product-context{display:flex;justify-content:flex-start;align-items:center;gap:18px;margin:24px 0 0}' +\n      '.ps-modal--vehicle-details.ps-modal--with-product-context .psm-product-context{min-height:116px;padding-right:232px;box-sizing:border-box}' +\n      '.psm-product-context__image-wrap{width:116px;max-width:32vw;padding:0;border:0;border-radius:0;background:transparent;box-sizing:border-box}' +\n      '.psm-product-context__image{display:block;width:100%;height:auto}' +\n      '.psm-product-context__copy{display:flex;align-items:center;min-width:0;max-width:calc(100% - 134px);min-height:116px;font-size:18px;line-height:1.45;color:#4f5d78}' +\n      '.psm-product-context__name{color:#2a3447;font-weight:600}' +\n      '.psm-vehicle-details{width:100%}' +\n      '.psm-vehicle-copy{margin:0 0 28px;font-size:16px;line-height:1.45;color:#171717;max-width:620px}' +\n      '.psm-vehicle-field{margin-top:16px}' +\n      '.psm-vehicle-field--year{margin-top:0}' +\n      '.psm-vehicle-select,.psm-vehicle-combobox-input{display:block;width:100%;height:74px;padding:0 56px 0 22px;border:2px solid #d7d7d7;background:#ffffff;color:#1e1e1e;font-size:18px;line-height:70px;-webkit-appearance:none;appearance:none;box-sizing:border-box}' +\n      '.psm-vehicle-combobox-input{padding-right:96px}' +\n      '.psm-vehicle-combobox-input::placeholder{color:#777777;opacity:1}' +\n      '.psm-vehicle-combobox-input--year{border-color:#183455;color:#183455;font-weight:600;box-shadow:inset 0 0 0 1px #183455}' +\n      '.psm-vehicle-combobox-input--year::placeholder{color:#183455;opacity:1;font-weight:600}' +\n      '.psm-vehicle-combobox-input--required{border-color:#183455;color:#183455;font-weight:600;box-shadow:inset 0 0 0 1px #183455}' +\n      '.psm-vehicle-combobox-input--required::placeholder{color:#183455;opacity:1;font-weight:600}' +\n      '.psm-vehicle-select--required{border-color:#183455;color:#183455;font-weight:600;box-shadow:inset 0 0 0 1px #183455}' +\n      '.psm-vehicle-select-wrap.is-required:after{border-color:#183455}' +\n      '.psm-vehicle-select::-ms-expand{display:none}' +\n      '.psm-vehicle-select[disabled],.psm-vehicle-combobox-input[disabled]{background:#f4f4f4;color:#9a9a9a}' +\n      '.psm-vehicle-select-wrap,.psm-vehicle-combobox{position:relative}' +\n      '.psm-vehicle-select-wrap:after,.psm-vehicle-combobox-toggle:before{content:\"\";position:absolute;right:22px;top:50%;width:10px;height:10px;border-right:3px solid #4c4c4c;border-bottom:3px solid #4c4c4c;transform:translateY(-65%) rotate(45deg)}' +\n      '.psm-vehicle-combobox--year .psm-vehicle-combobox-toggle:before{border-color:#183455}' +\n      '.psm-vehicle-combobox--required .psm-vehicle-combobox-toggle:before{border-color:#183455}' +\n      '.psm-vehicle-combobox.is-disabled .psm-vehicle-combobox-toggle:before{border-color:#9a9a9a}' +\n      '.psm-vehicle-combobox.is-disabled .psm-vehicle-combobox-clear{display:none !important}' +\n      '.psm-vehicle-combobox-clear{position:absolute;top:50%;right:58px;width:28px;height:28px;margin-top:-14px;border:0;background:transparent;padding:0;color:#4c4c4c;cursor:pointer;display:none}' +\n      '.psm-vehicle-combobox-clear-icon,.psm-vehicle-combobox-clear-icon .icon{display:block;width:14px;height:14px;margin:0 auto}' +\n      '.psm-vehicle-combobox-clear-icon .icon{transition:transform .15s ease}' +\n      '.psm-vehicle-combobox-clear:hover .icon{transform:scale(1.07)}' +\n      '.psm-vehicle-combobox--year .psm-vehicle-combobox-clear{color:#183455}' +\n      '.psm-vehicle-combobox--required .psm-vehicle-combobox-clear{color:#183455}' +\n      '.psm-vehicle-combobox-toggle{position:absolute;top:0;right:0;width:58px;height:74px;border:0;background:transparent;padding:0;cursor:pointer}' +\n      '.psm-vehicle-combobox-toggle[disabled]{cursor:not-allowed}' +\n      '.psm-vehicle-model-list{position:absolute;left:0;right:0;top:calc(100% - 2px);max-height:320px;overflow-y:auto;border:2px solid #d7d7d7;border-top:0;background:#ffffff;z-index:3}' +\n      '.psm-vehicle-year-list{border-color:#183455}' +\n      '.psm-vehicle-model-list[hidden]{display:none}' +\n      '.psm-vehicle-model-option{display:block;width:100%;padding:16px 22px;border:0;background:transparent;font-size:18px;line-height:1.25;color:#1e1e1e;text-align:left;cursor:pointer}' +\n      '.psm-vehicle-model-option.is-active,.psm-vehicle-model-option:hover{background:#f1f4f8}' +\n      '.psm-vehicle-model-option.is-selected,.psm-vehicle-model-option.is-selected.is-active{background:rgba(22,64,104,0.08);font-weight:600}' +\n      '.psm-vehicle-model-empty{padding:16px 22px;font-size:18px;line-height:1.25;color:#666666}' +\n      '.psm-vehicle-model-status{min-height:1.4em;margin-top:10px;font-size:14px;line-height:1.4;color:#4c4c4c}' +\n      '.psm-vehicle-model-status.is-error{color:#b91c1c}' +\n      '.psm-model-retry{margin-left:8px;padding:4px 8px;border:1px solid currentColor;background:#ffffff;color:inherit;cursor:pointer}' +\n      '.psm-vehicle-combobox.is-open .psm-vehicle-combobox-input{border-bottom-color:#ffffff}' +\n      '.psm-vehicle-combobox--year.is-open .psm-vehicle-combobox-input{border-color:#183455;border-bottom-color:#ffffff}' +\n      '.psm-vehicle-combobox.is-open .psm-vehicle-combobox-toggle:before{transform:translateY(-35%) rotate(225deg)}' +\n      '@media (max-width: 749px){' +\n      '.ps-modal--vehicle-details{align-items:flex-start}' +\n      '.ps-modal--vehicle-details .psm-panel{width:calc(100% - 24px);padding:32px 20px 24px;margin:12px 12px;max-height:calc(100vh - 24px);overflow-y:auto}' +\n      '.ps-modal--vehicle-details .psm-title{margin:0 40px 18px 0;font-size:28px}' +\n      '.ps-modal--vehicle-details .psm-close{top:10px;right:12px;width:40px;height:40px;font-size:18px}' +\n      '.ps-modal--vehicle-details .psm-body{margin-bottom:24px}' +\n      '.ps-modal--vehicle-details.ps-modal--with-product-context .psm-body{margin-bottom:24px}' +\n      '.ps-modal--vehicle-details .psm-footer{display:block;margin-top:0}' +\n      '.ps-modal--vehicle-details.ps-modal--with-product-context .psm-footer{margin-top:0;min-height:0}' +\n      '.ps-modal--vehicle-details .psm-btn{display:block;width:100%;min-width:0;padding:16px 20px;font-size:18px}' +\n      '.ps-modal--vehicle-details .psm-btn + .psm-btn{margin-top:12px}' +\n      '.ps-modal--vehicle-details.ps-modal--hide-cancel .psm-primary{margin-top:0}' +\n      '.psm-product-context{justify-content:flex-start;flex-direction:row;align-items:center;gap:14px;margin-top:18px;text-align:left}' +\n      '.psm-product-context__image-wrap{width:96px;max-width:44vw;padding:0;border-radius:0}' +\n      '.psm-product-context__copy{max-width:calc(100% - 110px);min-height:96px;font-size:17px}' +\n      '.psm-vehicle-select,.psm-vehicle-combobox-input{height:64px;line-height:60px;font-size:17px;padding:0 52px 0 18px}' +\n      '.psm-vehicle-combobox-input{padding-right:88px}' +\n      '.psm-vehicle-select-wrap:after,.psm-vehicle-combobox-toggle:before{right:20px}' +\n      '.psm-vehicle-combobox-clear{right:52px;width:26px;height:26px;margin-top:-13px}' +\n      '.psm-vehicle-combobox-clear-icon,.psm-vehicle-combobox-clear-icon .icon{width:12px;height:12px}' +\n      '.psm-vehicle-combobox-toggle{width:52px;height:64px}' +\n      '.psm-vehicle-model-option{padding:14px 18px;font-size:17px}' +\n      '.psm-vehicle-model-empty{padding:14px 18px;font-size:17px}' +\n      '.psm-vehicle-model-status{font-size:15px}' +\n      '.psm-single-stage-option{padding:16px 18px;font-size:17px}' +\n      '}' +\n      '@media (max-height: 760px){' +\n      '.ps-modal--vehicle-details{align-items:flex-start}' +\n      '.ps-modal--vehicle-details .psm-panel{margin-top:12px;margin-bottom:12px}' +\n      '}' +\n      'body.ps-modal-open{overflow:hidden}';\n\n    var d = ce('div'); d.innerHTML = html;\n    document.body.appendChild(d.firstChild);\n    var s = ce('style'); s.type = 'text/css';\n    if (s.styleSheet) s.styleSheet.cssText = css; else s.appendChild(document.createTextNode(css));\n    document.head.appendChild(s);\n  }\n\n  function ensure(){\n    if (root) return true;\n    ensureSelf();\n    root = q('#ps-modal'); if (!root) return false;\n    if (root.parentNode !== document.body) {\n      try { document.body.appendChild(root); } catch (_e) {}\n    }\n    setModalClass('');\n    panel = q('.psm-panel', root);\n    titleEl = q('#psm-title', root);\n    formEl = q('#psm-form', root);\n    okBtn = q('.psm-primary', root);\n    cancelBtn = q('.psm-cancel', root);\n    closeBtn = q('.psm-close', root);\n    errorEl = ce('div'); errorEl.className = 'psm-error'; errorEl.setAttribute('role', 'alert'); errorEl.setAttribute('aria-live', 'assertive'); errorEl.setAttribute('aria-atomic', 'true'); formEl.parentNode.insertBefore(errorEl, q('.psm-footer', root));\n    // handlers\n    cancelBtn.onclick = function(){ cancel('button'); }; \n    closeBtn.onclick = function(){ cancel('close'); };\n    root.addEventListener('click', function(e){ if (e.target === root || e.target.className === 'psm-backdrop') cancel('backdrop'); });\n    root.addEventListener('keydown', function(e){ var k=e.key||e.keyCode; if (k==='Escape'||k===27) { cancel('escape'); return; } trapFocus(e); });\n    formEl.addEventListener('submit', function(e){\n      e.preventDefault();\n      if (okBtn.disabled || okBtn.getAttribute('aria-disabled') === 'true') notifyPrimaryBlocked();\n      if (okBtn.disabled || okBtn.getAttribute('aria-disabled') === 'true') return;\n      confirm();\n    });\n    okBtn.addEventListener('click', function(e){\n      if (e && e.preventDefault) e.preventDefault();\n      if (okBtn.disabled || okBtn.getAttribute('aria-disabled') === 'true') notifyPrimaryBlocked();\n      if (okBtn.disabled || okBtn.getAttribute('aria-disabled') === 'true') return;\n      confirm();\n    });\n    return true;\n  }\n  function setPrimaryDisabled(disabled, reason){\n    if (!okBtn) return;\n    okBtn.disabled = !!disabled && !(opts && opts.onPrimaryBlocked);\n    okBtn.setAttribute('aria-disabled', disabled ? 'true' : 'false');\n    if (disabled && reason) okBtn.setAttribute('data-ps-modal-disabled-reason', reason);\n    else okBtn.removeAttribute('data-ps-modal-disabled-reason');\n  }\n  function notifyPrimaryBlocked(){\n    if (!opts || !opts.onPrimaryBlocked) return;\n    safeCall(opts.onPrimaryBlocked, okBtn && okBtn.getAttribute('data-ps-modal-disabled-reason') || 'primary_disabled');\n  }\n  function cancel(reason){\n    hideRoot();\n    if (resolver){ resolver({ ok:false, reason: reason || 'unknown' }); resolver = null; }\n  }\n  function confirm(){\n    var data = collectForm();\n    if (opts.onValidate){\n      var vr = safeCall(opts.onValidate, data) || { ok:true };\n      if (!vr.ok){\n        renderError(vr.message || 'Please check your input');\n        focusValidationTarget(vr);\n        return;\n      }\n    }\n    hideRoot();\n    if (resolver){ resolver({ ok:true, data:data }); resolver = null; }\n  }\n  function safeCall(fn, arg){ try{ return fn(arg); }catch(e){ return { ok:true }; } }\n  function renderError(msg){\n    if (!errorEl) return;\n    errorEl.textContent = msg || '';\n    errorEl.style.display = msg ? 'block' : 'none';\n  }\n  function collectForm(){\n    var out = {};\n    var els = formEl.querySelectorAll('[name]');\n    for (var i=0;i<els.length;i++){\n      var el = els[i]; var name = el.name;\n      if (!name) continue;\n      if (el.type === 'radio' && !el.checked) continue;\n      if (el.type === 'checkbox'){ out[name] = !!el.checked; }\n      else { out[name] = el.value; }\n    }\n    return out;\n  }\n  function addRow(label, inputEl, help){\n    var row = ce('div'); row.className = 'psm-row';\n    if (label){\n      var lab = ce('label'); lab.className='psm-label'; lab.textContent = label; row.appendChild(lab);\n    }\n    row.appendChild(inputEl);\n    if (help){\n      var helpEl = ce('div'); helpEl.className='psm-help'; helpEl.textContent = help; row.appendChild(helpEl);\n    }\n    formEl.appendChild(row);\n  }\n  function buildField(f){\n    var el;\n    if (f.type === 'select'){\n      el = ce('select'); el.className='psm-select'; el.name=f.name||'select';\n      var optsArr = f.options || [];\n      var first = ce('option'); first.value=''; first.text = f.placeholder || 'Select'; el.appendChild(first);\n      for (var i=0;i<optsArr.length;i++){\n        var o = optsArr[i]; var opt = ce('option');\n        if (typeof o === 'string'){ opt.value=o; opt.text=o; }\n        else { opt.value = o.value; opt.text = o.label || o.value; }\n        el.appendChild(opt);\n      }\n      if (f.value){ el.value = String(f.value); }\n      addRow(f.label, el, f.help);\n    } else if (f.type === 'text' || f.type === 'input'){\n      el = ce('input'); el.type='text'; el.className='psm-input'; el.name=f.name||'input';\n      if (f.placeholder) el.placeholder = f.placeholder;\n      if (f.value) el.value = f.value;\n      if (f.pattern) el.setAttribute('pattern', f.pattern);\n      addRow(f.label, el, f.help);\n    } else if (f.type === 'html'){\n      var wrap = ce('div'); wrap.className='psm-text'; wrap.innerHTML = f.html || '';\n      addRow(f.label, wrap, f.help);\n    } else {\n      // default text\n      el = ce('input'); el.type='text'; el.className='psm-input'; el.name=f.name||'input';\n      addRow(f.label, el, f.help);\n    }\n  }\n\n  function open(options){\n    var openGeneration;\n    if (!ensure()) return Promise.resolve({ ok:false });\n    modalOpenGeneration += 1;\n    openGeneration = modalOpenGeneration;\n    opts = options || {};\n    opener = document.activeElement;\n    clearForm(); renderError('');\n    setModalClass(opts.modalClass || '');\n    if (opts.hideCancel && root) root.className += ' ps-modal--hide-cancel';\n    titleEl.textContent = opts.title || '';\n    if (opts.fields && opts.fields.length){\n      for (var i=0;i<opts.fields.length;i++){ buildField(opts.fields[i]); }\n    }\n    if (opts.contentHtml){\n      var c = ce('div');\n      c.className = trimValue(opts.contentClass || 'psm-text') || 'psm-text';\n      c.innerHTML = opts.contentHtml;\n      addRow('', c);\n    }\n    okBtn.textContent = opts.okLabel || 'OK';\n    cancelBtn.textContent = opts.cancelLabel || 'Cancel';\n    if (opts.okAriaLabel) okBtn.setAttribute('aria-label', opts.okAriaLabel);\n    else okBtn.setAttribute('aria-label', opts.okLabel || 'Confirm modal action');\n    setPrimaryDisabled(false, '');\n    cancelBtn.style.display = opts.hideCancel ? 'none' : '';\n    cancelBtn.setAttribute('aria-hidden', opts.hideCancel ? 'true' : 'false');\n    cancelBtn.tabIndex = opts.hideCancel ? -1 : 0;\n    showRoot();\n    if (typeof opts.onOpen === 'function') safeCall(opts.onOpen, getModalApi());\n    window.setTimeout(function(){\n      if (openGeneration !== modalOpenGeneration) return;\n      if (!root || root.getAttribute('aria-hidden') === 'true') return;\n      focusInitialTarget();\n    }, 0);\n    return new Promise(function(resolve){ resolver = resolve; });\n  }\n\n  // sugar helpers\n  function promptSelect(cfg){\n    var list = cfg.options || [];\n    return open({\n      title: cfg.title || 'Select',\n      okLabel: cfg.okLabel || 'OK',\n      cancelLabel: cfg.cancelLabel || 'Cancel',\n      fields: [{\n        type:'select', name: cfg.name || 'value', label: cfg.label || '', options: list, value: cfg.value || '', placeholder: cfg.placeholder || 'Select'\n      }],\n      onValidate: function(data){\n        var v = data[cfg.name || 'value'];\n        return v ? { ok:true } : { ok:false, message: cfg.requiredMsg || 'Please select a value' };\n      }\n    });\n  }\n  function promptInput(cfg){\n    return open({\n      title: cfg.title || 'Enter value',\n      okLabel: cfg.okLabel || 'OK',\n      cancelLabel: cfg.cancelLabel || 'Cancel',\n      fields: [{\n        type:'text', name: cfg.name || 'value', label: cfg.label || '', value: cfg.value || '', placeholder: cfg.placeholder || '', pattern: cfg.pattern || null, help: cfg.help || ''\n      }],\n      onValidate: function(data){\n        var v = (data[cfg.name || 'value'] || '').trim();\n        if (!v) return { ok:false, message: cfg.requiredMsg || 'Value is required' };\n        if (cfg.validate){\n          var r = cfg.validate(v);\n          if (r && r.ok === false) return r;\n        }\n        return { ok:true };\n      }\n    });\n  }\n\n  PS.Modal = {\n    open: open,\n    promptSelect: promptSelect,\n    promptInput: promptInput,\n    hide: hideRoot,\n    getElements: getModalApi,\n    renderError: renderError\n  };\n})(window, document);\n"],
  "mappings": "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",
  "names": ["window", "document"]
}
