{
  "version": 3,
  "sources": ["/cdn/shop/t/39/assets/admin-os.js?orbit_build=V780.0.0"],
  "sourcesContent": ["(function(){const ORBIT_RELEASE=\"V830.0.0\";function installVendorPlannerV772Style(){if(document.getElementById(\"orbit-v772-manual-style\"))return;const el=document.createElement(\"style\");el.id=\"orbit-v772-manual-style\",el.textContent=\".orbit-vendor-planner-chip-v724 .orbit-vendor-planner-table-numbers-v772{display:block;font-size:13px;font-weight:700;line-height:1.45;color:#124a75;white-space:normal;overflow-wrap:anywhere;margin-top:3px}.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-manual-v772{display:inline-block;margin-top:7px;margin-bottom:1px;padding:5px 11px!important;min-height:30px!important;border-radius:7px!important;background:#eef6ff!important;color:#07466d!important;border:1px solid #9bc5ed!important;font-size:12px!important;font-weight:700!important;cursor:pointer}.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-manual-v772:hover,.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-manual-v772:focus-visible{background:#d9ecff!important;outline:2px solid #1374bb;outline-offset:2px}.orbit-vendor-planner-chip-v724.complete .orbit-vendor-planner-table-numbers-v772{color:#0b6347}\",document.head.appendChild(el)}function installVendorPlannerV773Style(){if(document.getElementById(\"orbit-v773-planner-style\"))return;const el=document.createElement(\"style\");el.id=\"orbit-v773-planner-style\",el.textContent=`/* V773 Table Plan only. Every rule scoped to the live contextual vendor rail or floor-plan canvas. */\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active>.orbit-vendor-planner-vendor-strip-v693{\n display:flex!important;flex-flow:row nowrap!important;align-items:center!important;\n gap:0!important;padding:2px 4px!important;min-width:0!important;width:100%!important;\n height:60px!important;min-height:60px!important;max-height:60px!important;\n box-sizing:border-box!important;background:#f7fafc!important;overflow:hidden!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active .orbit-vendor-planner-vendor-strip-heading-v693{display:none!important;}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray{\n display:flex!important;flex-flow:row nowrap!important;flex:1 1 100%!important;align-items:center!important;\n gap:5px!important;width:100%!important;max-width:100%!important;min-width:0!important;\n height:56px!important;max-height:56px!important;padding:2px 4px 4px!important;\n overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin!important;scrollbar-color:#b7c9d8 transparent!important;\n overscroll-behavior-x:contain!important;box-sizing:border-box!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724{\n display:flex!important;flex:0 0 auto!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;\n gap:6px!important;width:max-content!important;min-width:122px!important;max-width:235px!important;\n height:44px!important;min-height:44px!important;max-height:44px!important;\n padding:4px 6px 4px 9px!important;margin:0!important;box-sizing:border-box!important;\n border:1px solid #a9c7d9!important;border-radius:9px!important;\n background:#f6faff!important;color:#15324b!important;-webkit-text-fill-color:#15324b!important;\n box-shadow:none!important;text-align:left!important;overflow:hidden!important;cursor:grab!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724.complete{\n background:#e4f6ec!important;color:#123d2b!important;-webkit-text-fill-color:#123d2b!important;border-color:#81be9b!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724.partial{\n background:#fff6e4!important;color:#69430f!important;-webkit-text-fill-color:#69430f!important;border-color:#ddb86d!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724.is-selected-v723{\n outline:2px solid #176baf!important;outline-offset:-2px!important;box-shadow:0 0 0 2px #fff inset!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-chip-main-v724{\n display:flex!important;flex:0 1 auto!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;\n gap:3px!important;min-width:0!important;width:auto!important;max-width:180px!important;overflow:hidden!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-name-v773{\n display:block!important;flex:none!important;width:100%!important;min-width:0!important;max-width:100%!important;\n margin:0!important;padding:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;\n -webkit-line-clamp:unset!important;font-size:12px!important;line-height:15px!important;font-weight:850!important;\n color:inherit!important;-webkit-text-fill-color:currentColor!important;opacity:1!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-booking-sizes-v724{\n display:none!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-meta-v773{\n display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;\n gap:5px!important;min-width:0!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;\n font-size:10px!important;line-height:13px!important;font-weight:750!important;color:#365b74!important;-webkit-text-fill-color:#365b74!important;opacity:1!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724.complete .orbit-vendor-planner-meta-v773{\n color:#175d3d!important;-webkit-text-fill-color:#175d3d!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724.partial .orbit-vendor-planner-meta-v773{\n color:#794e17!important;-webkit-text-fill-color:#794e17!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-state-v724{\n display:inline!important;flex:0 0 auto!important;min-width:0!important;max-width:none!important;\n margin:0!important;padding:0!important;font-size:10px!important;line-height:13px!important;\n font-weight:850!important;color:inherit!important;-webkit-text-fill-color:currentColor!important;opacity:.95!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-table-numbers-v772{\n display:inline!important;flex:0 1 auto!important;max-width:150px!important;min-width:0!important;\n margin:0!important;padding:0!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;\n font-size:10.5px!important;line-height:13px!important;font-weight:800!important;\n color:inherit!important;-webkit-text-fill-color:currentColor!important;opacity:1!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724 .orbit-vendor-planner-table-numbers-v772 strong{\n display:inline!important;margin:0!important;padding:0!important;max-width:none!important;overflow:visible!important;\n font-size:10.5px!important;line-height:13px!important;font-weight:900!important;white-space:nowrap!important;\n -webkit-line-clamp:unset!important;color:inherit!important;-webkit-text-fill-color:currentColor!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724>button.orbit-vendor-planner-manual-v772{\n display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;\n width:31px!important;min-width:31px!important;max-width:31px!important;height:26px!important;min-height:26px!important;max-height:26px!important;\n margin:0!important;padding:0 3px!important;box-sizing:border-box!important;\n border:1px solid #176da6!important;border-radius:6px!important;\n background:#146f9f!important;background-image:none!important;color:#fff!important;-webkit-text-fill-color:#fff!important;\n font-family:inherit!important;font-size:10px!important;line-height:1!important;font-weight:850!important;\n box-shadow:none!important;cursor:pointer!important;text-shadow:none!important;\n}\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724>button.orbit-vendor-planner-manual-v772:hover,\n#orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724>button.orbit-vendor-planner-manual-v772:focus-visible{\n background:#07527f!important;color:#fff!important;-webkit-text-fill-color:#fff!important;\n border-color:#063d62!important;outline:2px solid #f3c54c!important;outline-offset:1px!important;\n}\n/* Purely visual marker refinements; coordinates and persisted geometry remain authoritative. */\n#vendorTablePlannerCanvas.orbit-vendor-plan-canvas.has-plan{\n min-height:0!important;height:auto!important;box-sizing:border-box!important;\n}\n#vendorTablePlannerCanvas.orbit-vendor-plan-canvas .orbit-vendor-table-marker{\n padding:0!important;box-sizing:border-box!important;min-width:0!important;min-height:0!important;\n overflow:visible!important;border-radius:3px!important;\n background:rgba(16,113,170,.07)!important;border:1px solid rgba(14,105,159,.74)!important;box-shadow:none!important;\n}\n#vendorTablePlannerCanvas.orbit-vendor-plan-canvas .orbit-vendor-table-marker.assigned{\n background:rgba(35,191,99,.24)!important;border:1px solid #10a658!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)!important;\n}\n#vendorTablePlannerCanvas.orbit-vendor-plan-canvas .orbit-vendor-table-marker > strong{\n position:absolute!important;left:50%!important;top:50%!important;\n transform:translate(-50%,-50%) rotate(var(--orbit-table-counter-rotation,0deg))!important;\n display:grid!important;place-items:center!important;\n width:auto!important;max-width:none!important;min-width:0!important;height:16px!important;min-height:16px!important;max-height:16px!important;\n padding:0 3px!important;margin:0!important;box-sizing:border-box!important;\n border:1px solid #fff!important;border-radius:4px!important;\n background:#1178ad!important;color:#fff!important;-webkit-text-fill-color:#fff!important;\n font-size:10px!important;line-height:14px!important;font-weight:900!important;letter-spacing:0!important;\n white-space:nowrap!important;text-shadow:none!important;box-shadow:0 1px 2px rgba(13,44,69,.18)!important;\n pointer-events:none!important;\n}\n#vendorTablePlannerCanvas.orbit-vendor-plan-canvas .orbit-vendor-table-marker.assigned > strong{\n background:#098544!important;color:#fff!important;-webkit-text-fill-color:#fff!important;\n}\n/* Venue editor must use the same image-and-coordinate frame as the event planner.\n   Previous 760px editor min-height plus background-size:contain letterboxed the\n   source image while markers used the full element as their 0-100% coordinate frame. */\n#vendorFloorPlanPreview.orbit-vendor-plan-editor-canvas{\n min-height:0!important;height:auto!important;max-height:none!important;\n background-size:100% 100%!important;background-position:center center!important;background-repeat:no-repeat!important;\n box-sizing:border-box!important;\n}\n#vendorFloorPlanPreview.orbit-vendor-plan-editor-canvas .orbit-vendor-table-marker > strong{\n left:50%!important;top:50%!important;\n transform:translate(-50%,-50%) rotate(var(--orbit-table-counter-rotation,0deg))!important;\n}\n@media(max-width:800px){\n #orbitAdminSidebar #orbitTablePlannerSubnavSlotV726.active #vendorPlannerVendorTray>div.orbit-vendor-planner-chip-v724{\n  min-width:120px!important;max-width:195px!important;\n }\n}\n`,document.head.appendChild(el)}const ORBIT_ADMIN_BUILD=\"admin-canonical-v632-vendor-club-finish-20260925\",ORBIT_ADMIN_SCRIPT_URL=document.currentScript&&document.currentScript.src||\"unknown-script-url\",existingAdminRuntime=window.__ORBIT_ADMIN_RUNTIME_CANONICAL__;function showRuntimeConflict(existing){const render=function(){const canary=document.getElementById(\"orbitCanonicalAdminCanary\"),owner=existing&&typeof existing==\"object\"?JSON.stringify(existing):String(existing);canary&&(canary.textContent=\"ADMIN RUNTIME CONFLICT \\u2014 canonical admin-os.js was blocked by an earlier guard claimant: \"+owner,canary.style.background=\"#ffe1e1\",canary.style.borderColor=\"#b42318\",canary.style.color=\"#8a1710\")};document.readyState===\"loading\"?document.addEventListener(\"DOMContentLoaded\",render,{once:!0}):render()}if(existingAdminRuntime){showRuntimeConflict(existingAdminRuntime);return}window.__ORBIT_ADMIN_RUNTIME_CANONICAL__={asset:\"admin-os.js\",release:ORBIT_RELEASE,build:ORBIT_ADMIN_BUILD,scriptUrl:ORBIT_ADMIN_SCRIPT_URL,claimedAt:new Date().toISOString()};const API_BASE=\"https://orbit-membership-service.onrender.com\",params=new URLSearchParams(window.location.search),secret=params.get(\"secret\")||\"\";let adminSessionTokenV329=\"\";try{adminSessionTokenV329=sessionStorage.getItem(\"orbitAdminSessionV329\")||\"\"}catch{}let adminCurrentUserV329=null,adminRuntimeStartedV329=!1,adminRuntimeTimersStartedV329=!1,orbitStartupModuleV329=\"dashboard\",homeNoticeTimerV834=null;const ORBIT_ADMIN_RELEASE_PARAM=\"orbit_admin_release\";function orbitAdminReleaseAddressedUrlV359(release,{forceRefresh=!1}={}){const target=new URL(window.location.href);return target.searchParams.set(ORBIT_ADMIN_RELEASE_PARAM,String(release||ORBIT_RELEASE)),forceRefresh?target.searchParams.set(\"orbit_admin_refresh\",String(Date.now())):target.searchParams.delete(\"orbit_admin_refresh\"),target}function renderAdminDocumentCacheFailureV359(backendRelease){const render=function(){const canary=document.getElementById(\"orbitCanonicalAdminCanary\");canary&&(canary.textContent=\"ADMIN VERSION MISMATCH \\u2014 loaded Admin \"+ORBIT_RELEASE+\"; backend \"+backendRelease+\". A refresh still shows different versions. A backend-only release or stale theme/cache may explain this.\",canary.style.background=\"#ffe1e1\",canary.style.borderColor=\"#b42318\",canary.style.color=\"#8a1710\")};document.readyState===\"loading\"?document.addEventListener(\"DOMContentLoaded\",render,{once:!0}):render()}function normaliseAdminReleaseV793(release){const match=String(release||\"\").trim().match(/^V?(\\d+\\.\\d+\\.\\d+)$/);return match?\"V\"+match[1]:\"\"}function renderAuthoritativeAdminReleaseV632(release){const value=normaliseAdminReleaseV793(release);if(!value)return;const chip=document.getElementById(\"orbitAdminVersionChip\");chip&&(chip.textContent=value,chip.dataset.liveRelease=value);const mark=document.getElementById(\"orbitAdminReleaseMark\");mark&&(mark.textContent=value.replace(/^V/,\"\"),mark.setAttribute(\"aria-label\",\"Orbit OS \"+value),mark.title=\"Orbit OS \"+value)}// V829: the release check must work across the real storefront/API CORS boundary.\nlet adminReleaseRequestV829=null,adminReleaseNoticeCheckedAtV829=Date.now();\nasync function readAuthoritativeAdminReleaseV829({fresh=false}={}){\n  if(adminReleaseRequestV829){\n    const existing=adminReleaseRequestV829;if(!fresh)return existing;\n    await existing;if(adminReleaseRequestV829===existing)adminReleaseRequestV829=null;\n    if(adminReleaseRequestV829)return adminReleaseRequestV829;\n  }\n  const controller=new AbortController(),timer=setTimeout(()=>controller.abort(),10000);\n  const pending=(async()=>{\n    try{\n      const response=await fetch(API_BASE+'/runtime-version?admin_release_identity='+Date.now(),{cache:'no-store',signal:controller.signal});\n      if(!response.ok)return '';\n      const payload=await response.json();\n      return normaliseAdminReleaseV793(payload?.version||payload?.releaseVersion||payload?.orbitVersion);\n    }catch{return '';}finally{clearTimeout(timer);}\n  })();\n  adminReleaseRequestV829=pending;\n  try{return await pending;}finally{if(adminReleaseRequestV829===pending)adminReleaseRequestV829=null;}\n}\nasync function hydrateAuthoritativeAdminReleaseV632(){\n  const release=await readAuthoritativeAdminReleaseV829();\n  if(release)renderAuthoritativeAdminReleaseV632(release);\n}\nasync function ensureAdminDocumentReleaseV359(){\n  try{\n    const backendRelease=await readAuthoritativeAdminReleaseV829();\n    if(!backendRelease)return;\n    renderAuthoritativeAdminReleaseV632(backendRelease);\n    if(window.__ORBIT_ADMIN_RELEASE_NAVIGATION_V793__)return;\n    const addressed=params.get(ORBIT_ADMIN_RELEASE_PARAM)||'';\n    if(backendRelease!==ORBIT_RELEASE){\n      if(window.__ORBIT_ADMIN_DIRTY_INPUT_V829__){showAdminReleaseUpdateV829(backendRelease);return;}\n      const loopKey='orbitAdminDocumentRefreshV359:'+backendRelease;\n      let alreadyTried=false;try{alreadyTried=sessionStorage.getItem(loopKey)==='1';}catch{}\n      if(addressed===backendRelease&&(alreadyTried||params.has('orbit_admin_refresh'))){renderAdminDocumentCacheFailureV359(backendRelease);return;}\n      try{sessionStorage.setItem(loopKey,'1');}catch{}\n      window.__ORBIT_ADMIN_RELEASE_NAVIGATION_V793__=true;\n      window.location.replace(orbitAdminReleaseAddressedUrlV359(backendRelease,{forceRefresh:addressed===backendRelease}).toString());\n      return;\n    }\n    if(addressed!==ORBIT_RELEASE){const target=orbitAdminReleaseAddressedUrlV359(ORBIT_RELEASE);window.history.replaceState(window.history.state,'',target.pathname+target.search+target.hash);}\n    try{sessionStorage.removeItem('orbitAdminDocumentRefreshV359:'+ORBIT_RELEASE);}catch{}\n  }catch(error){console.warn('Admin document release check failed:',error.message||error);}\n}\nfunction showAdminReleaseUpdateV829(release){\n  const value=normaliseAdminReleaseV793(release);\n  if(!value||value===ORBIT_RELEASE){document.getElementById('orbitAdminReleaseUpdateV829')?.remove();return;}\n  let notice=document.getElementById('orbitAdminReleaseUpdateV829');\n  if(!notice){\n    notice=document.createElement('aside');notice.id='orbitAdminReleaseUpdateV829';notice.className='orbit-admin-release-update-v829';notice.setAttribute('role','status');notice.setAttribute('aria-live','polite');\n    const copy=document.createElement('span'),button=document.createElement('button');copy.dataset.releaseUpdateCopy='';button.type='button';button.textContent='Reload Orbit OS';\n    button.addEventListener('click',()=>{\n      const target=normaliseAdminReleaseV793(notice.dataset.release);if(!target)return;\n      window.__ORBIT_ADMIN_RELEASE_NAVIGATION_V793__=true;\n      window.location.replace(orbitAdminReleaseAddressedUrlV359(target,{forceRefresh:params.get(ORBIT_ADMIN_RELEASE_PARAM)===target}).toString());\n    });\n    notice.append(copy,button);document.body.appendChild(notice);\n  }\n  notice.dataset.release=value;\n  notice.querySelector('[data-release-update-copy]').textContent='Orbit OS '+value+' is available. Save your work, then reload to use the updated pages.';\n}\nasync function checkAdminReleaseUpdateV829(){\n  if(document.visibilityState==='hidden'||Date.now()-adminReleaseNoticeCheckedAtV829<60000)return;\n  adminReleaseNoticeCheckedAtV829=Date.now();\n  const release=await readAuthoritativeAdminReleaseV829();\n  if(!release)return;\n  renderAuthoritativeAdminReleaseV632(release);showAdminReleaseUpdateV829(release);\n}\nif(!window.__ORBIT_ADMIN_DIRTY_WATCH_V829__){window.__ORBIT_ADMIN_DIRTY_WATCH_V829__=true;document.addEventListener('input',event=>{if(event.isTrusted)window.__ORBIT_ADMIN_DIRTY_INPUT_V829__=true;},true);}\nwindow.addEventListener('orbit-admin-release-available',event=>showAdminReleaseUpdateV829(event.detail));\nwindow.addEventListener('focus',checkAdminReleaseUpdateV829);\ndocument.addEventListener('visibilitychange',checkAdminReleaseUpdateV829);\nensureAdminDocumentReleaseV359();\nif(document.readyState==='loading')document.addEventListener('DOMContentLoaded',hydrateAuthoritativeAdminReleaseV632,{once:true});else hydrateAuthoritativeAdminReleaseV632();\ndocument.addEventListener(\"DOMContentLoaded\",function(){document.querySelectorAll(\"[data-orbit-scanner-link]\").forEach(function(link){link.href=API_BASE+\"/scanner?secret=\"+encodeURIComponent(secret)})});function renderCanonicalRuntimeDiagnostic(){const canary=document.getElementById(\"orbitCanonicalAdminCanary\");if(canary){canary.textContent=\"Runtime verified \\xB7 \"+ORBIT_RELEASE,canary.title=\"ADMIN CANONICAL RUNTIME VERIFIED \\u2014 \"+ORBIT_RELEASE+\" \\xB7 assets/admin-os.js executing\",canary.style.cssText=\"display:inline-flex!important;position:static!important;inset:auto!important;width:auto!important;max-width:100%!important;padding:6px 9px!important;margin:0!important;border:1px solid #a8ddbc!important;border-radius:8px!important;background:#eaf8ef!important;color:#17613a!important;font:700 11px/1.2 Arial,sans-serif!important;text-align:left!important;box-shadow:none!important;visibility:visible!important;opacity:1!important;z-index:auto!important;\";const homeStatus=document.querySelector(\".orbit-home-header .orbit-command-status\");homeStatus&&canary.parentElement!==homeStatus&&homeStatus.appendChild(canary)}const runtime=window.__ORBIT_ADMIN_RUNTIME_CANONICAL__||{},setRuntimeField=(id,value)=>{const el=document.getElementById(id);el&&(el.value=String(value||\"\\u2014\"))};setRuntimeField(\"orbitAdminRuntimeAsset\",runtime.asset||\"admin-os.js\"),setRuntimeField(\"orbitAdminRuntimeRelease\",runtime.release||ORBIT_RELEASE),setRuntimeField(\"orbitAdminRuntimeBuild\",runtime.build||ORBIT_ADMIN_BUILD),setRuntimeField(\"orbitAdminRuntimeUrl\",runtime.scriptUrl||ORBIT_ADMIN_SCRIPT_URL),setRuntimeField(\"orbitAdminRuntimeGuard\",JSON.stringify(runtime))}document.readyState===\"loading\"?document.addEventListener(\"DOMContentLoaded\",renderCanonicalRuntimeDiagnostic,{once:!0}):renderCanonicalRuntimeDiagnostic();const state={currentModule:\"dashboard\",currentMemberView:\"active\",adminAuthenticated:!1,acceptanceReadyCount:0,acceptanceHeldCount:0,operationsTaskCount:0,homeNotice:{message:\"Orbit OS loaded with live backend data.\",isError:!1},summary:null,fulfilmentCentre:null,fulfilment:null,shippingConfig:null,draws:null,golden:null,events:null,scheduler:null,communications:null,communicationTemplates:null,selectedTemplateKey:null,eventbrite:null,attendance:null,attendanceDetail:null,testMember:null,health:null,shopify:null,ticketCheckouts:null,supportInbox:null,currentSupportTicketId:null,specialShipments:null,shippingCostEstimate:null,eventPlanningEntriesV485:[],eventPlanningMonthV485:new Date(new Date().getFullYear(),new Date().getMonth(),1),eventPlanningLoadedV485:!1,vendorBriefingBatchJobV487:null,vendorBriefingBatchPollTimerV487:null};function $2(id){return document.getElementById(id)}function esc(value){return String(value??\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\").replace(/\"/g,\"&quot;\").replace(/'/g,\"&#039;\")}function text(id,value){const el=$2(id);el&&(el.textContent=value==null?\"\\u2014\":String(value))}function setCountBadge(id,value){const el=$2(id);if(!el)return;const count=Math.max(0,Number(value)||0);el.textContent=count>0?String(count):\"\",el.dataset.count=String(count),el.hidden=count===0,el.setAttribute(\"aria-hidden\",count===0?\"true\":\"false\")}function prettyDate(value){if(!value)return\"\\u2014\";const date=new Date(value);return Number.isNaN(date.getTime())?value:date.toLocaleString(\"en-GB\",{day:\"2-digit\",month:\"short\",year:\"numeric\",hour:\"2-digit\",minute:\"2-digit\"})}function money(value){const number=Number(value);return Number.isFinite(number)?\"\\xA3\"+number.toFixed(2):\"\\u2014\"}function humanStatus(value,fallback=\"Not recorded\"){const raw=String(value==null||value===\"\"?fallback:value).trim(),key=raw.toLowerCase();return{awaiting_claim:\"Legacy claim state\",not_required:\"No claim required\",awaiting_dispatch:\"Awaiting Dispatch\",awaiting_label:\"Awaiting Label\",ready_for_label:\"Ready for Label\",broadcast_and_email_sent:\"Broadcast + email sent\",broadcast_sent:\"Broadcast sent\",email_sent:\"Email sent\",attention_required:\"Needs Attention\",label_generated:\"Label Ready\",labelled:\"Label Ready\",needs_attention:\"Needs Attention\",partially_verified:\"Partially Verified\",fulfilled:\"Dispatched\",shipped:\"Dispatched\",dispatched:\"Dispatched\",delivered:\"Delivered\",drawn:\"Winner Selected\",completed:\"Completed\",approved:\"Approved\",pending:\"Pending\",active:\"Active\",failed:\"Failed\"}[key]||raw.replace(/_/g,\" \").replace(/\\b\\w/g,function(character){return character.toUpperCase()})}function transientWorkspaceFetchFailureV553(error){const message=String(error?.message||error||\"\");return error instanceof TypeError||/networkerror|failed to fetch|network request|load failed/i.test(message)}async function loadWorkspace(name,loader){let lastError=null;for(let attempt=0;attempt<2;attempt+=1)try{return await loader(),{name,ok:!0,retried:attempt>0}}catch(error){if(lastError=error,attempt===0&&transientWorkspaceFetchFailureV553(error)){await new Promise(resolve=>setTimeout(resolve,350));continue}break}return console.error(\"Orbit Admin workspace failed:\",name,lastError),{name,ok:!1,error:lastError}}function prettyShortDate(value){if(!value)return\"\\u2014\";const date=new Date(value);return Number.isNaN(date.getTime())?value:date.toLocaleString(\"en-GB\",{day:\"2-digit\",month:\"short\",hour:\"2-digit\",minute:\"2-digit\"})}function checkoutStatusClass(status){return status===\"fulfilled\"?\"good\":String(status||\"\").includes(\"failed\")||String(status||\"\").includes(\"error\")?\"bad\":\"\"}function checkoutStatusLabel(row){return row.status===\"fulfilled\"?\"fulfilled\":row.status===\"fulfilment_in_progress\"?\"issuing tickets\":row.lastSyncError?\"needs attention\":row.status||\"unknown\"}function currentMonthKey(){const now=new Date;return now.getUTCFullYear()+\"-\"+String(now.getUTCMonth()+1).padStart(2,\"0\")}function setNotice2(message,isError){const notice=$2(\"adminNotice\");if(!notice)return;window.clearTimeout(homeNoticeTimerV834),state.currentModule===\"dashboard\"&&(state.homeNotice={message:String(message||\"\"),isError:!!isError});const globalError=$2(\"orbitGlobalErrorNotice\");globalError&&(globalError.hidden=!0,globalError.classList.remove(\"visible\"),globalError.textContent=\"\");const openDialog=document.querySelector(\"dialog[open]\");if(openDialog){let local=openDialog.querySelector(\".orbit-dialog-error-v418\");if(isError){if(!local){local=document.createElement(\"div\"),local.className=\"orbit-dialog-error-v418\",local.setAttribute(\"role\",\"alert\");const heading=openDialog.querySelector(\".orbit-dialog-heading, h2, .orbit-kicker\");heading?.parentNode?heading.parentNode.insertBefore(local,heading.nextSibling):openDialog.prepend(local)}local.textContent=String(message||\"Something needs attention\"),local.hidden=!1}else local&&(local.hidden=!0,local.textContent=\"\")}notice.textContent=message,notice.classList.toggle(\"error\",!!isError),notice.classList.remove(\"orbit-notice-fading\",\"orbit-notice-collapsed\"),notice.title=String(message||\"\")}function restoreHomeNotice(){const notice=$2(\"adminNotice\");notice&&notice.classList.remove(\"orbit-notice-fading\",\"orbit-notice-collapsed\")}function setActionResult(message,isError){const target=$2(\"commandActionResult\")||$2(\"workflowResult\");target&&(target.tagName===\"PRE\"?target.textContent=message:(target.textContent=message,target.classList.toggle(\"error\",!!isError)))}function setOrdersResult(message,isError){const target=$2(\"shippingQueueResult\");target&&(target.hidden=!1,target.textContent=message||\"Orders action completed.\",target.classList.toggle(\"error\",!!isError))}function setMonthStartOrdersResult(message,isError){const target=$2(\"latestMonthStartOrdersResult\");target&&(target.hidden=!1,target.textContent=message||\"Latest Month Start summary will appear here.\",target.classList.toggle(\"error\",!!isError))}const adminWorkspaceConfig={home:{title:\"Home\",description:\"What needs your attention today\",defaultModule:\"dashboard\"},customers:{title:\"Members\",description:\"Member management and support\",defaultModule:\"members\",businessWorkspace:\"members-club\"},sales:{title:\"Tickets\",description:\"Ticket orders and promo codes\",defaultModule:\"shopify\",businessWorkspace:\"card-shows\"},\"card-shopify\":{title:\"Shopify\",description:\"Orbit Card Show store, products, inventory and website management\",defaultModule:\"card-shopify\",preferredTab:\"overview\",businessWorkspace:\"card-shows\"},events:{title:\"Events\",description:\"Event records and show management\",defaultModule:\"events\",preferredTab:\"eventbrite\",businessWorkspace:\"card-shows\"},calendar:{title:\"Calendar\",description:\"Show schedule and planning calendar\",defaultModule:\"events\",preferredTab:\"calendar\",businessWorkspace:\"card-shows\"},attendance:{title:\"Attendance\",description:\"Live and historical attendance reporting\",defaultModule:\"events\",preferredTab:\"attendance\",businessWorkspace:\"card-shows\"},scanner:{title:\"Scanner\",description:\"Door-entry scanner\",defaultModule:\"scanner-admin\",businessWorkspace:\"card-shows\"},directory:{title:\"Directory\",description:\"Directory records, review and publication\",defaultModule:\"directory\",preferredTab:\"events\",businessWorkspace:\"directory\"},\"directory-control\":{title:\"Control Centre\",description:\"Manual Directory agents, pipeline forensics and live spend\",defaultModule:\"directory\",preferredTab:\"control\",businessWorkspace:\"directory\"},\"directory-sources\":{title:\"Sources\",description:\"Approved discovery sources and human review queue\",defaultModule:\"directory\",preferredTab:\"sources\",businessWorkspace:\"directory\"},\"directory-sponsorship\":{title:\"Sponsorship\",description:\"Directory sponsor bookings and display assets\",defaultModule:\"directory\",preferredTab:\"sponsors\",businessWorkspace:\"directory\"},\"directory-organisers\":{title:\"Organiser Access\",description:\"Verified organiser claims and access\",defaultModule:\"directory\",preferredTab:\"organisers\",businessWorkspace:\"directory\"},\"directory-media\":{title:\"Directory Media\",description:\"CardShowIndex images and managed directory assets\",defaultModule:\"media\",businessWorkspace:\"directory\"},vendors:{title:\"Vendors\",description:\"Vendor customers and booking changes\",defaultModule:\"vendors\",preferredTab:\"customers\",businessWorkspace:\"card-shows\"},\"vendor-live\":{title:\"Show Plan\",description:\"Plan and manage vendor bookings by upcoming event\",defaultModule:\"vendors\",preferredTab:\"live\",businessWorkspace:\"card-shows\"},\"table-planner\":{title:\"Table Plan\",description:\"Table allocations and floor plans\",defaultModule:\"vendors\",preferredTab:\"planner\",businessWorkspace:\"card-shows\"},venues:{title:\"Venues\",description:\"Venue records and show locations\",defaultModule:\"vendors\",preferredTab:\"venues\",businessWorkspace:\"card-shows\"},fulfil:{title:\"Fulfilment\",description:\"Parcels, labels and dispatch\",defaultModule:\"shipping\",businessWorkspace:\"members-club\"},\"box-inventory\":{title:\"Box Accounting\",description:\"Members Club inventory, costs and fulfilment profitability\",defaultModule:\"box-inventory\",businessWorkspace:\"members-club\"},draws:{title:\"Prizes\",description:\"Monthly draws and Golden Tickets\",defaultModule:\"automation\",preferredTab:\"current\",businessWorkspace:\"members-club\"},loyalty:{title:\"Loyalty\",description:\"Live rewards, drafts, stock and redemption history\",defaultModule:\"loyalty\",preferredTab:\"live\",businessWorkspace:\"members-club\"},\"member-store\":{title:\"Store\",description:\"Exclusive member products and orders\",defaultModule:\"member-store\",preferredTab:\"overview\",businessWorkspace:\"members-club\"},\"orbit-chase\":{title:\"Orbit Chase\",description:\"Member-only Chases, entries and verification\",defaultModule:\"member-store\",preferredTab:\"draws\",businessWorkspace:\"members-club\"},\"poke-alerts\":{title:\"Pok\\xE9 Alerts\",description:\"Pok\\xE9mon stock intelligence, retailer health and notifications\",defaultModule:\"member-store\",preferredTab:\"poke-alerts\",businessWorkspace:\"members-club\"},support:{title:\"Support\",description:\"Member support requests and replies\",defaultModule:\"support\",businessWorkspace:\"members-club\"},\"vendor-support\":{title:\"Support\",description:\"Vendor Club support inbox and replies\",defaultModule:\"vendors\",preferredTab:\"club-support\",businessWorkspace:\"card-shows\"},sms:{title:\"SMS\",description:\"SMS connection and delivery settings\",defaultModule:\"member-store\",preferredTab:\"sms\",businessWorkspace:\"development\"},communications:{title:\"Email\",description:\"Workspace email inbox, templates and delivery history\",defaultModule:\"comms\",preferredTab:\"inbox\"},\"gmail-hub\":{title:\"Personal Assistant (legacy link)\",description:\"Open your AI assistant\",defaultModule:\"gmail-hub\",preferredTab:\"home\",businessWorkspace:\"communications\"},\"pa-home\":{title:\"Home\",description:\"Your important actions, already prepared\",defaultModule:\"gmail-hub\",preferredTab:\"home\",businessWorkspace:\"communications\"},\"pa-mail\":{title:\"Mailboxes\",description:\"Personal and Business email, kept separate\",defaultModule:\"gmail-hub\",preferredTab:\"mail\",businessWorkspace:\"communications\"},\"pa-cases\":{title:\"Case Tracker\",description:\"Letters, evidence, chronology, deadlines and next actions\",defaultModule:\"gmail-hub\",preferredTab:\"cases\",businessWorkspace:\"communications\"},\"pa-tasks\":{title:\"Actions\",description:\"Personal and Business work which genuinely needs your input\",defaultModule:\"gmail-hub\",preferredTab:\"tasks\",businessWorkspace:\"communications\"},\"pa-calendar\":{title:\"Calendar\",description:\"Shared Personal and Business deadlines\",defaultModule:\"gmail-hub\",preferredTab:\"calendar\",businessWorkspace:\"communications\"},\"pa-settings\":{title:\"Settings\",description:\"Accounts, Gmail rules and background processing\",defaultModule:\"gmail-hub\",preferredTab:\"accounts\",businessWorkspace:\"communications\"},\"member-broadcasts\":{title:\"Broadcasts\",description:\"Member announcements, drafts and history\",defaultModule:\"engagement\",preferredTab:\"broadcasts\",businessWorkspace:\"members-club\"},\"member-newsletters\":{title:\"Newsletters\",description:\"Newsletter studio, subscribers and delivery\",defaultModule:\"engagement\",preferredTab:\"newsletters\",businessWorkspace:\"members-club\"},marketing:{title:\"Event Marketing\",description:\"Advertising intelligence, reconciliation and event costs\",defaultModule:\"advertising\",businessWorkspace:\"card-shows\"},performance:{title:\"Analytics\",description:\"Card Shows analytics for orbitshowtickets.co.uk\",defaultModule:\"performance\",businessWorkspace:\"card-shows\"},\"member-analytics\":{title:\"Analytics\",description:\"Members Club analytics for orbitcollectorsclub.com\",defaultModule:\"performance\",businessWorkspace:\"members-club\"},\"directory-analytics\":{title:\"Analytics\",description:\"CardShowIndex analytics, Search Console and SEO measurement\",defaultModule:\"directory\",preferredTab:\"analytics\",businessWorkspace:\"directory\"},content:{title:\"Content\",description:\"Members Club website images and media\",defaultModule:\"website-images\",businessWorkspace:\"members-club\"},intelligence:{title:\"Intelligence\",description:\"Engineering findings, investigations and AI execution\",defaultModule:\"intelligence\",preferredTab:\"overview\",businessWorkspace:\"development\"},knowledge:{title:\"Knowledge\",description:\"Orbit handbook and engineering manual\",defaultModule:\"intelligence\",preferredTab:\"knowledge\",businessWorkspace:\"development\"},incidents:{title:\"Incidents\",description:\"Recorded engineering and deployment incidents\",defaultModule:\"intelligence\",preferredTab:\"incidents\",businessWorkspace:\"development\"},\"protected-systems\":{title:\"Protected\",description:\"Protected workflows, proof rules and guardrails\",defaultModule:\"intelligence\",preferredTab:\"protected-systems\",businessWorkspace:\"development\"},agents:{title:\"Agents\",description:\"All Orbit agents grouped by business workspace\",defaultModule:\"intelligence\",preferredTab:\"agents\",businessWorkspace:\"development\"},\"ask-orbit\":{title:\"Ask Orbit\",description:\"Ask about anything in Orbit; this workspace is only context\",defaultModule:\"intelligence\",preferredTab:\"assistant\"},\"influencer-home\":{title:\"Influencer Engine\",description:\"PokeMaya content command centre\",defaultModule:\"influencer-engine\",preferredTab:\"home\",businessWorkspace:\"influencer-engine\"},\"influencer-market\":{title:\"Market Intelligence\",description:\"Verified Pok\u00E9mon market signals and story opportunities\",defaultModule:\"influencer-engine\",preferredTab:\"market\",businessWorkspace:\"influencer-engine\"},\"influencer-stories\":{title:\"Story Queue\",description:\"PokeMaya ideas, evidence and production status\",defaultModule:\"influencer-engine\",preferredTab:\"stories\",businessWorkspace:\"influencer-engine\"},\"influencer-production\":{title:\"Production\",description:\"Script, voice, render, edit and QA pipeline\",defaultModule:\"influencer-engine\",preferredTab:\"production\",businessWorkspace:\"influencer-engine\"},\"influencer-assets\":{title:\"PokeMaya Assets\",description:\"Locked Maya identity and genuine source assets\",defaultModule:\"influencer-engine\",preferredTab:\"assets\",businessWorkspace:\"influencer-engine\"},\"influencer-publishing\":{title:\"Publishing\",description:\"Human-approved ready and published content\",defaultModule:\"influencer-engine\",preferredTab:\"publishing\",businessWorkspace:\"influencer-engine\"},\"influencer-performance\":{title:\"Performance\",description:\"Published content results and feedback loop\",defaultModule:\"influencer-engine\",preferredTab:\"performance\",businessWorkspace:\"influencer-engine\"},\"influencer-settings\":{title:\"Connections\",description:\"Influencer Engine provider and asset connections\",defaultModule:\"influencer-engine\",preferredTab:\"settings\",businessWorkspace:\"influencer-engine\"},development:{title:\"Development\",description:\"Issues, roadmap and release history\",defaultModule:\"development\",businessWorkspace:\"development\"},finance:{title:\"Finance\",description:\"Past-event income, costs and profit or loss\",defaultModule:\"finance\",businessWorkspace:\"card-shows\"},system:{title:\"System\",description:\"Connections, delivery and testing\",defaultModule:\"settings\",businessWorkspace:\"development\"}},moduleWorkspaceMap={dashboard:\"home\",operations:\"home\",members:\"customers\",support:\"customers\",shopify:\"sales\",\"card-shopify\":\"card-shopify\",events:\"events\",\"scanner-admin\":\"scanner\",directory:\"directory\",vendors:\"vendors\",\"vendor-history\":\"vendors\",shipping:\"fulfil\",fulfilment:\"fulfil\",\"box-inventory\":\"box-inventory\",automation:\"draws\",loyalty:\"loyalty\",\"member-store\":\"member-store\",engagement:\"communications\",comms:\"communications\",support:\"support\",advertising:\"marketing\",performance:\"performance\",reports:\"performance\",seo:\"performance\",\"ad-performance\":\"performance\",\"analytics-overview\":\"performance\",\"analytics-sales\":\"performance\",\"analytics-google\":\"performance\",\"analytics-meta\":\"performance\",content:\"content\",\"golden-schedule\":\"draws\",media:\"content\",\"website-images\":\"content\",intelligence:\"intelligence\",\"influencer-engine\":\"influencer-home\",development:\"development\",finance:\"finance\",settings:\"system\",storage:\"system\",activity:\"system\",testing:\"system\"},businessWorkspaceConfigV599={\"card-shows\":{label:\"Card Shows\",description:\"Events, tickets, attendance, vendors, marketing and show finance\",rail:[\"home\",\"vendor-support\",\"sales\",\"card-shopify\",\"events\",\"attendance\",\"vendors\",\"vendor-live\",\"table-planner\",\"venues\",\"finance\",\"communications\",\"marketing\",\"performance\",\"calendar\",\"scanner\",\"ask-orbit\"]},\"members-club\":{label:\"Members Club\",description:\"Members, fulfilment, prizes, loyalty and content\",rail:[\"home\",\"support\",\"customers\",\"fulfil\",\"box-inventory\",\"draws\",\"loyalty\",\"member-store\",\"orbit-chase\",\"poke-alerts\",\"communications\",\"member-broadcasts\",\"member-newsletters\",\"member-analytics\",\"content\",\"ask-orbit\"]},directory:{label:\"Directory\",description:\"Directory records, pipeline acceptance, analytics, sponsorship, organiser access and media\",rail:[\"home\",\"directory\",\"directory-control\",\"directory-sources\",\"directory-analytics\",\"directory-sponsorship\",\"directory-organisers\",\"directory-media\"]},development:{label:\"Development\",description:\"Engineering, Intelligence, releases and system control\",rail:[\"home\",\"intelligence\",\"knowledge\",\"incidents\",\"protected-systems\",\"development\",\"sms\",\"system\",\"agents\",\"ask-orbit\"]},\"influencer-engine\":{label:\"Influencer Engine\",description:\"PokeMaya market intelligence, content production, publishing and performance\",rail:[\"influencer-home\",\"influencer-market\",\"influencer-stories\",\"influencer-production\",\"influencer-assets\",\"influencer-publishing\",\"influencer-performance\",\"influencer-settings\"]},communications:{label:\"Personal Assistant\",description:\"Your private executive assistant\",rail:[\"pa-home\",\"pa-mail\",\"pa-cases\",\"pa-tasks\",\"pa-calendar\",\"pa-settings\"]}},businessWorkspaceForModuleV599={shopify:\"card-shows\",\"card-shopify\":\"card-shows\",events:\"card-shows\",\"scanner-admin\":\"card-shows\",vendors:\"card-shows\",advertising:\"card-shows\",finance:\"card-shows\",performance:\"card-shows\",\"ad-performance\":\"card-shows\",\"analytics-overview\":\"card-shows\",\"analytics-sales\":\"card-shows\",\"analytics-google\":\"card-shows\",\"analytics-meta\":\"card-shows\",reports:\"card-shows\",seo:\"card-shows\",members:\"members-club\",shipping:\"members-club\",fulfilment:\"members-club\",\"box-inventory\":\"members-club\",automation:\"members-club\",loyalty:\"members-club\",\"member-store\":\"members-club\",content:\"members-club\",media:\"members-club\",\"website-images\":\"members-club\",support:\"members-club\",engagement:\"members-club\",\"gmail-hub\":\"communications\",directory:\"directory\",development:\"development\",settings:\"development\",storage:\"development\",testing:\"development\",activity:\"development\",\"vendor-history\":\"card-shows\",\"influencer-engine\":\"influencer-engine\"};function canonicalBusinessWorkspaceV599(value){return Object.prototype.hasOwnProperty.call(businessWorkspaceConfigV599,value)?value:\"card-shows\"}function savedBusinessWorkspaceV599(){try{return canonicalBusinessWorkspaceV599(localStorage.getItem(\"orbitAdminBusinessWorkspaceV599\")||\"card-shows\")}catch{return\"card-shows\"}}function businessWorkspaceLabelForRailV599(key){return{home:\"Home\",customers:\"Members\",sales:\"Tickets\",\"card-shopify\":\"Shopify\",events:\"Events\",calendar:\"Calendar\",attendance:\"Attendance\",scanner:\"Scanner\",directory:\"Directory\",\"directory-control\":\"Control Centre\",\"directory-sources\":\"Sources\",\"directory-analytics\":\"Analytics\",\"directory-sponsorship\":\"Sponsorship\",\"directory-organisers\":\"Organiser Access\",\"directory-media\":\"Media\",vendors:\"Vendors\",\"vendor-support\":\"Support\",\"vendor-live\":\"Show Plan\",\"table-planner\":\"Table Plan\",venues:\"Venues\",fulfil:\"Fulfilment\",draws:\"Prizes\",\"box-inventory\":\"Box Accounting\",loyalty:\"Loyalty\",\"member-store\":\"Store\",\"orbit-chase\":\"Orbit Chase\",\"poke-alerts\":\"Pok\\xE9 Alerts\",support:\"Support\",sms:\"SMS\",communications:\"Email\",\"member-broadcasts\":\"Broadcasts\",\"member-newsletters\":\"Newsletters\",marketing:\"Marketing\",performance:\"Analytics\",\"member-analytics\":\"Analytics\",content:\"Content\",intelligence:\"Intelligence\",knowledge:\"Knowledge\",incidents:\"Incidents\",\"protected-systems\":\"Protected\",agents:\"Agents\",\"ask-orbit\":\"Ask Orbit\",development:\"Development\",finance:\"Finance\",system:\"System\",\"influencer-home\":\"Home\",\"influencer-market\":\"Market Intelligence\",\"influencer-stories\":\"Story Queue\",\"influencer-production\":\"Production\",\"influencer-assets\":\"PokeMaya Assets\",\"influencer-publishing\":\"Publishing\",\"influencer-performance\":\"Performance\",\"influencer-settings\":\"Connections\",\"gmail-hub\":\"AI Email\",\"pa-home\":\"Home\",\"pa-mail\":\"Mailboxes\",\"pa-cases\":\"Case Tracker\",\"pa-tasks\":\"Actions\",\"pa-calendar\":\"Calendar\",\"pa-settings\":\"Settings\"}[key]||key}function primaryRouteForModuleV5991(module,preferredTab=\"\",explicitRoute=\"\"){if(explicitRoute&&adminWorkspaceConfig[explicitRoute])return explicitRoute;const tab=String(preferredTab||\"\");return module===\"gmail-hub\"?{home:\"pa-home\",mail:\"pa-mail\",cases:\"pa-cases\",tasks:\"pa-tasks\",calendar:\"pa-calendar\",accounts:\"pa-settings\"}[tab]||\"pa-home\":module===\"engagement\"?tab===\"newsletters\"||tab===\"subscribers\"?\"member-newsletters\":\"member-broadcasts\":module===\"events\"?tab===\"calendar\"?\"calendar\":tab===\"attendance\"?\"attendance\":\"events\":module===\"directory\"?tab===\"control\"?\"directory-control\":tab===\"sources\"?\"directory-sources\":tab===\"analytics\"?\"directory-analytics\":tab===\"sponsors\"?\"directory-sponsorship\":tab===\"organisers\"?\"directory-organisers\":\"directory\":module===\"media\"&&canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())===\"directory\"?\"directory-media\":module===\"vendors\"?tab===\"club-support\"?\"vendor-support\":tab===\"live\"||tab===\"changes\"?\"vendor-live\":tab===\"planner\"?\"table-planner\":tab===\"venues\"||tab===\"rules\"?\"venues\":\"vendors\":module===\"intelligence\"?tab===\"assistant\"?\"ask-orbit\":tab===\"agents\"||tab===\"ondemand\"?\"agents\":tab===\"knowledge\"?\"knowledge\":tab===\"incidents\"?\"incidents\":tab===\"protected-systems\"?\"protected-systems\":\"intelligence\":module===\"influencer-engine\"?({home:\"influencer-home\",market:\"influencer-market\",stories:\"influencer-stories\",production:\"influencer-production\",assets:\"influencer-assets\",publishing:\"influencer-publishing\",performance:\"influencer-performance\",settings:\"influencer-settings\"}[tab]||\"influencer-home\"):module===\"member-store\"?tab===\"sms\"?\"sms\":tab.startsWith(\"poke-\")?\"poke-alerts\":tab===\"draws\"?\"orbit-chase\":tab===\"poke-alerts\"?\"poke-alerts\":\"member-store\":[\"performance\",\"ad-performance\",\"analytics-overview\",\"analytics-sales\",\"analytics-google\",\"analytics-meta\",\"seo\"].includes(module)&&canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())===\"members-club\"?\"member-analytics\":moduleWorkspaceMap[module]||\"home\"}function routeBusinessWorkspaceV5991(route,module){const fixed=adminWorkspaceConfig[route]?.businessWorkspace||businessWorkspaceForModuleV599[module];return canonicalBusinessWorkspaceV599(fixed||state.businessWorkspaceV599||savedBusinessWorkspaceV599())}function updateAdminRouteLocationV5991(route,module,tab,historyMode=\"replace\"){if(historyMode!==\"none\")try{const url=new URL(window.location.href),workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599());url.searchParams.set(\"orbit_admin_workspace\",workspace),url.searchParams.set(\"orbit_admin_route\",route||\"home\"),tab?url.searchParams.set(\"orbit_admin_tab\",tab):url.searchParams.delete(\"orbit_admin_tab\"),url.hash=\"orbit-module-\"+(module||\"dashboard\");const payload={orbitAdminV5991:!0,workspace,route:route||\"home\",module:module||\"dashboard\",tab:tab||\"\"};historyMode===\"push\"?history.pushState(payload,\"\",url.toString()):history.replaceState(payload,\"\",url.toString())}catch{}}function applyBusinessWorkspaceV599(value,{persist=!0,activateHome=!1,historyMode=\"push\"}={}){const workspace=canonicalBusinessWorkspaceV599(value),config=businessWorkspaceConfigV599[workspace];state.businessWorkspaceV599=workspace;const app=document.getElementById(\"orbitAdminApplication\");app&&(app.dataset.businessWorkspaceV599=workspace);const headerShow=document.getElementById(\"orbitHomeNextShowSpotlightV731\");headerShow&&workspace!==\"card-shows\"&&(headerShow.hidden=!0,headerShow.innerHTML=\"\");const select=document.getElementById(\"orbitBusinessWorkspaceV599\");select&&select.value!==workspace&&(select.value=workspace);const paContext=document.querySelector(\".orbit-v76-context-nav>.orbit-pa-subnav-v80906\"),contextNav=document.querySelector(\".orbit-v76-context-nav\");if(paContext&&(paContext.hidden=workspace!==\"communications\"),contextNav&&contextNav.classList.toggle(\"orbit-pa-context-active-v80910\",workspace===\"communications\"),persist)try{localStorage.setItem(\"orbitAdminBusinessWorkspaceV599\",workspace)}catch{}const rail=document.querySelector(\"[data-workspace-nav]\")?.parentElement;rail&&config.rail.forEach(key=>{const node=Array.from(rail.children).find(el=>el.dataset.workspaceNav===key);node&&rail.appendChild(node)});const allowed=new Set(config.rail);if(document.querySelectorAll(\"[data-workspace-nav]\").forEach(button2=>{const key=button2.dataset.workspaceNav;button2.hidden=!allowed.has(key);const strong=button2.querySelector(\"strong\");strong&&(strong.textContent=businessWorkspaceLabelForRailV599(key))}),document.querySelectorAll(\"[data-workspace-only-v5991]\").forEach(element=>{const scopes=String(element.dataset.workspaceOnlyV5991||\"\").split(\",\").map(v=>v.trim()).filter(Boolean);element.hidden=scopes.length>0&&!scopes.includes(workspace)}),state.currentModule===\"dashboard\"){const title=document.getElementById(\"orbitContextTitle\"),description=document.getElementById(\"orbitContextDescription\"),section=document.getElementById(\"orbitAdminSectionLabel\");title&&(title.textContent=config.label+\" Home\"),description&&(description.textContent=config.description),section&&(section.textContent=config.label+\" Home\")}return workspace===\"members-club\"&&state.adminAuthenticated&&!state.supportBadgeReadV618&&(state.supportBadgeReadV618=!0,Promise.allSettled([loadSummary(),refreshMemberSupportBadgeV688()]).finally(()=>{state.supportBadgeReadV618=!1})),activateHome&&(workspace===\"communications\"?activateModule(\"gmail-hub\",\"home\",{routeKey:\"pa-home\",historyMode}):workspace===\"influencer-engine\"?activateModule(\"influencer-engine\",\"home\",{routeKey:\"influencer-home\",historyMode}):activateModule(\"dashboard\",void 0,{routeKey:\"home\",historyMode})),workspace}function syncBusinessWorkspaceV599(module,routeKey){const workspace=routeBusinessWorkspaceV5991(routeKey||primaryRouteForModuleV5991(module,\"\"),module);return applyBusinessWorkspaceV599(workspace,{persist:!0,activateHome:!1,historyMode:\"none\"})}function intelligenceTabForBusinessV599(){const workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599());return workspace===\"development\"?\"overview\":workspace===\"directory\"?\"agents\":\"assistant\"}function bindBusinessWorkspaceV599(){const select=document.getElementById(\"orbitBusinessWorkspaceV599\");select&&!select.dataset.boundV599&&(select.dataset.boundV599=\"1\",select.addEventListener(\"change\",()=>applyBusinessWorkspaceV599(select.value,{persist:!0,activateHome:!0,historyMode:\"push\"})));const home=document.getElementById(\"orbitBusinessHomeV599\");home&&!home.dataset.boundV599&&(home.dataset.boundV599=\"1\",home.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-v599-home-module]\");if(!button2)return;const module=button2.dataset.v599HomeModule,tab=button2.dataset.v599HomeTab||\"\";activateModule(module,tab||void 0,{historyMode:\"push\"}),module===\"intelligence\"&&tab&&setOrbitIntelligenceTab(tab)}));const nextShowHeader=document.getElementById(\"orbitHomeNextShowSpotlightV731\");nextShowHeader&&!nextShowHeader.dataset.boundV731&&(nextShowHeader.dataset.boundV731=\"1\",nextShowHeader.addEventListener(\"click\",event=>{const b=event.target.closest(\"[data-v599-home-module]\");b&&activateModule(b.dataset.v599HomeModule,b.dataset.v599HomeTab||void 0,{historyMode:\"push\"})})),applyBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599(),{persist:!1,activateHome:!1,historyMode:\"none\"})}function homeMetricV599(label,value,detail=\"\"){return`<article class=\"orbit-business-home-metric-v599\"><small>${esc(label)}</small><strong>${esc(String(value??\"\\u2014\"))}</strong>${detail?`<span>${esc(detail)}</span>`:\"\"}</article>`}function homeActionV599(title,copy,module,tab=\"\"){return`<button type=\"button\" class=\"orbit-business-home-action-v599\" data-v599-home-module=\"${esc(module)}\"${tab?` data-v599-home-tab=\"${esc(tab)}\"`:\"\"}><span><strong>${esc(title)}</strong><small>${esc(copy)}</small></span><b>Open</b></button>`}function homeQuickV599(label,module,tab=\"\"){return`<button type=\"button\" class=\"secondary\" data-v599-home-module=\"${esc(module)}\"${tab?` data-v599-home-tab=\"${esc(tab)}\"`:\"\"}>${esc(label)}</button>`}function homeSpotlightV688(title,detail,module,tab=\"\"){return`<button type=\"button\" class=\"orbit-business-home-spotlight-v688\" data-v599-home-module=\"${esc(module)}\"${tab?` data-v599-home-tab=\"${esc(tab)}\"`:\"\"}><small>NEXT SHOW</small><strong>${esc(title)}</strong><span>${esc(detail)}</span></button>`}function homePeriodControlV600(period=\"today\",label=\"Period\"){const options=[[\"today\",\"Today\"],[\"yesterday\",\"Yesterday\"],[\"last_7_days\",\"Last 7 days\"],[\"last_30_days\",\"Last 30 days\"]];return`<label class=\"orbit-business-home-period-v600\"><span>${esc(label)}</span><select data-v600-home-period>${options.map(([value,text2])=>`<option value=\"${value}\"${value===period?\" selected\":\"\"}>${text2}</option>`).join(\"\")}</select></label>`}function homeShellV599({workspace,title,eyebrow,summary,metrics=[],actions=[],quick=[],controls=\"\",spotlight=\"\"}){const target=document.getElementById(\"orbitBusinessHomeV599\");if(!target)return;target.innerHTML=`<div class=\"orbit-business-home-hero-v599\"><div><p class=\"orbit-kicker\">${esc(eyebrow)}</p><h1>${esc(title)}</h1><p>${esc(summary)}</p></div><div class=\"orbit-business-home-hero-actions-v600\">${workspace===\"card-shows\"?\"\":spotlight||\"\"}${controls||\"\"}<button type=\"button\" class=\"secondary orbit-business-home-refresh-v599\" data-v599-home-refresh>Refresh</button></div></div><div class=\"orbit-business-home-metrics-v599\">${metrics.join(\"\")}</div><section class=\"orbit-business-home-attention-v599\"><div class=\"orbit-business-home-section-head-v599\"><div><p class=\"orbit-kicker\">NEEDS YOUR ATTENTION</p><h2>${actions.length?`${actions.length} item${actions.length===1?\"\":\"s\"}`:\"Nothing urgent\"}</h2></div></div><div class=\"orbit-business-home-actions-v599\">${actions.length?actions.join(\"\"):'<div class=\"orbit-business-home-clear-v599\"><strong>\\u2713 Nothing needs your attention</strong><span>This workspace has no actionable exception in the current snapshot.</span></div>'}</div></section>`;const headerShow=document.getElementById(\"orbitHomeNextShowSpotlightV731\");headerShow&&(headerShow.hidden=!(workspace===\"card-shows\"&&spotlight),headerShow.innerHTML=workspace===\"card-shows\"&&spotlight||\"\");const refresh=target.querySelector(\"[data-v599-home-refresh]\");refresh&&refresh.addEventListener(\"click\",()=>refreshBusinessHomeV599(!0).catch(err=>setNotice2(err.message||err,!0)));const periodSelect=target.querySelector(\"[data-v600-home-period]\");periodSelect&&periodSelect.addEventListener(\"change\",()=>{workspace===\"members-club\"?state.memberClubHomePeriodV6001=periodSelect.value:state.cardShowHomePeriodV600=periodSelect.value,refreshBusinessHomeV599(!0).then(()=>setNotice2((workspace===\"members-club\"?\"Members Club\":\"Card Shows\")+\" Home updated for \"+dashboardPeriodLabel(periodSelect.value)+\".\")).catch(err=>setNotice2(err.message||err,!0))}),target.dataset.workspace=workspace}function eventDateV599(row={}){return row.start?.local||row.start?.utc||row.startDate||row.date||\"\"}function eventTitleV599(row={}){return row.name?.text||row.name||row.title||\"Upcoming event\"}function specialShipmentActiveV601(row={}){const status=String(row.status||row.fulfilment_status||row.fulfilmentStatus||\"\").trim().toLowerCase();return![\"dispatched\",\"shipped\",\"delivered\",\"fulfilled\",\"completed\",\"cancelled\",\"canceled\",\"archived\",\"deleted\",\"void\",\"replaced\",\"superseded\",\"combined\"].includes(status)}async function cardShowVendorMetricsV823(period,force=!1){if(force)return api(\"/api/admin/vendors/workspace-metrics/refresh\",{method:\"POST\",body:JSON.stringify({period}),cacheMs:0,timeoutMs:12e4});let result=await api(\"/api/admin/vendors/workspace-metrics?period=\"+encodeURIComponent(period),{cacheMs:5e3,timeoutMs:8e3});for(let attempt=0;result?.ready===!1&&attempt<2;attempt++){await new Promise(resolve=>setTimeout(resolve,750+attempt*500));result=await api(\"/api/admin/vendors/workspace-metrics?period=\"+encodeURIComponent(period),{cacheMs:0,timeoutMs:8e3})}return result}async function refreshBusinessHomeV599(force=!1){if(state.currentModule!==\"dashboard\")return;bindBusinessWorkspaceV599();const workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599()),target=document.getElementById(\"orbitBusinessHomeV599\");if(!target)return;if((!target.children.length||force)&&(target.innerHTML='<div class=\"orbit-business-home-loading-v599\"><strong>Refreshing '+esc(businessWorkspaceConfigV599[workspace].label)+\"\\u2026</strong><span>Loading only this workspace\\u2019s operational snapshot.</span></div>\"),workspace===\"card-shows\"){const period=state.cardShowHomePeriodV600||\"today\",[summaryResult,eventsResult,vendorResult]=await Promise.allSettled([loadSummary(period,force),api(\"/api/admin/eventbrite/events?limit=100&metrics=0\",{cacheMs:force?0:5e3,timeoutMs:15e3}),cardShowVendorMetricsV823(period,force)]),summary=summaryResult.status===\"fulfilled\"?summaryResult.value:{period,snapshot:{}},snap=summary.snapshot||{},events=(eventsResult.status===\"fulfilled\"?eventsResult.value?.events:[])||[],vendor=vendorResult.status===\"fulfilled\"?vendorResult.value:{period,ready:!1},now=Date.now(),upcoming=events.filter(e=>{const t=Date.parse(eventDateV599(e));return!Number.isFinite(t)||t>=now-864e5}).sort((a,b)=>String(eventDateV599(a)).localeCompare(String(eventDateV599(b)))),next=upcoming[0]||null,actions2=[],periodLabel=dashboardPeriodLabel(period);state.vendorHomeMetricsV5991=vendor,renderDashboardSnapshot(summary,vendor),eventsResult.status===\"fulfilled\"&&!next&&actions2.push(homeActionV599(\"No upcoming show loaded\",\"No future Eventbrite show exists in the current canonical event list.\",\"events\",\"eventbrite\")),homeShellV599({workspace,title:\"Card Shows\",eyebrow:\"CARD SHOWS COMMAND CENTRE\",summary:\"Tickets, vendor tables and event operations across every Orbit Card Show.\",spotlight:next?homeSpotlightV688(eventTitleV599(next),prettyDate(eventDateV599(next)),\"events\",\"eventbrite\"):\"\",controls:homePeriodControlV600(period),metrics:[homeMetricV599(\"Tickets\",snap.ticketsPurchased??0,periodLabel),homeMetricV599(\"Ticket revenue\",\"\\xA3\"+Number(snap.ticketRevenue||0).toFixed(2),periodLabel),homeMetricV599(\"Tables sold\",vendor.tablesSold??\"\\u2014\",vendor.ready===!1?\"Updating period read model\":periodLabel),homeMetricV599(\"Vendor table revenue\",vendor.vendorTableRevenue==null?\"\\u2014\":\"\\xA3\"+Number(vendor.vendorTableRevenue||0).toFixed(2),vendor.ready===!1?\"Updating period read model\":periodLabel)],actions:actions2,quick:[homeQuickV599(\"Tickets\",\"shopify\"),homeQuickV599(\"Events\",\"events\",\"eventbrite\"),homeQuickV599(\"Calendar\",\"events\",\"calendar\"),homeQuickV599(\"Attendance\",\"events\",\"attendance\"),homeQuickV599(\"Scanner\",\"scanner-admin\"),homeQuickV599(\"Vendors\",\"vendors\",\"customers\"),homeQuickV599(\"Show Plan\",\"vendors\",\"live\"),homeQuickV599(\"Table Plan\",\"vendors\",\"planner\"),homeQuickV599(\"Venues\",\"vendors\",\"venues\"),homeQuickV599(\"Event Marketing\",\"advertising\"),homeQuickV599(\"Analytics\",\"performance\"),homeQuickV599(\"Finance\",\"finance\"),homeQuickV599(\"Ask Orbit\",\"intelligence\",\"assistant\")]});return}if(workspace===\"members-club\"){const period=state.memberClubHomePeriodV6001||\"today\",[summaryResult,fulfilResult,performanceResult,specialResult]=await Promise.allSettled([loadSummary(period,force),api(\"/api/admin/fulfilment/centre\"+(force?\"?refresh=\"+Date.now():\"\"),{cacheMs:force?0:5e3,timeoutMs:15e3}),api(\"/api/admin/v79/performance?period=\"+encodeURIComponent(period)+\"&site=collectors_club\",{cacheMs:force?0:5e3,timeoutMs:25e3}),api(\"/api/admin/shipping/special-shipments\",{cacheMs:force?0:5e3,timeoutMs:15e3})]),summary=summaryResult.status===\"fulfilled\"?summaryResult.value:{period,snapshot:{}},centre=fulfilResult.status===\"fulfilled\"?fulfilResult.value:{},performance2=performanceResult.status===\"fulfilled\"?performanceResult.value:{},special=(specialResult.status===\"fulfilled\"?specialResult.value?.shipments:[])||[],actions2=[],periodLabel=dashboardPeriodLabel(period),loyaltyParcels=special.filter(x=>specialShipmentActiveV601(x)&&String(x.source||x.source_type||\"\")===\"loyalty_store\").length,prizeParcels=special.filter(x=>specialShipmentActiveV601(x)&&[\"monthly_draw\",\"golden_ticket\",\"member_store_prize_draw\"].includes(String(x.source||x.source_type||\"\"))).length,parcelCount=Number(centre?.counts?.total??summary.pendingPacks??0),attentionCount=Number(centre?.counts?.needsAddress??summary.blockedAddressPacks??0),revenue=performance2.revenue,rebill=performance2.forecast?.gross,rebillDate=performance2.forecast?.date;Number(summary.unansweredTickets||0)>0&&actions2.push(homeActionV599(`${Number(summary.unansweredTickets)} support conversation${Number(summary.unansweredTickets)===1?\"\":\"s\"} waiting`,\"Members are waiting for a reply.\",\"support\")),attentionCount>0&&actions2.push(homeActionV599(`${attentionCount} parcel${attentionCount===1?\"\":\"s\"} need attention`,\"Resolve blocked delivery details before fulfilment.\",\"shipping\",\"attention\")),prizeParcels>0&&actions2.push(homeActionV599(`${prizeParcels} prize parcel${prizeParcels===1?\"\":\"s\"} waiting`,\"Winner fulfilment is ready to review.\",\"shipping\",\"prizes\")),homeShellV599({workspace,title:\"Members Club\",eyebrow:\"MEMBERS CLUB COMMAND CENTRE\",summary:\"Membership, renewal and fulfilment health in one Members Club-only view.\",controls:homePeriodControlV600(period,\"Membership period\"),metrics:[homeMetricV599(\"Total members\",summary.totalMembers??0,\"Operational members\"),homeMetricV599(\"Active members\",summary.activeMembers??0,\"Current membership\"),homeMetricV599(\"Pending activation\",summary.pendingMembers??0,\"Waiting for first full payment\"),homeMetricV599(\"Members in period\",summary.snapshot?.newSignups??0,periodLabel),homeMetricV599(\"Membership revenue\",revenue==null?\"\\u2014\":\"\\xA3\"+Number(revenue||0).toFixed(2),periodLabel+\" signup receipts\"),homeMetricV599(\"Due next rebill\",rebill==null?\"\\u2014\":\"\\xA3\"+Number(rebill||0).toFixed(2),rebillDate?\"Scheduled \"+prettyDate(rebillDate):\"Next 1st\"),homeMetricV599(\"Parcels waiting\",parcelCount,\"Canonical fulfilment queue\"),homeMetricV599(\"Needs attention\",attentionCount,\"Blocked delivery details\"),homeMetricV599(\"Loyalty parcels\",loyaltyParcels,\"Awaiting fulfilment\"),homeMetricV599(\"Prize parcels\",prizeParcels,\"Awaiting fulfilment\")],actions:actions2,quick:[homeQuickV599(\"Members\",\"members\"),homeQuickV599(\"Fulfilment\",\"shipping\",\"monthly\"),homeQuickV599(\"Prizes\",\"automation\",\"current\"),homeQuickV599(\"Loyalty\",\"loyalty\"),homeQuickV599(\"Email\",\"comms\",\"inbox\"),homeQuickV599(\"Content\",\"website-images\"),homeQuickV599(\"Media\",\"media\"),homeQuickV599(\"Ask Orbit\",\"intelligence\",\"assistant\")]});return}if(workspace===\"directory\"){const[summaryResult,pipelineResult]=await Promise.allSettled([api(\"/api/admin/directory/summary\",{cacheMs:force?0:3e3,timeoutMs:12e3}),api(\"/api/admin/directory/pipeline/status\",{cacheMs:0,timeoutMs:12e3})]),summary=summaryResult.status===\"fulfilled\"?summaryResult.value:{},pipeline=pipelineResult.status===\"fulfilled\"?pipelineResult.value?.run:null,actions2=[];Number(summary.reviewQueue||summary.needsReview||0)>0&&actions2.push(homeActionV599(`${Number(summary.reviewQueue||summary.needsReview)} review decision${Number(summary.reviewQueue||summary.needsReview)===1?\"\":\"s\"}`,\"Only genuinely ambiguous evidence should appear here.\",\"directory\",\"review_queue\")),Number(summary.imageMetrics?.unresolved||0)>0&&actions2.push(homeActionV599(`${Number(summary.imageMetrics.unresolved)} live image${Number(summary.imageMetrics.unresolved)===1?\"\":\"s\"} unresolved`,\"Image Resolver will keep researching fallback artwork.\",\"directory\",\"approved\")),pipeline&&String(pipeline.status)===\"failed\"&&actions2.push(homeActionV599(\"Directory pipeline stopped safely\",pipeline.lastError||\"Open Directory to inspect the persisted run.\",\"directory\")),homeShellV599({workspace,title:\"CardShowIndex\",eyebrow:\"DIRECTORY COMMAND CENTRE\",summary:\"Public catalogue health, research backlog and the small set of decisions that need you.\",metrics:[homeMetricV599(\"Live published\",summary.approved??0,\"Public shows\"),homeMetricV599(\"Researching\",summary.enriching??0,\"Background enrichment\"),homeMetricV599(\"Your decisions\",summary.reviewQueue??summary.needsReview??0,\"Canonical review queue\"),homeMetricV599(\"All indexed\",summary.total??0,\"Known show records\")],actions:actions2,quick:[homeQuickV599(\"Events\",\"directory\",\"events\"),homeQuickV599(\"Sponsorship\",\"directory\",\"sponsors\"),homeQuickV599(\"Organiser Access\",\"directory\",\"organisers\"),homeQuickV599(\"Media\",\"media\")]});return}const notesResult=await Promise.allSettled([api(\"/api/admin/development-notes?active=1\",{cacheMs:force?0:3e3,timeoutMs:15e3})]),notes=((notesResult[0].status===\"fulfilled\"?notesResult[0].value?.notes:[])||[]).filter(operatorDevelopmentItemV559),open=notes.filter(n=>String(n.status||\"\").toLowerCase()===\"open\").length,ready=notes.filter(n=>/ready for testing/i.test(String(n.status||\"\"))).length,high=notes.filter(n=>String(n.status||\"\").toLowerCase()===\"open\"&&/high|critical/i.test(String(n.priority||\"\"))).length,actions=[];ready&&actions.push(homeActionV599(`${ready} Acceptance item${ready===1?\"\":\"s\"} ready`,\"These changes are waiting for operator testing.\",\"development\",\"verification\")),high&&actions.push(homeActionV599(`${high} high-priority Development Note${high===1?\"\":\"s\"}`,\"Open Development Notes to review the highest-priority backlog.\",\"development\",\"notes\")),homeShellV599({workspace,title:\"Development\",eyebrow:\"ORBIT OS CONTROL ROOM\",summary:\"Release work, Acceptance, Intelligence and system controls without mixing them into business operations.\",metrics:[homeMetricV599(\"Production\",ORBIT_RELEASE,\"Admin runtime\"),homeMetricV599(\"Open notes\",open,\"Canonical active backlog\"),homeMetricV599(\"Ready for Acceptance\",ready,\"Waiting for your test\"),homeMetricV599(\"High priority\",high,\"Open Development Notes\")],actions,quick:[homeQuickV599(\"Intelligence\",\"intelligence\",\"overview\"),homeQuickV599(\"Development\",\"development\"),homeQuickV599(\"System\",\"settings\"),homeQuickV599(\"Agents\",\"intelligence\",\"agents\"),homeQuickV599(\"Ask Orbit\",\"intelligence\",\"assistant\")]})}function openAdvertisingViewV451(view){const wanted=view===\"meta\"||view===\"import\"?\"overview\":view||\"overview\",advanced=document.querySelector(\".orbit-marketing-history-integrated-v726\"),settings=document.querySelector('[data-advertising-view=\"settings\"]');advanced&&settings&&advanced.parentElement!==settings&&settings.appendChild(advanced);const toggle=document.querySelector(\"[data-marketing-history-toggle-v726]\");if(toggle&&!toggle.dataset.boundV726&&(toggle.dataset.boundV726=\"1\",toggle.addEventListener(\"click\",()=>{advanced&&(advanced.hidden=!advanced.hidden,toggle.setAttribute(\"aria-expanded\",String(!advanced.hidden)),advanced.hidden||loadMetaAdsSummaryV453().catch(err=>renderMetaAdsSummaryErrorV601(err)))})),wanted===\"import\"&&state.adminAuthenticated&&!metaAdsHistoryPollingV538&&!metaAdsHistoryPollTimerV450){const job=savedMetaHistoryJobV538();job?.jobId&&pollMetaAdsHistoryJobV450(job.jobId,job.startedAt||Date.now())}document.querySelectorAll(\"[data-advertising-view]\").forEach(panel=>{panel.hidden=panel.dataset.advertisingView!==wanted}),document.querySelectorAll(\"[data-advertising-open]\").forEach(button2=>{const active=button2.dataset.advertisingOpen===wanted;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-current\",active?\"page\":\"false\")});try{sessionStorage.setItem(\"orbitAdvertisingView\",wanted)}catch{}state.adminAuthenticated&&((wanted===\"overview\"||wanted===\"import\")&&loadMetaAdsSummaryV453().catch(err=>renderMetaAdsSummaryErrorV601(err)),wanted===\"reconciliation\"&&loadMetaAdsReconciliationV453(1).catch(err=>{state.currentModule===\"advertising\"&&setNotice2(\"Reconciliation unavailable: \"+(err.message||err),!0)}),wanted===\"costs\"&&loadMetaAdsCostsV453().catch(err=>{state.currentModule===\"advertising\"&&setNotice2(\"Event costs unavailable: \"+(err.message||err),!0)}),(wanted===\"overview\"||wanted===\"meta\")&&loadMetaAdsDashboardV449(!1).catch(err=>{state.currentModule===\"advertising\"&&setNotice2(\"Saved Meta performance unavailable: \"+(err.message||err),!0)}),wanted===\"settings\"&&loadMetaAdsHealthV449().catch(err=>{state.currentModule===\"advertising\"&&setNotice2(\"Meta connection health unavailable: \"+(err.message||err),!0)}))}function syncWorkspaceNavigation(module,preferredTab=\"\",explicitRoute=\"\"){const route=primaryRouteForModuleV5991(module,preferredTab,explicitRoute);state.currentPrimaryRouteV5991=route,syncBusinessWorkspaceV599(module,route);const config=adminWorkspaceConfig[route]||adminWorkspaceConfig.home;bindBusinessWorkspaceV599();const app=document.getElementById(\"orbitAdminApplication\");if(app&&(app.dataset.adminRouteV5991=route,app.dataset.adminModuleV5991=module||\"dashboard\"),document.querySelectorAll(\"[data-workspace-nav]\").forEach(button2=>{const active=button2.dataset.workspaceNav===route;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")}),document.querySelectorAll(\"[data-workspace-group]\").forEach(group=>group.classList.toggle(\"active\",group.dataset.workspaceGroup===route)),route.startsWith(\"pa-\")){state.businessWorkspaceV599=\"communications\";const paApp=document.getElementById(\"orbitAdminApplication\"),paSelect=document.getElementById(\"orbitBusinessWorkspaceV599\"),sub=document.querySelector(\".orbit-v76-context-nav>.orbit-pa-subnav-v80906\");paApp&&(paApp.dataset.businessWorkspaceV599=\"communications\"),paSelect&&paSelect.value!==\"communications\"&&(paSelect.value=\"communications\"),sub&&(sub.hidden=!1),queueMicrotask(()=>{const fn=window.OrbitPaEnsureNavigationV80911||window.OrbitPaEnsureNavigationV80910;typeof fn==\"function\"&&fn()})}const title=document.getElementById(\"orbitContextTitle\"),description=document.getElementById(\"orbitContextDescription\");if(module===\"dashboard\"){const business=businessWorkspaceConfigV599[canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())];title&&(title.textContent=business.label+\" Home\"),description&&(description.textContent=business.description)}else title&&(title.textContent=config.title),description&&(description.textContent=config.description)}function activateWorkspace(routeKey){const config=adminWorkspaceConfig[routeKey];config&&(setPerformanceWorkspaceSiteV628(routeKey),activateModule(config.defaultModule,config.preferredTab,{routeKey,historyMode:\"push\"}),config.defaultModule===\"intelligence\"&&config.preferredTab&&setOrbitIntelligenceTab(config.preferredTab),routeKey===\"marketing\"&&openAdvertisingViewV451(\"overview\"))}const homeOverviewTemplates={metricTotalMembers:[\"Total Members\",\"View members\"],metricActiveMembers:[\"Active Members\",\"View active\"],metricPendingMembers:[\"Pending Activation\",\"View pending\"],snapshotDirectMembers:[\"Members Today\",\"New signups today\"],metricPendingPacks:[\"Monthly Parcels\",\"Ready or in progress\"],metricFulfilmentAttention:[\"Needs Attention\",\"Blocked shipments\"],metricLoyaltyOrders:[\"Loyalty Orders\",\"Awaiting fulfilment\"],metricPrizeClaims:[\"Prize Shipments\",\"Awaiting fulfilment\"]};function restoreHomeOverviewCards(){Object.entries(homeOverviewTemplates).forEach(function(entry){const valueId=entry[0],card=document.getElementById(valueId)?.closest(\".orbit-metric\");if(!card)return;const current=document.getElementById(valueId)?.textContent||\"\\u2014\";card.innerHTML=\"<span>\"+esc(entry[1][0])+'</span><strong id=\"'+esc(valueId)+'\">'+esc(current)+\"</strong><small>\"+esc(entry[1][1])+\"</small>\",card.dataset.originalHtml=card.innerHTML,card.classList.add(\"orbit-home-card-ready\")})}function orbitSubtabStorageKey(module){return\"orbitAdminSubtab:\"+String(module||\"dashboard\")}function canonicalOrbitSubtab(module,tab){const value=String(tab||\"\");return module===\"events\"&&value===\"events\"?\"eventbrite\":module===\"shipping\"&&(!value||value===\"attention\"||value===\"fulfilment\")?\"monthly\":module===\"comms\"&&![\"inbox\",\"templates\",\"history\"].includes(value)?\"inbox\":module===\"card-shopify\"&&![\"overview\",\"products\",\"inventory\",\"collections\",\"drafts\",\"theme\",\"pages\",\"files\",\"integrations\",\"history\"].includes(value)?\"overview\":value}function rememberOrbitSubtab(module,tab){if(!(!module||!tab))try{localStorage.setItem(orbitSubtabStorageKey(module),canonicalOrbitSubtab(module,tab))}catch{}}function savedOrbitSubtab(module){try{return canonicalOrbitSubtab(module,localStorage.getItem(orbitSubtabStorageKey(module))||\"\")}catch{return\"\"}}function restoreOrbitSubtab(module){const tab=savedOrbitSubtab(module);tab&&(module===\"automation\"&&(state.currentDrawPane=tab),module===\"engagement\"&&(state.currentEngagementPane=tab))}function setShippingPaneV540(value){const canonical=canonicalOrbitSubtab(\"shipping\",value),pane=[\"monthly\",\"shop\",\"prizes\",\"loyalty\",\"history\",\"labels\"].includes(canonical)?canonical:\"monthly\";state.currentShippingPane=pane,rememberOrbitSubtab(\"shipping\",pane),document.querySelectorAll(\"[data-shipping-pane]\").forEach(node=>node.hidden=node.dataset.shippingPane!==pane),document.querySelectorAll(\"[data-shipping-tab]\").forEach(button2=>{const active=button2.dataset.shippingTab===pane;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")})}function setTicketPaneV305(pane){const selected=pane===\"promo\"?\"promo\":\"tickets\";state.currentTicketPane=selected,document.querySelectorAll(\"[data-ticket-pane]\").forEach(panel=>panel.hidden=panel.dataset.ticketPane!==selected),document.querySelectorAll('[data-workspace-group=\"sales\"] [data-ticket-open]').forEach(button2=>button2.classList.toggle(\"active\",button2.dataset.ticketOpen===selected));const sectionLabel=document.getElementById(\"orbitAdminSectionLabel\");sectionLabel&&state.currentModule===\"shopify\"&&(sectionLabel.textContent=selected===\"promo\"?\"Promo Codes\":\"Tickets\"),rememberOrbitSubtab(\"shopify\",selected),selected===\"promo\"&&loadTicketDiscountCodes().catch(err=>setNotice2(\"Promo Codes unavailable: \"+(err.message||err),!0))}function setSettingsPane(targetId,options={}){const grid=document.getElementById(\"orbitSettingsPages\"),overview=document.getElementById(\"settingsOverview\"),id=String(targetId||\"\").trim();document.querySelectorAll(\"#tab-admin-settings .orbit-settings-card\").forEach(card=>{const active=!!id&&card.id===id;card.classList.toggle(\"orbit-settings-pane-active\",active),card.hidden=!!id&&!active}),grid&&grid.classList.toggle(\"is-single-pane\",!!id),overview&&(overview.hidden=!!id),document.querySelectorAll(\"#tab-admin-settings [data-settings-jump]\").forEach(button2=>{button2.classList.toggle(\"active\",!!id&&button2.dataset.settingsJump===id)}),document.querySelectorAll(\"#tab-admin-settings [data-settings-pane]\").forEach(button2=>{button2.classList.toggle(\"active\",!id)});try{id?localStorage.setItem(\"orbitAdminSettingsPane\",id):localStorage.removeItem(\"orbitAdminSettingsPane\")}catch{}id&&(document.getElementById(id)?.classList.add(\"orbit-settings-focus\"),options.scroll!==!1&&document.getElementById(\"tab-admin-settings\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"}))}let orbitDirectoryFilterV560=\"review_queue\",orbitDirectoryRowsV560=[],orbitDirectorySummaryV567=null,orbitDirectoryPipelinePollV580=null,orbitDirectoryPipelinePollTickV580=0,orbitDirectoryControlPollV625=null,orbitDirectorySplitPollV648=null,orbitDirectorySplitPayloadV657=null,orbitDirectoryPageV6001=1,orbitDirectoryAbortV6001=null,orbitDirectoryReadV6001=0;const ORBIT_DIRECTORY_PAGE_SIZE_V6001=50;try{orbitDirectoryFilterV560=localStorage.getItem(\"orbitDirectoryFilterV581\")||orbitDirectoryFilterV560}catch{}orbitDirectoryFilterV560={needs_review:\"review_queue\",conflict:\"review_queue\",live_updates:\"review_queue\",ignored:\"duplicate\",investigating:\"enriching\"}[orbitDirectoryFilterV560]||orbitDirectoryFilterV560,[\"review_queue\",\"enriching\",\"approved\",\"past\",\"duplicate\",\"all\"].includes(orbitDirectoryFilterV560)||(orbitDirectoryFilterV560=\"review_queue\");const orbitDirectoryViewCacheV567=new Map;function ensureDirectoryModuleV560(){if($2(\"orbitDirectoryModuleV560\"))return;const shell=document.querySelector(\".orbit-admin-shell\");if(!shell)return;const section=document.createElement(\"section\");if(section.className=\"orbit-module orbit-directory-v561\",section.dataset.module=\"directory\",section.id=\"orbitDirectoryModuleV560\",section.innerHTML=`<div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">CARDSHOWINDEX \\xB7 UK DIRECTORY</p><h2>Verified event database</h2><p>Discovery finds every announced UK card show it can. AI keeps incomplete records in the background and sends only mature, corroborated candidates to you.</p></div></div>\n      <div data-directory-pane-v594=\"events\"><div id=\"directorySummaryV560\" class=\"orbit-summary-grid\"></div><div class=\"orbit-panel-header orbit-directory-review-heading-v565\"><div><h3>Directory review</h3><p>Publication-safe records can auto-publish from 95% when backed by a verified authoritative source with no material conflict. Orbit keeps enriching published records quietly where useful.</p></div><label class=\"orbit-search-field\"><span>Search</span><input id=\"directorySearchV560\" type=\"search\" placeholder=\"Show, town, venue or postcode\"></label></div><div id=\"directoryEventsV560\" class=\"orbit-table-wrap\"><p class=\"orbit-muted\">Open Directory to load discovered events.</p></div></div>\n      <section data-directory-pane-v594=\"control\" hidden class=\"orbit-directory-control-pane-v626\"><div id=\"directoryControlCentreV625\" class=\"orbit-directory-control-v626\"><p class=\"orbit-muted\">Loading Directory Control Centre\\u2026</p></div><section class=\"orbit-directory-full-pipeline-v626 orbit-directory-full-pipeline-v645\"><div><p class=\"orbit-kicker\">V656 \\xB7 RELEVANCE-FIRST ENRICHMENT</p><h3>Prove one clean handoff at a time</h3><p>Run small proving batches with live progress. V656 researches missing card-show relevance instead of treating it as a dead-end blocker, keeps deterministic foreign/non-show exclusions separate, and preserves bounded retry and human-only Review.</p></div></section><div id=\"directorySplitPipelinesV648\"><p class=\"orbit-muted\">Loading split pipelines\\u2026</p></div><div id=\"directoryExclusionReviewV654\"><p class=\"orbit-muted\">Loading exclusion review\\u2026</p></div><div id=\"directoryPipelineNoticeV580\" class=\"orbit-directory-pipeline-status-v580\" hidden></div></section>\n      <section data-directory-pane-v594=\"sources\" hidden class=\"orbit-directory-sources-v651\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">DISCOVERY SOURCE REGISTRY</p><h3>Approved sources</h3><p>Only enabled, human-approved sources can feed automated Discovery. Agents may propose new recurring sources here but cannot approve them.</p></div><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" id=\"directorySourcesRefreshV651\">Refresh</button><button type=\"button\" id=\"directorySourceAddV651\">Add source</button></div></div><div id=\"directorySourceSummaryV651\" class=\"orbit-summary-grid\"></div><div id=\"directorySourcesV651\" class=\"orbit-table-wrap\"><p class=\"orbit-muted\">Loading source registry\\u2026</p></div><div class=\"orbit-panel-header compact\"><div><h3>Proposed sources</h3><p>Review agent-discovered source hubs before they can be used automatically.</p></div></div><div id=\"directorySourceProposalsV651\" class=\"orbit-table-wrap\"><p class=\"orbit-muted\">No proposals loaded.</p></div></section>\n      <section class=\"orbit-directory-sponsors-v589\" data-directory-pane-v594=\"sponsors\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">DIRECTORY SPONSORSHIP</p><h3>Sponsor management</h3><p>Review sponsor bookings and manage the fallback CardShowIndex banner and compact Fallback Powered by logo without editing code.</p></div><button type=\"button\" class=\"secondary\" id=\"directorySponsorsRefreshV589\">Refresh sponsors</button></div><div id=\"directorySponsorSettingsV593\" class=\"orbit-directory-sponsor-settings-v593\"><p class=\"orbit-muted\">Loading sponsor display settings\\u2026</p></div><div class=\"orbit-panel-header orbit-directory-sponsor-bookings-head-v593\"><div><h4>Sponsor bookings</h4><p>Paid bookings stay offline until you approve them. Both required assets must be present; any creative edit clears approval automatically.</p></div></div><div id=\"directorySponsorBookingsV589\" class=\"orbit-directory-sponsor-list-v589\"><p class=\"orbit-muted\">Loading sponsor bookings\\u2026</p></div></section><section class=\"orbit-directory-organisers-v594\" data-directory-pane-v594=\"organisers\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">ORGANISER ACCESS</p><h3>Claims and verified owners</h3><p>Review proof-of-control claims, then suspend or revoke organiser access without altering the underlying public event record.</p></div><button type=\"button\" class=\"secondary\" id=\"directoryOrganiserAccessRefreshV594\">Refresh access</button></div><div id=\"directoryOrganiserAccessV594\"><p class=\"orbit-muted\">Loading organiser access\\u2026</p></div></section>\n      <section data-directory-pane-v594=\"analytics\" hidden class=\"orbit-directory-analytics-v628\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">CARDSHOWINDEX \\xB7 ANALYTICS</p><h3>Search, traffic and indexing</h3><p>CardShowIndex owns this analytics surface. Configure Search Console and GA4 here without leaving the Directory workspace.</p></div><button type=\"button\" class=\"secondary\" id=\"directoryAnalyticsRefreshV628\">Refresh analytics</button></div><div id=\"directoryAnalyticsMetricsV628\" class=\"orbit-summary-grid\"><p class=\"orbit-muted\">Open Directory Analytics to load CardShowIndex traffic and search data.</p></div><article class=\"orbit-panel\"><div class=\"orbit-panel-header compact\"><div><h3>Google connection</h3><p>Search Console uses the same saved Google OAuth client but its own read-only authorization. The redirect URI below must match Google Cloud exactly.</p></div></div><div class=\"orbit-form-grid\"><label>OAuth Client ID<input id=\"directoryGoogleOauthClientIdV628\" autocomplete=\"off\"></label><label>OAuth Client Secret<input id=\"directoryGoogleOauthClientSecretV628\" type=\"password\" autocomplete=\"new-password\" placeholder=\"Leave blank to keep saved secret\"></label><label class=\"orbit-span-2\">Exact Search Console redirect URI<input id=\"directorySearchConsoleRedirectV628\" readonly></label><label>CardShowIndex Search Console property<input id=\"directorySearchConsolePropertyV628\" placeholder=\"sc-domain:cardshowindex.co.uk\"></label><label>CardShowIndex sitemap<input id=\"directorySitemapUrlV628\" placeholder=\"https://cardshowindex.co.uk/sitemap.xml\"></label><label>GA4 Measurement ID<input id=\"directoryGaMeasurementIdV628\" placeholder=\"G-XXXXXXXXXX\"></label><label>GA4 Property ID<input id=\"directoryGaPropertyIdV628\" inputmode=\"numeric\" placeholder=\"123456789\"></label></div><div class=\"orbit-action-row\"><button type=\"button\" id=\"directoryAnalyticsSaveV628\">Save CardShowIndex analytics</button><button type=\"button\" class=\"secondary\" id=\"directorySearchConsoleConnectV628\">Connect Search Console</button><button type=\"button\" class=\"secondary\" id=\"directorySearchConsoleTestV628\">Test connection</button><button type=\"button\" class=\"secondary\" id=\"directorySearchConsoleSyncV628\">Sync last 30 days</button></div><div id=\"directoryAnalyticsSearchConsoleV628\" class=\"orbit-info-banner\">Search Console status not loaded.</div><div id=\"directoryAnalyticsLastSyncV628\" class=\"orbit-muted\"></div></article><div class=\"orbit-analytics-grid-v468\"><article class=\"orbit-panel\"><div class=\"orbit-panel-header compact\"><div><h3>GA4 traffic</h3><p>Read-only CardShowIndex traffic for the last 30 days.</p></div></div><div id=\"directoryAnalyticsGaV628\" class=\"orbit-table-wrap\">Not loaded.</div></article><article class=\"orbit-panel\"><div class=\"orbit-panel-header compact\"><div><h3>Google search visibility</h3><p>Search Console clicks, impressions, CTR and position for CardShowIndex only.</p></div></div><div id=\"directoryAnalyticsSearchV628\" class=\"orbit-table-wrap\">Not loaded.</div></article></div></section>`,shell.appendChild(section),!$2(\"directoryEventDialogV560\")){const d=document.createElement(\"dialog\");d.id=\"directoryEventDialogV560\",d.className=\"orbit-admin-dialog orbit-directory-review-dialog-v561\",d.innerHTML='<header class=\"orbit-dialog-heading orbit-directory-dialog-heading-v566\"><div class=\"orbit-directory-dialog-title-v565\"><p class=\"orbit-kicker\">DIRECTORY REVIEW</p><h2 id=\"directoryEventDialogTitleV560\">Event</h2><p id=\"directoryEventDialogSubtitleV560\"></p><div id=\"directoryEventDialogMetaV565\" class=\"orbit-directory-dialog-meta-v565\"></div></div><button type=\"button\" class=\"secondary orbit-directory-permanent-close-v566\" id=\"directoryEventCloseHeaderV566\">Close</button></header><div class=\"orbit-directory-toolbar-v566\" id=\"directoryEventToolbarV566\"><div id=\"directoryEventDialogActionsV565\" class=\"orbit-directory-dialog-actions-v565\"></div></div><div id=\"directoryEventDialogBodyV560\"></div>',document.body.appendChild(d);const closeDirectory=()=>{try{d.close()}catch{d.removeAttribute(\"open\")}};d.addEventListener(\"cancel\",e=>{e.preventDefault(),closeDirectory()}),$2(\"directoryEventCloseHeaderV566\")?.addEventListener(\"click\",closeDirectory)}$2(\"directoryRefreshV560\")?.addEventListener(\"click\",()=>loadDirectoryV560(!0,{viewChanged:!0}).catch(()=>{})),$2(\"directoryRunPipelineV580\")?.addEventListener(\"click\",e=>runDirectoryPipelineV580(e.currentTarget)),$2(\"directoryControlCentreV625\")?.addEventListener(\"click\",e=>{const run=e.target.closest(\"[data-directory-agent-run-v625]\"),control=e.target.closest(\"[data-directory-run-control-v625]\"),modelSave=e.target.closest(\"[data-directory-model-save-v625]\");if(e.target.closest(\"[data-directory-open-analytics-v628]\")){activateWorkspace(\"directory-analytics\");return}run&&runDirectoryAgentV625(run.dataset.directoryAgentRunV625,run).catch(err=>setNotice2(err.message||err,!0)),control&&controlDirectoryRunV625(control.dataset.directoryRunIdV625,control.dataset.directoryRunControlV625,control).catch(err=>setNotice2(err.message||err,!0)),modelSave&&saveDirectoryModelRoutingV625(modelSave).catch(err=>setNotice2(err.message||err,!0))}),$2(\"directorySplitPipelinesV648\")?.addEventListener(\"click\",e=>{const run=e.target.closest(\"[data-directory-split-run-v648]\"),stop=e.target.closest(\"[data-directory-split-stop-v648]\"),copy=e.target.closest(\"[data-directory-split-copy-v657]\");run&&runDirectorySplitV648(run.dataset.directorySplitRunV648,run.dataset.directorySplitLimitV648||\"10\",run.dataset.directorySplitSubstageV648||\"all\",run,run.dataset.directorySplitNewCohortV657===\"true\",run.dataset.directorySplitCohortSourceV658||\"discovery\").catch(err=>setNotice2(err.message||err,!0)),stop&&stopDirectorySplitV648(stop.dataset.directorySplitStopV648,stop).catch(err=>setNotice2(err.message||err,!0)),copy&&copyDirectorySplitResultV657(copy.dataset.directorySplitCopyV657,copy).catch(err=>setNotice2(err.message||err,!0))}),$2(\"directoryExclusionReviewV654\")?.addEventListener(\"click\",e=>{const confirm2=e.target.closest(\"[data-directory-exclusion-confirm-v654]\"),back=e.target.closest(\"[data-directory-exclusion-return-v654]\"),reopen=e.target.closest(\"[data-directory-exclusion-reopen-v654]\");confirm2&&directoryExclusionDecisionV654(confirm2.dataset.directoryExclusionConfirmV654,\"confirm\",confirm2).catch(err=>setNotice2(err.message||err,!0)),back&&directoryExclusionDecisionV654(back.dataset.directoryExclusionReturnV654,\"return\",back).catch(err=>setNotice2(err.message||err,!0)),reopen&&directoryExclusionDecisionV654(reopen.dataset.directoryExclusionReopenV654,\"reopen\",reopen).catch(err=>setNotice2(err.message||err,!0))}),$2(\"directorySourcesRefreshV651\")?.addEventListener(\"click\",()=>loadDirectorySourcesV651(!0).catch(err=>setNotice2(\"Directory sources unavailable: \"+(err.message||err),!0))),$2(\"directorySourceAddV651\")?.addEventListener(\"click\",()=>addDirectorySourceV651().catch(err=>setNotice2(\"Source could not be added: \"+(err.message||err),!0))),$2(\"directorySourcesV651\")?.addEventListener(\"click\",e=>handleDirectorySourceActionV651(e).catch(err=>setNotice2(\"Source action failed: \"+(err.message||err),!0))),$2(\"directorySourceProposalsV651\")?.addEventListener(\"click\",e=>handleDirectorySourceProposalV651(e).catch(err=>setNotice2(\"Source proposal action failed: \"+(err.message||err),!0))),$2(\"directorySponsorsRefreshV589\")?.addEventListener(\"click\",()=>Promise.all([loadDirectorySponsorsV589(!0),loadDirectorySponsorSettingsV593(!0)]).catch(()=>{})),$2(\"directoryOrganiserAccessRefreshV594\")?.addEventListener(\"click\",()=>loadDirectoryOrganiserAccessV594(!0).catch(err=>setNotice2(\"Organiser access unavailable: \"+(err.message||err),!0))),$2(\"directoryOrganiserAccessV594\")?.addEventListener(\"click\",e=>{const b=e.target.closest(\"[data-csi-organiser-access-action]\");b&&handleDirectoryOrganiserAccessV594(b).catch(err=>setNotice2(\"Organiser access action failed: \"+(err.message||err),!0))}),$2(\"directoryAnalyticsRefreshV628\")?.addEventListener(\"click\",e=>loadDirectoryAnalyticsV628(!0,e.currentTarget).catch(err=>setNotice2(\"Directory analytics unavailable: \"+(err.message||err),!0))),$2(\"directoryAnalyticsSaveV628\")?.addEventListener(\"click\",e=>saveDirectoryAnalyticsV628(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"directorySearchConsoleConnectV628\")?.addEventListener(\"click\",e=>connectDirectorySearchConsoleV628(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"directorySearchConsoleTestV628\")?.addEventListener(\"click\",e=>testCardShowIndexSearchConsoleV625(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"directorySearchConsoleSyncV628\")?.addEventListener(\"click\",e=>syncCardShowIndexSearchConsoleV625(e.currentTarget).then(()=>loadDirectoryAnalyticsV628(!0,null)).catch(err=>setNotice2(err.message||err,!0))),$2(\"directorySponsorBookingsV589\")?.addEventListener(\"click\",e=>{const b=e.target.closest(\"[data-csi-sponsor-action]\");b&&handleDirectorySponsorActionV589(b).catch(err=>setNotice2(\"Sponsor action failed: \"+(err.message||err),!0))}),$2(\"directorySponsorSettingsV593\")?.addEventListener(\"click\",e=>{const b=e.target.closest(\"[data-csi-sponsor-settings-save]\");b&&saveDirectorySponsorSettingsV593(b).catch(err=>setNotice2(\"Sponsor settings failed: \"+(err.message||err),!0))});try{const savedSearch=localStorage.getItem(\"orbitDirectorySearchV581\")||\"\";$2(\"directorySearchV560\")&&($2(\"directorySearchV560\").value=savedSearch)}catch{}document.querySelectorAll(\"[data-directory-filter-v560]\").forEach(x=>{const active=x.dataset.directoryFilterV560===orbitDirectoryFilterV560;x.classList.toggle(\"active\",active),x.setAttribute(\"aria-selected\",String(active)),active?x.setAttribute(\"aria-current\",\"page\"):x.removeAttribute(\"aria-current\")}),$2(\"directorySearchV560\")?.addEventListener(\"input\",()=>{try{localStorage.setItem(\"orbitDirectorySearchV581\",$2(\"directorySearchV560\")?.value||\"\")}catch{}orbitDirectoryPageV6001=1,window.clearTimeout(window.orbitDirectorySearchTimerV560),window.orbitDirectorySearchTimerV560=setTimeout(()=>loadDirectoryV560(!1,{viewChanged:!0}).catch(()=>{}),250)}),$2(\"directoryFiltersV560\")?.addEventListener(\"click\",e=>{const b=e.target.closest(\"[data-directory-filter-v560]\");if(b){orbitDirectoryFilterV560=b.dataset.directoryFilterV560,orbitDirectoryPageV6001=1;try{localStorage.setItem(\"orbitDirectoryFilterV581\",orbitDirectoryFilterV560)}catch{}document.querySelectorAll(\"[data-directory-filter-v560]\").forEach(x=>{const active=x.dataset.directoryFilterV560===orbitDirectoryFilterV560;x.classList.toggle(\"active\",active),x.setAttribute(\"aria-selected\",String(active)),active?x.setAttribute(\"aria-current\",\"page\"):x.removeAttribute(\"aria-current\")}),loadDirectoryV560(!1,{viewChanged:!0}).catch(()=>{})}}),$2(\"directoryEventsV560\")?.addEventListener(\"click\",e=>{const pageButton=e.target.closest(\"[data-directory-page-v6001]\");if(pageButton){const next=Number(pageButton.dataset.directoryPageV6001||1);next>=1&&next!==orbitDirectoryPageV6001&&(orbitDirectoryPageV6001=next,loadDirectoryV560(!0,{viewChanged:!0,keepPage:!0}).catch(()=>{}));return}if(e.target.closest(\"[data-directory-retry-v6001]\")){loadDirectoryV560(!0,{viewChanged:!0,keepPage:!0}).catch(()=>{});return}const b=e.target.closest(\"[data-directory-open-v560]\");b&&openDirectoryEventV560(b.dataset.directoryOpenV560).catch(err=>setNotice2(\"Directory event unavailable: \"+(err.message||err),!0))}),window.setTimeout(()=>resumeDirectoryPipelineV580().catch(()=>{}),150)}function sponsorAssetPreviewV593(asset,label){let path=String(asset?.path||asset?.url||\"\").trim();return path.startsWith(\"/\")&&(path=API_BASE+path),path?`<div class=\"orbit-directory-sponsor-preview-v593\"><span>${esc(label)}</span><img src=\"${esc(path)}\" alt=\"${esc(label)} preview\"></div>`:`<div class=\"orbit-directory-sponsor-preview-v593 is-empty\"><span>${esc(label)}</span><small>No asset uploaded yet</small></div>`}function fileDataUrlV593(file){return new Promise((resolve,reject)=>{if(!file){resolve(\"\");return}if(!/^image\\/(png|jpeg|webp|gif)$/i.test(file.type||\"\")){reject(new Error(\"Use a PNG, JPEG, WebP or GIF image.\"));return}if(Number(file.size||0)>5*1024*1024){reject(new Error(\"Sponsor images must be 5 MB or smaller.\"));return}const reader=new FileReader;reader.onload=()=>resolve(String(reader.result||\"\")),reader.onerror=()=>reject(new Error(\"The sponsor image could not be read.\")),reader.readAsDataURL(file)})}async function loadDirectoryOrganiserAccessV594(force=!1){const box=$2(\"directoryOrganiserAccessV594\");if(box)try{const data=await api(\"/api/admin/cardshowindex/organiser-claims?limit=150\",{cacheMs:force?0:5e3,timeoutMs:12e3}),claims=data.claims||[],owners=data.owners||[],pending=claims.filter(x=>[\"manual_review\",\"proof_required\",\"proof_submitted\",\"verification_sent\"].includes(String(x.status||\"\"))),claimHtml=pending.length?pending.map(row=>{const canApprove=[\"manual_review\",\"proof_submitted\"].includes(String(row.status||\"\"));return`<article class=\"orbit-directory-access-card-v594\"><div><strong>${esc(row.organiserName||row.organiserEntityId||\"Organiser claim\")}</strong><small>${esc(row.email||\"\")} \\xB7 ${esc(String(row.status||\"\").replace(/_/g,\" \"))}</small>${row.proofUrl?`<a href=\"${esc(row.proofUrl)}\" target=\"_blank\" rel=\"noopener noreferrer\">Review public proof \\u2197</a>`:\"\"}</div><div>${canApprove?`<button type=\"button\" data-csi-organiser-access-action=\"approve\" data-claim-id=\"${esc(row.id)}\">Approve verified claim</button>`:\"<small>Awaiting claimant verification</small>\"}</div></article>`}).join(\"\"):'<p class=\"orbit-muted\">No organiser claims currently need Admin action.</p>',ownerHtml=owners.length?owners.map(row=>{let actions=\"\";return row.status!==\"active\"?actions=`<button type=\"button\" class=\"secondary\" data-csi-organiser-access-action=\"status\" data-owner-id=\"${esc(row.id)}\" data-owner-status=\"active\">Reactivate</button>`:actions=`<button type=\"button\" class=\"secondary\" data-csi-organiser-access-action=\"status\" data-owner-id=\"${esc(row.id)}\" data-owner-status=\"suspended\">Suspend</button><button type=\"button\" class=\"danger\" data-csi-organiser-access-action=\"status\" data-owner-id=\"${esc(row.id)}\" data-owner-status=\"revoked\">Revoke</button>`,`<article class=\"orbit-directory-access-card-v594\"><div><strong>${esc(row.organiserName||row.organiserEntityId||\"Verified organiser\")}</strong><small>${esc(row.email||\"\")} \\xB7 ${esc(row.status||\"active\")}</small><small>${row.updatedAt?esc(prettyDate(row.updatedAt)):\"\"}</small></div><div>${actions}</div></article>`}).join(\"\"):'<p class=\"orbit-muted\">No verified organiser owners yet.</p>';box.innerHTML=`<div class=\"orbit-directory-access-grid-v594\"><section><div class=\"orbit-panel-header\"><div><h4>Claims needing attention</h4><p>${pending.length} claim${pending.length===1?\"\":\"s\"} awaiting or completing verification.</p></div></div><div class=\"orbit-directory-access-list-v594\">${claimHtml}</div></section><section><div class=\"orbit-panel-header\"><div><h4>Verified owners</h4><p>Access can be suspended or revoked independently of public listing data.</p></div></div><div class=\"orbit-directory-access-list-v594\">${ownerHtml}</div></section></div>`}catch(error){if(box.innerHTML='<p class=\"orbit-muted\">Organiser access could not be loaded right now.</p>',force)throw error}}async function handleDirectoryOrganiserAccessV594(button2){const action=button2.dataset.csiOrganiserAccessAction;button2.disabled=!0;try{if(action===\"approve\"){if(!window.confirm(\"Approve this organiser claim as verified? A fresh single-use activation link will be emailed.\"))return;await api(\"/api/admin/cardshowindex/organiser-claims/\"+encodeURIComponent(button2.dataset.claimId)+\"/approve\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:2e4}),setNotice2(\"Organiser claim approved and activation link issued.\")}else if(action===\"status\"){const status=button2.dataset.ownerStatus||\"\";if([\"suspended\",\"revoked\"].includes(status)&&!window.confirm(`Set this organiser access to ${status}? Existing management access will stop immediately.`))return;await api(\"/api/admin/cardshowindex/organiser-owners/\"+encodeURIComponent(button2.dataset.ownerId)+\"/status\",{method:\"POST\",body:JSON.stringify({status}),cacheMs:0,timeoutMs:2e4}),setNotice2(\"Organiser access updated.\")}await loadDirectoryOrganiserAccessV594(!0)}finally{button2.disabled=!1}}async function loadDirectorySponsorSettingsV593(force=!1){const box=$2(\"directorySponsorSettingsV593\");if(box)try{const data=await api(\"/api/admin/cardshowindex/sponsor-settings\",{cacheMs:force?0:5e3,timeoutMs:12e3}),settings=data.settings||{},fallback=settings.fallback||{},branding=settings.branding||{},audit=data.audit||[];box.innerHTML=`<div class=\"orbit-directory-sponsor-settings-grid-v593\"><div class=\"orbit-directory-sponsor-form-v593\"><div class=\"orbit-notice\"><strong>Fallback sponsor</strong><br>Used automatically whenever no approved paid booking is live. Default: Orbit Collectors Club.</div><label><span>Sponsor name</span><input id=\"directorySponsorNameV593\" value=\"${esc(fallback.sponsorName||\"Orbit Collectors Club\")}\" placeholder=\"Sponsor name\"></label><label><span>Destination URL</span><input id=\"directorySponsorUrlV593\" type=\"url\" value=\"${esc(fallback.destinationUrl||\"https://orbitcollectorsclub.com/\")}\" placeholder=\"https://...\"></label><label><span>Alt text</span><input id=\"directorySponsorAltV593\" value=\"${esc(fallback.altText||\"Orbit Collectors Club\")}\" placeholder=\"Sponsor name\"></label><label><span>Fallback homepage banner \\xB7 EXACT 2450 \\xD7 200</span><input id=\"directorySponsorBannerV593\" type=\"file\" accept=\"image/png,image/jpeg,image/webp,image/gif\"></label><label><span>Fallback Powered by logo</span><input id=\"directorySponsorLogoV593\" type=\"file\" accept=\"image/png,image/jpeg,image/webp,image/gif\"></label><div class=\"orbit-notice orbit-directory-branding-note-v595\"><strong>CardShowIndex public branding</strong><br>These assets are independent from sponsorship. Upload a homepage hero background, header logo, or high-contrast footer logo whenever you want to refresh the public site.</div><label><span>Homepage hero background \\xB7 min 1200 \\xD7 400</span><input id=\"directoryHeroBackgroundV595\" type=\"file\" accept=\"image/png,image/jpeg,image/webp,image/gif\"></label><label><span>Header logo</span><input id=\"directoryHeaderLogoV595\" type=\"file\" accept=\"image/png,image/jpeg,image/webp,image/gif\"></label><label><span>Footer logo</span><input id=\"directoryFooterLogoV595\" type=\"file\" accept=\"image/png,image/jpeg,image/webp,image/gif\"></label><div class=\"orbit-directory-sponsor-controls-v593\"><button type=\"button\" data-csi-sponsor-settings-save>Save sponsor & branding display</button></div></div><div class=\"orbit-directory-sponsor-assets-v593\">${sponsorAssetPreviewV593(fallback.homepageBanner,\"Fallback homepage banner\")}${sponsorAssetPreviewV593(fallback.logo,\"Fallback Powered by logo\")}<div class=\"orbit-directory-branding-preview-v595\"><strong>Public branding</strong>${sponsorAssetPreviewV593(branding.heroBackground,\"Homepage hero background\")}${sponsorAssetPreviewV593(branding.headerLogo,\"Header logo\")}${sponsorAssetPreviewV593(branding.footerLogo,\"Footer logo\")}</div><div class=\"orbit-directory-sponsor-audit-v593\"><strong>Recent changes</strong>${audit.length?audit.slice(0,5).map(row=>`<small>${esc(prettyDate(row.createdAt||row.updatedAt||\"\"))} \\xB7 ${esc(row.actor||\"Admin\")}</small>`).join(\"\"):\"<small>No managed sponsor changes yet.</small>\"}</div></div></div>`}catch(error){if(box.innerHTML='<p class=\"orbit-muted\">Sponsor display settings could not be loaded right now.</p>',force)throw error}}async function saveDirectorySponsorSettingsV593(button2){button2.disabled=!0,button2.textContent=\"Saving\\u2026\";try{const banner=$2(\"directorySponsorBannerV593\")?.files?.[0]||null,logo=$2(\"directorySponsorLogoV593\")?.files?.[0]||null,hero=$2(\"directoryHeroBackgroundV595\")?.files?.[0]||null,headerLogo=$2(\"directoryHeaderLogoV595\")?.files?.[0]||null,footerLogo=$2(\"directoryFooterLogoV595\")?.files?.[0]||null,[homepageBannerDataUrl,logoDataUrl,heroBackgroundDataUrl,headerLogoDataUrl,footerLogoDataUrl]=await Promise.all([fileDataUrlV593(banner),fileDataUrlV593(logo),fileDataUrlV593(hero),fileDataUrlV593(headerLogo),fileDataUrlV593(footerLogo)]),payload={enabled:!1,fallbackSponsorName:$2(\"directorySponsorNameV593\")?.value||\"\",fallbackDestinationUrl:$2(\"directorySponsorUrlV593\")?.value||\"\",fallbackAltText:$2(\"directorySponsorAltV593\")?.value||\"\"};homepageBannerDataUrl&&(payload.fallbackHomepageBannerDataUrl=homepageBannerDataUrl),logoDataUrl&&(payload.fallbackLogoDataUrl=logoDataUrl),heroBackgroundDataUrl&&(payload.heroBackgroundDataUrl=heroBackgroundDataUrl),headerLogoDataUrl&&(payload.headerLogoDataUrl=headerLogoDataUrl),footerLogoDataUrl&&(payload.footerLogoDataUrl=footerLogoDataUrl),await api(\"/api/admin/cardshowindex/sponsor-settings\",{method:\"PATCH\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:3e4}),setNotice2(\"CardShowIndex sponsor and public branding display updated.\"),await loadDirectorySponsorSettingsV593(!0)}finally{button2.disabled=!1,button2.textContent=\"Save sponsor & branding display\"}}async function loadDirectorySponsorsV589(force=!1){const box=$2(\"directorySponsorBookingsV589\");if(box)try{const data=await api(\"/api/admin/cardshowindex/sponsors?limit=40\",{cacheMs:force?0:5e3,timeoutMs:12e3}),rows=data.bookings||[];if(!rows.length){box.innerHTML='<p class=\"orbit-muted\">No sponsor bookings yet. Public sponsorship checkout is available, but nothing can go live without approval.</p>';return}box.innerHTML=rows.map(row=>{const status=String(row.status||\"unknown\"),approval=row.approval||{},creative=row.creative||{},actions=status===\"paid_awaiting_approval\"?`<button type=\"button\" data-csi-sponsor-action=\"approve\" data-id=\"${esc(row.id)}\">Approve for scheduled dates</button>`:status===\"checkout_pending\"?`<button type=\"button\" class=\"secondary\" data-csi-sponsor-action=\"mark-paid\" data-id=\"${esc(row.id)}\">Mark paid</button>`:\"\";return`<article class=\"orbit-directory-sponsor-card-v589\"><div><strong>${esc(row.company||\"Sponsor\")}</strong><span>${esc(row.packageLabel||row.packageId||\"\")} \\xB7 \\xA3${Number(row.priceGbp||0).toLocaleString(\"en-GB\")} \\xB7 ${esc(row.startDate||\"\")} \\u2192 ${esc(row.endDate||\"\")}</span><small>Status: ${esc(status.replaceAll(\"_\",\" \"))}${approval.approved?\" \\xB7 manually approved\":\"\"}</small>${creative.headline?`<p>${esc(creative.headline)}</p>`:\"\"}<small>Assets: ${creative.assetsReady?\"banner + logo ready\":\"INCOMPLETE \\u2014 banner and logo required\"}</small>${creative.bannerMedia?sponsorAssetPreviewV593(creative.bannerMedia,\"2450 \\xD7 200 banner\"):\"\"}${creative.logoMedia?sponsorAssetPreviewV593(creative.logoMedia,\"Sponsor logo\"):\"\"}</div><div>${actions}</div></article>`}).join(\"\")}catch(error){if(box.innerHTML='<p class=\"orbit-muted\">Sponsor bookings could not be loaded right now.</p>',force)throw error}}async function handleDirectorySponsorActionV589(button2){const id=button2.dataset.id,action=button2.dataset.csiSponsorAction;if(!id||!action)return;button2.disabled=!0;const path=action===\"approve\"?`/api/admin/cardshowindex/sponsors/${encodeURIComponent(id)}/approve`:`/api/admin/cardshowindex/sponsors/${encodeURIComponent(id)}/mark-paid`;try{await api(path,{method:\"POST\",body:JSON.stringify({})}),setNotice2(action===\"approve\"?\"Sponsor approved for its scheduled dates.\":\"Sponsor marked paid and is awaiting manual approval.\"),await loadDirectorySponsorsV589(!0)}finally{button2.disabled=!1}}function directoryDateV560(v){if(!v)return\"Date needed\";const d=new Date(v+\"T12:00:00\");return Number.isNaN(d.getTime())?v:d.toLocaleDateString(\"en-GB\",{weekday:\"short\",day:\"numeric\",month:\"short\",year:\"numeric\"})}function directoryLocationV560(e){return[e.venueName,e.city,e.county,e.postcode].filter(Boolean).join(\" \\xB7 \")||\"Location needed\"}function directoryMissingLabelV561(field){return{imageUrl:\"official image\",displayImage:\"usable event image\",description:\"description\",venueName:\"venue\",addressLine1:\"street address\",city:\"town / city\",postcode:\"postcode\",organiser:\"organiser\",landingUrl:\"event / ticket link\",coordinates:\"map coordinates\",independentSources:\"independent evidence\",identityCorroboration:\"identity verification\",identityVerification:\"authoritative source or corroboration\",publicCopy:\"public copy\",startDate:\"event date\",title:\"show title\"}[field]||String(field||\"\").replace(/([a-z])([A-Z])/g,\"$1 $2\").toLowerCase()}function directoryQualityLabelV561(e){const q=e.dataQuality||{},score=Number(q.score||0),status=String(e?.status||\"\").toLowerCase();if(status===\"ignored\")return`${score}% complete \\xB7 ignored / publication suppressed`;if(status===\"past\")return`${score}% complete \\xB7 past event`;if(status===\"rejected\")return`${score}% complete \\xB7 rejected`;if(status===\"approved\"&&e?.canonicalLocked)return`${score}% \\xB7 live published`;if(q.autoPublishReady)return`${score}% \\xB7 auto publish ready`;if(q.hasConflicts)return`${score}% complete \\xB7 ${Number(q.conflictCount||1)} publication blocker${Number(q.conflictCount||1)===1?\"\":\"s\"}`;const blockers=(q.publicationBlockers||[]).map(directoryMissingLabelV561).filter(Boolean);if(blockers.length)return`${score}% \\xB7 blocked: ${blockers.join(\", \")}`;if(q.approvalReady)return`${score}% \\xB7 verified, enrichment continues`;const missing=(q.publicationCriticalMissing||q.missingFields||[]).map(directoryMissingLabelV561).join(\", \");return`${score}%${missing?\" \\xB7 missing \"+missing:\"\"}`}function directoryConflictFieldLabelV575(field){return{title:\"Show title\",venueName:\"Venue name\",city:\"Town / city\",postcode:\"Postcode\",startDate:\"Event date\",endDate:\"End date\",organiser:\"Organiser\",imageUrl:\"Event image\"}[field]||String(field||\"evidence\").replace(/([a-z])([A-Z])/g,\"$1 $2\")}function directoryConflictCurrentValueV575(e,field){return{title:e.title,venueName:e.venueName,city:e.city,postcode:e.postcode,startDate:e.startDate,endDate:e.endDate,organiser:e.organiser,imageUrl:e.imageUrl}[field]||\"\"}function directoryConflictHtmlV575(conflicts=[],e={}){return conflicts.map(c=>{const values=(c.values||[]).map(v=>`<div class=\"orbit-directory-conflict-option-v575\"><div><strong>${esc(v.value||\"Unknown value\")}</strong><span>Authority ${Number(v.authority||0)}</span></div><div class=\"orbit-directory-conflict-sources-v575\">${(v.sources||[]).slice(0,5).map(src=>src.url?`<a href=\"${esc(src.url)}\" target=\"_blank\" rel=\"noopener\">${esc(src.type||\"source\")} \\xB7 ${esc(src.reliability||\"\")} \\u2197</a>`:`<span>${esc(src.type||\"source\")}</span>`).join(\"\")}</div></div>`).join(\"\"),recommended=c.recommendedValue?`<p class=\"orbit-directory-conflict-recommend-v575\"><strong>Orbit recommendation:</strong> ${esc(c.recommendedValue)}</p>`:\"\";return`<article class=\"orbit-directory-conflict-card-v575\"><header><strong>CONFLICT \\u2014 ${esc(directoryConflictFieldLabelV575(c.field))}</strong><span>Publication blocker</span></header><p><b>Current value:</b> ${esc(directoryConflictCurrentValueV575(e,c.field)||\"Not set\")}</p>${values}${recommended}<small>Orbit will auto-resolve aliases and presentation differences. This remains here only while credible evidence still points to materially different facts.</small></article>`}).join(\"\")}function renderDirectorySummaryV560(s={}){orbitDirectorySummaryV567=s;const counts={review_queue:s.reviewQueue??s.needsReview??0,enriching:Number(s.enriching||0)+Number(s.investigating||0)+Number(s.conflict||0),approved:s.approved||0,past:s.past||0,duplicate:s.duplicate||0,all:s.total||0};document.querySelectorAll(\"[data-directory-count-v567]\").forEach(node=>{node.textContent=Number(counts[node.dataset.directoryCountV567]||0).toLocaleString(\"en-GB\")});const box=$2(\"directorySummaryV560\");if(!box)return;const aiBackground=Number(s.enriching||0)+Number(s.investigating||0)+Number(s.conflict||0),audit=s.conflictAudit||{},images=s.imageMetrics||{},imageDetail=`${Number(images.official||0).toLocaleString(\"en-GB\")} official artwork${Number(images.generatedFallback||0)?` \\xB7 ${Number(images.generatedFallback).toLocaleString(\"en-GB\")} temporary fallback`:\"\"}`,researchDetail=`Under 80% \\xB7 ${Number(audit.materialEvents||s.conflict||0).toLocaleString(\"en-GB\")} material conflicts${Number(audit.noiseEvents||0)?` \\xB7 ${Number(audit.noiseEvents).toLocaleString(\"en-GB\")} normalised`:\"\"}`;box.innerHTML=[[\"All indexed\",s.total||0,\"Known UK show records\"],[\"AI researching\",aiBackground,researchDetail],[\"Your decisions\",s.reviewQueue??s.needsReview??0,\"Only genuine decisions Orbit cannot resolve safely\"],[\"Live published\",s.approved||0,imageDetail||\"Locked public listings\"]].map(x=>`<article class=\"orbit-summary-card orbit-directory-headline-card-v567\"><small>${esc(x[0])}</small><strong>${Number(x[1]).toLocaleString(\"en-GB\")}</strong><span>${esc(x[2])}</span></article>`).join(\"\");const n=$2(\"directoryDiscoveryNoticeV560\"),r=s.lastDiscoveryRun,enr=s.lastEnrichmentRun,rev=s.lastApprovedVerificationRun;if(n){const coverage=r?.coverage||{},running=r?.status===\"running\",coverageText=coverage.planTasks?` \\xB7 ${Number(coverage.tasksThisRun||0)}/${Number(coverage.planTasks||0)} discovery lanes${coverage.longRangeFuture?\" \\xB7 all future years\":\"\"}`:\"\",firstPartyText=Number(r?.firstParty?.found||0)?` \\xB7 ${Number(r.firstParty.found).toLocaleString(\"en-GB\")} Orbit first-party synced`:\"\";n.innerHTML=`<strong>${Number(s.registeredSources||0)} registered sources${Number(s.learnedResearchSources||0)?` + ${Number(s.learnedResearchSources)} learned research source${Number(s.learnedResearchSources)===1?\"\":\"s\"}`:\"\"} \\xB7 ${esc(s.verificationPolicy||\"one authoritative source or corroborating independent sources\")}</strong><span>${r?`${running?\"Discovery running\":\"Discovery \"+esc(prettyDate(r.completedAt||r.startedAt||\"\"))}: ${Number(r.found||0)} found \\xB7 ${Number(r.created||0)} new \\xB7 ${Number(r.merged||0)} refreshed${firstPartyText}${coverageText}.`:\"No discovery run yet.\"}${enr?` Enrichment ${esc(prettyDate(enr.completedAt||enr.startedAt||\"\"))}: ${Number(enr.investigated||0)} checked, ${Number(enr.enriched||0)} improved.`:\"\"}${rev?` Approved recheck ${esc(prettyDate(rev.completedAt||rev.startedAt||\"\"))}: ${Number(rev.investigated||0)} checked.`:\"\"} Organiser is optional. Routine title, venue and geography variants are resolved automatically; only genuinely material attendee-impacting conflicts remain in the Review Queue.</span>`}}function renderDirectoryEventsV560(rows=[],pagination=null){const box=$2(\"directoryEventsV560\");if(!box)return;orbitDirectoryRowsV560=rows;const page=Number(pagination?.page||orbitDirectoryPageV6001||1),hasMore=!!pagination?.hasMore;if(!rows.length){box.innerHTML=\"<div class='orbit-empty-state'><strong>No events in this view</strong><span>Run discovery/enrichment or choose another status.</span></div>\"+(page>1?`<div class=\"orbit-directory-pager-v6001\"><button type=\"button\" class=\"secondary\" data-directory-page-v6001=\"${page-1}\">Previous 50</button></div>`:\"\");return}box.innerHTML=`<table><thead><tr><th>Show</th><th>Date</th><th>Location</th><th>Data quality</th><th>Evidence</th><th>Status</th><th></th></tr></thead><tbody>${rows.map(e=>{const q=e.dataQuality||{};return`<tr><td><strong>${esc(e.title||\"Untitled event\")}</strong>${e.organiser?`<br><small>${esc(e.organiser)}</small>`:\"\"}</td><td>${esc(directoryDateV560(e.startDate))}${e.startTime?`<br><small>${esc(e.startTime)}</small>`:\"\"}</td><td>${esc(directoryLocationV560(e))}</td><td><strong>${esc(directoryQualityLabelV561(e))}</strong><br><small>${q.conflictCount?`${Number(q.conflictCount)} conflict${Number(q.conflictCount)===1?\"\":\"s\"}`:q.autoPublishReady?\"Eligible for automatic publication\":(q.publicationBlockers||[]).length?`Still needed: ${(q.publicationBlockers||[]).map(directoryMissingLabelV561).join(\", \")}`:q.approvalReady?\"Fields verified; confidence enrichment continues\":e.status===\"enriching\"?\"Working in the AI background queue\":\"Enrichment continues automatically\"}</small></td><td><strong>${Number(q.independentSourceCount||0)} independent</strong><br><small>${Number(q.sourceCount||(e.sources||[]).length)} evidence source${Number(q.sourceCount||(e.sources||[]).length)===1?\"\":\"s\"}</small></td><td>${esc(String(e.status||\"needs_review\").replace(/_/g,\" \"))}</td><td><button type=\"button\" class=\"secondary\" data-directory-open-v560=\"${esc(e.id)}\">Preview</button></td></tr>`}).join(\"\")}</tbody></table><div class=\"orbit-directory-pager-v6001\"><span>Page ${page} \\xB7 up to ${ORBIT_DIRECTORY_PAGE_SIZE_V6001} shows at a time</span><div>${page>1?`<button type=\"button\" class=\"secondary\" data-directory-page-v6001=\"${page-1}\">Previous 50</button>`:\"\"}${hasMore?`<button type=\"button\" class=\"secondary\" data-directory-page-v6001=\"${page+1}\">Next 50</button>`:\"\"}</div></div>`}function renderDirectoryLocalErrorV6001(error,{stale=!1}={}){const box=$2(\"directoryEventsV560\");if(!box)return;const message=error?.code===\"ADMIN_REQUEST_TIMEOUT\"?\"This Directory view took too long to respond.\":error?.message||\"This Directory view could not be loaded.\",warning=`<div class=\"orbit-directory-local-error-v6001\"><div><strong>${stale?\"Showing the last good view\":\"Directory view unavailable\"}</strong><span>${esc(message)} This affects only this Directory panel.</span></div><button type=\"button\" class=\"secondary\" data-directory-retry-v6001>Retry</button></div>`;stale?box.insertAdjacentHTML(\"afterbegin\",warning):(box.innerHTML=warning,orbitDirectoryRowsV560=[])}function setDirectoryReviewCountV599(value){const count=Math.max(0,Number(value)||0);document.querySelectorAll('[data-directory-count-v567=\"review_queue\"]').forEach(node=>{node.textContent=count.toLocaleString(\"en-GB\")}),orbitDirectorySummaryV567&&(orbitDirectorySummaryV567={...orbitDirectorySummaryV567,reviewQueue:count,needsReview:count})}function directoryReviewSourcesV586(item={}){const raw=[...Array.isArray(item.evidence)?item.evidence:[],...Array.isArray(item.options)?item.options.flatMap(option=>Array.isArray(option.sources)?option.sources:[]):[]],seen=new Set,out=[];for(const source of raw){const url=String(source?.url||source?.sourceUrl||\"\").trim();if(!(!url||seen.has(url))&&(seen.add(url),out.push({url,label:String(source?.label||source?.title||source?.sourceType||source?.type||\"Evidence source\").trim()||\"Evidence source\"}),out.length>=8))break}return out}function renderDirectoryReviewQueueV586(items=[],totalOpen=items.length,reviewSummary={}){setDirectoryReviewCountV599(totalOpen);const box=$2(\"directoryEventsV560\");if(!box)return;orbitDirectoryRowsV560=[];const reasons=Array.isArray(reviewSummary?.byReason)?reviewSummary.byReason.slice(0,6):[],machine=Number(reviewSummary?.machineResolvable||0),reasonHtml=reasons.length?`<div class=\"orbit-directory-decision-sources-v586\"><span>Human decisions by reason:</span>${reasons.map(r=>`<span>${esc(r.reason||\"decision\")} \\xB7 ${Number(r.count||0)}</span>`).join(\"\")}</div>`:\"\";if(!items.length){box.innerHTML=`<div class='orbit-directory-review-queue-v586 is-complete'><div class='orbit-directory-review-complete-v586'><strong>Review Queue clear \\u2713</strong><span>Orbit has no genuine decisions waiting for you. Routine enrichment continues automatically.</span></div>${reasonHtml}</div>`;return}const item=items[0],options=item.options||[],sources=directoryReviewSourcesV586(item),machineAction=machine>0?`<button type=\"button\" class=\"secondary\" data-directory-review-requeue-machine-v655>Return ${machine.toLocaleString(\"en-GB\")} machine item${machine===1?\"\":\"s\"} to enrichment</button>`:\"\";box.innerHTML=`<div class=\"orbit-directory-review-queue-v586\"><div class=\"orbit-directory-review-progress-v586\"><strong>Review Queue</strong><span>${Number(totalOpen||items.length)} genuine decision${Number(totalOpen||items.length)===1?\"\":\"s\"} remaining</span></div>${reasonHtml}${machineAction?`<div class=\"orbit-directory-decision-actions-v586\">${machineAction}</div>`:\"\"}<article class=\"orbit-directory-decision-card-v586\"><p class=\"orbit-kicker\">${esc(String(item.kind||\"decision\").replace(/_/g,\" \"))}</p><h3>${esc(item.question||\"Orbit needs one decision\")}</h3><p class=\"orbit-directory-decision-event-v586\"><strong>${esc(item.eventTitle||\"Directory event\")}</strong>${item.eventDate?` \\xB7 ${esc(directoryDateV560(item.eventDate))}`:\"\"}${item.venueName?` \\xB7 ${esc(item.venueName)}`:\"\"}</p><p class=\"orbit-directory-decision-explain-v586\">${esc(item.explanation||\"Orbit could not safely resolve this from the available evidence.\")}</p><div class=\"orbit-directory-decision-options-v586\">${options.map((o,index)=>{const role=o.role||(item.kind===\"live_change\"?index===0?\"current\":\"proposed\":\"option\"),roleLabel=role===\"current\"?\"Current value\":role===\"proposed\"?\"Proposed new value\":`Option ${index+1}`,valueText=o.displayValue??o.value??\"\";return`<button type=\"button\" class=\"orbit-directory-decision-option-v586${String(o.value)===String(item.recommendedValue)?\" is-recommended\":\"\"}\" data-directory-review-choice-v586=\"${esc(String(o.value??o.displayValue??\"\"))}\"><small class=\"orbit-directory-value-role-v588\">${esc(roleLabel)}</small><strong class=\"orbit-directory-value-text-v588\">${esc(String(valueText||\"Not set\"))}</strong><span>${esc(o.label||\"Use this value\")}</span>${String(o.value)===String(item.recommendedValue)?'<small class=\"orbit-directory-recommendation-v588\">Orbit recommendation</small>':\"\"}</button>`}).join(\"\")}</div>${sources.length?`<div class=\"orbit-directory-decision-sources-v586\"><span>Check the evidence if you want:</span>${sources.map(src=>`<a href=\"${esc(src.url)}\" target=\"_blank\" rel=\"noopener\">${esc(src.label)} \\u2197</a>`).join(\"\")}</div>`:\"\"}<label class=\"orbit-directory-decision-note-v586\"><span>Optional note</span><textarea id=\"directoryReviewNoteV586\" rows=\"2\" placeholder=\"Only add a note if it will help Orbit remember why.\"></textarea></label><div class=\"orbit-directory-decision-actions-v586\"><button type=\"button\" class=\"secondary\" data-directory-review-investigate-v586>Investigate further</button><button type=\"button\" class=\"secondary\" data-directory-review-skip-v586>Skip for now</button></div><p id=\"directoryReviewResultV586\" class=\"orbit-muted\" aria-live=\"polite\"></p></article></div>`;const submit=async(decision,value=null)=>{const result=$2(\"directoryReviewResultV586\");result&&(result.textContent=\"Saving your decision\\u2026\");try{const saved=await api(\"/api/admin/directory/review-queue/\"+encodeURIComponent(item.id)+\"/decision\",{method:\"POST\",body:JSON.stringify({decision,value,note:$2(\"directoryReviewNoteV586\")?.value||\"\"}),cacheMs:0,timeoutMs:2e4}),remaining=Math.max(0,Number(saved.open??Math.max(0,Number(totalOpen||1)-1)));setDirectoryReviewCountV599(remaining),orbitDirectoryViewCacheV567.delete(\"review_queue|\"),box.classList.add(\"is-advancing\"),window.setTimeout(()=>{box.classList.remove(\"is-advancing\"),saved.next?renderDirectoryReviewQueueV586([saved.next],remaining,reviewSummary):remaining===0?renderDirectoryReviewQueueV586([],0,reviewSummary):loadDirectoryV560(!0).catch(err=>setNotice2(err.message||err,!0)),api(\"/api/admin/directory/summary\",{cacheMs:0,timeoutMs:1e4}).then(summary=>renderDirectorySummaryV560(summary)).catch(()=>{})},150)}catch(err){result&&(result.textContent=err.message||String(err))}};box.querySelectorAll(\"[data-directory-review-choice-v586]\").forEach(button2=>button2.addEventListener(\"click\",()=>submit(\"choose\",button2.dataset.directoryReviewChoiceV586))),box.querySelector(\"[data-directory-review-investigate-v586]\")?.addEventListener(\"click\",()=>submit(\"investigate\")),box.querySelector(\"[data-directory-review-skip-v586]\")?.addEventListener(\"click\",()=>submit(\"skip\")),box.querySelector(\"[data-directory-review-requeue-machine-v655]\")?.addEventListener(\"click\",async e=>{const button2=e.currentTarget;setLoading(button2,!0);try{const moved=await api(\"/api/admin/directory/review-queue/requeue-machine\",{method:\"POST\",body:JSON.stringify({limit:5e3}),cacheMs:0,timeoutMs:3e4});setNotice2(`${Number(moved.migrated||0).toLocaleString(\"en-GB\")} machine-solvable review item${Number(moved.migrated||0)===1?\"\":\"s\"} returned to automated enrichment.`),orbitDirectoryViewCacheV567.clear(),await loadDirectoryV560(!0,{viewChanged:!0})}finally{setLoading(button2,!1)}})}function renderDirectoryDuplicatesV586(items=[]){const box=$2(\"directoryEventsV560\");if(box){if(orbitDirectoryRowsV560=items,!items.length){box.innerHTML=\"<div class='orbit-empty-state'><strong>No duplicates waiting</strong><span>High-confidence duplicates are quarantined here for seven days before the redundant record is removed. A lightweight tombstone remains so it cannot simply reappear.</span></div>\";return}box.innerHTML=`<div class=\"orbit-directory-duplicates-v586\"><div class=\"orbit-info-banner\"><strong>${items.length} duplicate${items.length===1?\"\":\"s\"} in the 7-day safety window</strong><span>Useful evidence has already been merged into the canonical event. If Orbit got one wrong, restore it here and that pair will never be auto-merged again.</span></div>${items.map(e=>`<article class=\"orbit-directory-duplicate-card-v586\"><div><strong>${esc(e.title||\"Duplicate event\")}</strong><span>${esc(directoryDateV560(e.startDate))} \\xB7 ${esc(directoryLocationV560(e))}</span><small>Duplicate of ${esc(e.duplicateOf||\"canonical event\")} \\xB7 automatic deletion ${esc(e.duplicateDeleteAfter?prettyDate(e.duplicateDeleteAfter):\"after 7-day safety window\")}</small></div><div><button type=\"button\" class=\"secondary\" data-directory-open-v560=\"${esc(e.id)}\">Open</button><button type=\"button\" class=\"secondary\" data-directory-not-duplicate-v586=\"${esc(e.id)}\">Not a duplicate</button></div></article>`).join(\"\")}</div>`,box.querySelectorAll(\"[data-directory-not-duplicate-v586]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const note=window.prompt(\"Why is this not a duplicate? Orbit will remember your decision and will not auto-merge this pair again.\",\"\");if(note!==null){button2.disabled=!0;try{await api(\"/api/admin/directory/duplicates/\"+encodeURIComponent(button2.dataset.directoryNotDuplicateV586)+\"/restore\",{method:\"POST\",body:JSON.stringify({note}),cacheMs:0,timeoutMs:2e4}),await loadDirectoryV560(!0)}catch(err){setNotice2(err.message||err,!0),button2.disabled=!1}}}))}}function updateDirectoryHeadingV586(){const section=$2(\"orbitDirectoryModuleV560\"),header=section?.querySelector(\".orbit-directory-review-heading-v565\"),title=header?.querySelector(\"h3\"),copy=header?.querySelector(\"p\"),searchWrap=$2(\"directorySearchV560\")?.closest(\"label\");if(!title||!copy)return;const map={review_queue:[\"Review Queue\",\"One decision at a time. Orbit only asks when credible evidence genuinely needs your judgement.\"],enriching:[\"Researching\",\"Background agents are resolving incomplete records. You normally do not need to do anything here.\"],approved:[\"Approved listings\",\"Search and edit the live catalogue. Any field you edit is locked to your decision and agents cannot silently undo it.\"],past:[\"Past events\",\"Historical events remain useful intelligence for recurring shows, organisers, venues and future discovery.\"],duplicate:[\"Duplicates\",\"High-confidence duplicates are held for seven days so you can undo a bad match before the redundant record is removed.\"],all:[\"All shows\",\"Complete Directory record view for diagnostics and search.\"]},selected=map[orbitDirectoryFilterV560]||map.enriching;title.textContent=selected[0],copy.textContent=selected[1],searchWrap&&(searchWrap.hidden=[\"review_queue\",\"duplicate\"].includes(orbitDirectoryFilterV560))}function renderDirectoryLoadingV567(){const box=$2(\"directoryEventsV560\");box&&(box.innerHTML=\"<div class='orbit-empty-state orbit-directory-loading-v567'><strong>Loading this Directory view\\u2026</strong><span>The previous view has been cleared so stale rows are never shown under the wrong tab.</span></div>\",box.setAttribute(\"aria-busy\",\"true\")),orbitDirectoryRowsV560=[]}async function loadDirectoryV560(force=!1,{viewChanged=!1,keepPage=!1}={}){ensureDirectoryModuleV560(),updateDirectoryHeadingV586(),viewChanged&&!keepPage&&(orbitDirectoryPageV6001=1);const q=$2(\"directorySearchV560\")?.value||\"\",paged=![\"review_queue\",\"duplicate\"].includes(orbitDirectoryFilterV560),page=paged?Math.max(1,orbitDirectoryPageV6001):1,cacheKey=orbitDirectoryFilterV560+\"|\"+q.trim().toLowerCase()+\"|p\"+page,cached=orbitDirectoryViewCacheV567.get(cacheKey),fresh=cached&&cached.expiresAt>Date.now();if(viewChanged&&orbitDirectoryAbortV6001&&(orbitDirectoryAbortV6001.abort(),orbitDirectoryAbortV6001=null),!force&&fresh)return cached.summary&&renderDirectorySummaryV560(cached.summary),orbitDirectoryFilterV560===\"review_queue\"?renderDirectoryReviewQueueV586(cached.items||[],cached.open??cached.items?.length??0,cached.reviewSummary||{}):orbitDirectoryFilterV560===\"duplicate\"?renderDirectoryDuplicatesV586(cached.items||[]):renderDirectoryEventsV560(cached.events||[],cached.pagination||{page,hasMore:!1}),{success:!0,cached:!0};(viewChanged||!cached)&&renderDirectoryLoadingV567();const requestId=++orbitDirectoryReadV6001,controller=new AbortController;orbitDirectoryAbortV6001&&orbitDirectoryAbortV6001.abort(),orbitDirectoryAbortV6001=controller;const summaryPromise=api(\"/api/admin/directory/summary\",{cacheMs:force?0:5e3,timeoutMs:1e4});let dataPromise;orbitDirectoryFilterV560===\"review_queue\"?dataPromise=api(\"/api/admin/directory/review-queue?limit=25\",{cacheMs:force?0:2500,timeoutMs:1e4,signal:controller.signal}):orbitDirectoryFilterV560===\"duplicate\"?dataPromise=api(\"/api/admin/directory/duplicates?limit=100\",{cacheMs:force?0:2500,timeoutMs:1e4,signal:controller.signal}):dataPromise=api(\"/api/admin/directory/events?status=\"+encodeURIComponent(orbitDirectoryFilterV560)+\"&q=\"+encodeURIComponent(q)+\"&page=\"+page+\"&limit=\"+ORBIT_DIRECTORY_PAGE_SIZE_V6001,{cacheMs:force?0:3e3,timeoutMs:1e4,signal:controller.signal});const[summaryResult,dataResult]=await Promise.allSettled([summaryPromise,dataPromise]);if(requestId!==orbitDirectoryReadV6001)return{success:!1,staleRequest:!0};orbitDirectoryAbortV6001===controller&&(orbitDirectoryAbortV6001=null);const summary=summaryResult.status===\"fulfilled\"?summaryResult.value:cached?.summary||orbitDirectorySummaryV567||null;if(summary)renderDirectorySummaryV560(summary);else if(summaryResult.status===\"rejected\"){const summaryBox=$2(\"directorySummaryV560\");summaryBox&&(summaryBox.innerHTML='<div class=\"orbit-directory-summary-warning-v6001\">Directory counts are temporarily unavailable. The event view can still be used.</div>')}if(dataResult.status!==\"fulfilled\")return dataResult.reason?.code===\"ADMIN_REQUEST_CANCELLED\"?{success:!1,cancelled:!0}:cached?(orbitDirectoryFilterV560===\"review_queue\"?renderDirectoryReviewQueueV586(cached.items||[],cached.open??cached.items?.length??0,cached.reviewSummary||{}):orbitDirectoryFilterV560===\"duplicate\"?renderDirectoryDuplicatesV586(cached.items||[]):renderDirectoryEventsV560(cached.events||[],cached.pagination||{page,hasMore:!1}),renderDirectoryLocalErrorV6001(dataResult.reason,{stale:!0}),{success:!0,stale:!0}):(renderDirectoryLocalErrorV6001(dataResult.reason),{success:!1,error:dataResult.reason});const data=dataResult.value,events=data.events||[],items=data.items||[],open=Number(data.open??items.length),reviewSummary=data.summary||{},pagination=data.pagination||{page,limit:ORBIT_DIRECTORY_PAGE_SIZE_V6001,hasMore:!1};return orbitDirectoryViewCacheV567.set(cacheKey,{summary,events,items,open,reviewSummary,pagination,expiresAt:Date.now()+8e3}),orbitDirectoryFilterV560===\"review_queue\"?renderDirectoryReviewQueueV586(items,open,reviewSummary):orbitDirectoryFilterV560===\"duplicate\"?renderDirectoryDuplicatesV586(items):renderDirectoryEventsV560(events,pagination),data}function directorySpendV625(run={}){const s=run.spend||{},estimate=Number(s.estimatedUsd||0),settled=s.reconciledUsd==null?null:Number(s.reconciledUsd||0),input=Number(s.inputTokens||0),cached=Number(s.cachedInputTokens||0),output=Number(s.outputTokens||0),reasoning=Number(s.reasoningTokens||0),tools=Number(s.toolCalls||0),calls=Number(s.providerCalls||0),tokenUsd=Number(s.estimatedTokenUsd||0),toolUsd=Number(s.estimatedToolUsd||0),reconciliationAvailable=s.providerReconciliationAvailable!==!1&&settled!=null,unattributedUsd=s.unattributedProviderSpendUsd==null?null:Number(s.unattributedProviderSpendUsd),unattributedCalls=Number(s.unattributedProviderCalls||0),legacy=s.attribution===\"legacy_time_window\",headline=s.reconciliationPending?`Estimated $${estimate.toFixed(3)} \\xB7 provider ledger settling`:reconciliationAvailable?`Provider ledger $${settled.toFixed(3)} \\xB7 usage estimate $${estimate.toFixed(3)}`:`Usage estimate $${estimate.toFixed(3)} \\xB7 provider reconciliation unavailable`,warning=reconciliationAvailable?unattributedUsd>.01||unattributedCalls>0?` <b class=\"orbit-directory-spend-warning-v627\">UNATTRIBUTED PROVIDER SPEND \\xB7 $${Number(unattributedUsd||0).toFixed(3)} \\xB7 ${unattributedCalls} unmatched call${unattributedCalls===1?\"\":\"s\"}</b>`:legacy?' <b class=\"orbit-directory-spend-warning-v627 is-legacy\">Legacy time-window attribution \\xB7 not exact run attribution</b>':\"\":' <b class=\"orbit-directory-spend-warning-v627 is-unavailable\">PROVIDER RECONCILIATION UNAVAILABLE \\xB7 estimate is not settled spend</b>';return`${headline} \\xB7 ${calls.toLocaleString(\"en-GB\")} provider call${calls===1?\"\":\"s\"} \\xB7 tokens ${Number(s.totalTokens||0).toLocaleString(\"en-GB\")} \\xB7 tools ${tools.toLocaleString(\"en-GB\")} \\xB7 token est. $${tokenUsd.toFixed(3)} \\xB7 tool est. $${toolUsd.toFixed(3)} \\xB7 in ${input.toLocaleString(\"en-GB\")} / cached ${cached.toLocaleString(\"en-GB\")} / out ${output.toLocaleString(\"en-GB\")} / reasoning ${reasoning.toLocaleString(\"en-GB\")}${warning}`}function directoryModelRoutingMarkupV625(routing={}){const models=Array.isArray(routing.allowedModels)&&routing.allowedModels.length?routing.allowedModels:[\"gpt-6-luna\",\"gpt-6-sol\",\"gpt-6-astra\"],routes=Object.values(routing.routes||{});if(!routes.length)return\"\";const opts=(value,allowNone=!1)=>`${allowNone?'<option value=\"\">None</option>':\"\"}${models.map(m=>`<option value=\"${esc(m)}\" ${m===value?\"selected\":\"\"}>${esc(m.replace(\"gpt-6-\",\"GPT-6 \"))}</option>`).join(\"\")}`;return`<details class=\"orbit-directory-model-routing-v626\"><summary><span><small>DIRECTORY MODEL ROUTING</small><strong>Luna / Sol / Astra policy</strong></span><span>Directory only</span></summary><div class=\"orbit-directory-model-routing-grid-v626\">${routes.map(r=>`<label><span>${esc(r.label||r.key)}</span><small>Default</small><select data-directory-model-default-v625=\"${esc(r.key)}\">${opts(r.defaultModel,!1)}</select><small>Escalation</small><select data-directory-model-escalation-v625=\"${esc(r.key)}\">${opts(r.escalationModel||\"\",!0)}</select></label>`).join(\"\")}</div><div class=\"orbit-directory-model-routing-actions-v626\"><span>Changes affect CardShowIndex Directory work only.</span><button type=\"button\" class=\"secondary\" data-directory-model-save-v625>Save routing</button></div></details>`}async function saveDirectoryModelRoutingV625(button2){const box=$2(\"directoryControlCentreV625\"),routes={};box?.querySelectorAll(\"[data-directory-model-default-v625]\").forEach(sel=>{const key=sel.dataset.directoryModelDefaultV625;routes[key]??={},routes[key].defaultModel=sel.value}),box?.querySelectorAll(\"[data-directory-model-escalation-v625]\").forEach(sel=>{const key=sel.dataset.directoryModelEscalationV625;routes[key]??={},routes[key].escalationModel=sel.value||null}),setLoading(button2,!0);try{await api(\"/api/admin/directory/model-routing\",{method:\"POST\",body:JSON.stringify({routes}),cacheMs:0,timeoutMs:15e3}),setNotice2(\"Directory model routing saved. New manual runs will use the selected policy.\"),await loadDirectoryControlCentreV625(!0)}finally{setLoading(button2,!1)}}function directoryRunControlsV625(run={}){const st=String(run.status||\"\").toLowerCase(),display=String(run.displayStatus||st).toLowerCase();return run.id?[\"pausing\",\"stopping\"].includes(display)?`<div class=\"orbit-directory-agent-controls-v626\"><span class=\"orbit-directory-control-pending-v626\">${display===\"pausing\"?\"Pausing after current in-flight work\\u2026\":\"Stopping after current in-flight work\\u2026\"}</span></div>`:[\"queued\",\"running\"].includes(st)?`<div class=\"orbit-directory-agent-controls-v626\"><button type=\"button\" class=\"secondary\" data-directory-run-control-v625=\"pause\" data-directory-run-id-v625=\"${esc(run.id)}\">Pause</button><button type=\"button\" class=\"secondary danger\" data-directory-run-control-v625=\"stop\" data-directory-run-id-v625=\"${esc(run.id)}\">Stop</button></div>`:st===\"paused\"?`<div class=\"orbit-directory-agent-controls-v626\"><button type=\"button\" data-directory-run-control-v625=\"resume\" data-directory-run-id-v625=\"${esc(run.id)}\">Resume</button><button type=\"button\" class=\"secondary danger\" data-directory-run-control-v625=\"stop\" data-directory-run-id-v625=\"${esc(run.id)}\">Stop</button></div>`:\"\":\"\"}function directoryDiscoveryCountersV626(run={}){const m=run.metrics||{},p=run.progress||{};return Number(m.found||m.created||m.merged||m.rejected||m.sourceTasksTotal||p.total)?`<div class=\"orbit-directory-discovery-counters-v626\"><span><small>Sources</small><strong>${Number(m.sourceTasksCompleted||p.completed||0)} / ${Number(m.sourceTasksTotal||p.total||0)}</strong></span><span><small>Candidates</small><strong>${Number(m.found||0)}</strong></span><span><small>New</small><strong>${Number(m.created||0)}</strong></span><span><small>Existing</small><strong>${Number(m.merged||0)}</strong></span><span><small>Rejected</small><strong>${Number(m.rejected||0)}</strong></span><span><small>Failed / zero</small><strong>${Number(m.sourceTasksFailed||0)} / ${Number(m.sourceTasksZero||0)}</strong></span></div>`:\"\"}function directorySourceOutcomesV626(run={}){const finalRows=Array.isArray(run.resultBreakdown?.sources)?run.resultBreakdown.sources:[],activity=(Array.isArray(run.activity)?run.activity:[]).filter(x=>Number(x.found||x.created||x.merged||x.rejected)||x.error||x.zeroReason||x.sourceUrl).slice(-12).reverse(),rows=finalRows.length?finalRows.slice(-12).reverse():activity;return rows.length?`<div class=\"orbit-directory-source-outcomes-v626\"><div class=\"orbit-directory-subhead-v626\"><strong>Recent source outcomes</strong><span>What Discovery actually found or why a source failed</span></div>${rows.map(x=>{const name=x.taskLabel||x.targetTitle||x.sourceUrl||\"Source task\",found=Number(x.found||0),created=Number(x.created||0),merged=Number(x.merged||0),rejected=Number(x.rejected||0),reason=x.error||x.zeroReason||(found?\"\":\"No candidates returned\");return`<article class=\"${x.error?\"is-error\":found?\"is-ok\":\"is-zero\"}\"><div><strong>${esc(name)}</strong>${x.sourceUrl?`<small>${esc(x.sourceUrl)}</small>`:\"\"}</div><span>${found} found \\xB7 ${created} new \\xB7 ${merged} existing \\xB7 ${rejected} rejected${reason?` \\xB7 ${esc(reason)}`:\"\"}</span></article>`}).join(\"\")}</div>`:\"\"}function directoryLiveRunMarkupV625(payload={}){const run=(Array.isArray(payload.runs)?payload.runs:[]).find(r=>[\"queued\",\"running\",\"paused\"].includes(String(r.status||\"\").toLowerCase()));if(!run)return\"\";const activity=(Array.isArray(run.activity)?run.activity:[]).slice(-8).reverse(),progress=run.progress||{},pct=Number(progress.total)>0?Math.min(100,Math.round(Number(progress.completed||0)/Number(progress.total)*100)):0;return`<section class=\"orbit-directory-live-run-v626\"><div class=\"orbit-directory-live-run-head-v626\"><div><small>LIVE RUN CONSOLE</small><strong>${esc(run.label||run.agentId||\"Directory component\")}</strong><span>${esc(String(run.displayStatus||run.status||\"running\").replace(/_/g,\" \"))}</span></div><div class=\"orbit-directory-live-progress-number-v626\">${Number(progress.total||0)?`${Number(progress.completed||0)} / ${Number(progress.total||0)}`:\"Working\"}</div></div>${Number(progress.total||0)?`<div class=\"orbit-directory-live-progress-v626\"><i style=\"width:${pct}%\"></i></div>`:\"\"}<div class=\"orbit-directory-live-grid-v626\"><div><small>Current step</small><strong>${esc(run.currentStep||\"Starting\")}</strong></div><div><small>Current record / task</small><strong>${esc(run.currentTarget?.title||run.currentTarget?.id||\"Waiting for first item\")}</strong></div><div><small>Current source</small><strong>${esc(run.currentSource||\"No source reported yet\")}</strong></div><div><small>Configured model</small><strong>${esc(run.model||\"deterministic\")}</strong></div></div><div class=\"orbit-directory-live-spend-v626\"><strong>Live provider usage</strong><span>${directorySpendV625(run)}</span></div>${run.agentId===\"event-planner-discovery\"?directoryDiscoveryCountersV626(run):\"\"}${activity.length?`<ol class=\"orbit-directory-live-timeline-v626\">${activity.map(item=>`<li><time>${esc(prettyDate(item.at||\"\"))}</time><span>${esc(String(item.phase||\"working\").replace(/_/g,\" \"))}${item.targetTitle?` \\xB7 ${esc(item.targetTitle)}`:\"\"}${Number(item.found||0)||Number(item.created||0)||Number(item.merged||0)?` \\xB7 ${Number(item.found||0)} found / ${Number(item.created||0)} new / ${Number(item.merged||0)} existing`:\"\"}${item.error?` \\xB7 ${esc(item.error)}`:\"\"}</span></li>`).join(\"\")}</ol>`:'<small class=\"orbit-directory-live-empty-v626\">Activity will appear as the component reaches records or sources.</small>'}${run.agentId===\"event-planner-discovery\"?directorySourceOutcomesV626(run):\"\"}${directoryRunControlsV625(run)}</section>`}function directoryPublicationFunnelV627(run={}){const f=run.resultBreakdown?.funnel;if(!f)return\"\";const blockers=Array.isArray(f.topBlockers)?f.topBlockers.slice(0,5):[];return`<div class=\"orbit-directory-publication-funnel-v627\"><strong>Publication funnel</strong><span>${Number(f.unpublished||0)} unpublished \\u2192 ${Number(f.ready||0)} ready \\u2192 ${Number(f.attempted||0)} attempted \\u2192 ${Number(f.published||0)} published</span>${blockers.length?`<small>Top blockers: ${blockers.map(x=>`${esc(x.reason||\"unknown\")} (${Number(x.count||0)})`).join(\" \\xB7 \")}</small>`:\"\"}</div>`}function directoryAgentCardV626(a,lock={}){const r=a.lastRun||{},busy=[\"queued\",\"running\",\"paused\"].includes(String(r.status||\"\")),display=String(r.displayStatus||r.status||\"Not run\").replace(/_/g,\" \"),m=r.metrics||{},isDiscovery=a.id===\"event-planner-discovery\",prefix=a.order?`${a.order} \\xB7 `:a.supporting?\"SUPPORTING \\xB7 \":\"\";return`<article class=\"orbit-directory-agent-card-v626 ${busy?\"is-active\":\"\"} ${a.supporting?\"is-supporting-v627\":\"\"}\"><div class=\"orbit-directory-agent-card-head-v626\"><div><small>${esc(prefix+(a.stage||\"Directory\"))}</small><strong>${esc(a.label||a.id)}</strong></div><span>${esc(a.model||\"configurable\")}</span></div><p>${esc(a.description||\"\")}</p>${r.id?`<div class=\"orbit-directory-agent-last-v626\"><div><b>${esc(display)}</b><small>${r.updatedAt?`Updated ${esc(prettyDate(r.updatedAt))}`:\"\"}</small></div><span>${directorySpendV625(r)}</span>${isDiscovery?directoryDiscoveryCountersV626(r):`<span>${Number(m.attempted||0)} attempted \\xB7 ${Number(m.solved||0)} solved \\xB7 ${Number(m.blocked||0)} blocked \\xB7 ${Number(m.failed||0)} failed</span>`}${r.message?`<small>${esc(r.message)}</small>`:\"\"}${a.id===\"directory-auto-publisher\"?directoryPublicationFunnelV627(r):\"\"}</div>`:'<div class=\"orbit-directory-agent-last-v626\"><span>Not manually proven yet.</span></div>'}${directoryRunControlsV625(r)}<button type=\"button\" ${lock.active&&!busy?\"disabled\":\"\"} data-directory-agent-run-v625=\"${esc(a.id)}\">Run manually</button>${isDiscovery&&r.id?directorySourceOutcomesV626(r):\"\"}</article>`}function renderDirectoryControlCentreV625(payload={}){const box=$2(\"directoryControlCentreV625\");if(!box)return;const f=payload.forensics||{},providerCost=f.providerCostReconciliation||{},lock=payload.executionLock||{},queue=f.queues||{},signals=Array.isArray(f.signals)?f.signals:[],progress=f.progress||{},agents=Array.isArray(payload.agents)?payload.agents:[],forensicsAgent=agents.find(a=>a.id===\"pipeline-forensics\"),coreAgents=agents.filter(a=>a.coreStage&&![\"pipeline-forensics\",\"directory-pipeline\"].includes(a.id)),supportingAgents=agents.filter(a=>a.supporting&&![\"directory-pipeline\"].includes(a.id)),stageRows=[[\"Discovered\",progress.candidate],[\"Enriched\",progress.enrichment],[\"Geography\",progress.geography],[\"Images\",progress.image],[\"Organiser\",progress.organiser],[\"Dedupe\",progress.dedupe],[\"Published\",progress.publication]];box.innerHTML=`<div class=\"orbit-directory-control-head-v626\"><div><p class=\"orbit-kicker\">DIRECTORY CONTROL CENTRE</p><h2>Small-pipeline proving</h2><p>V648 separates Discovery, Canonical Identity, Enrichment, Truth/Publication and SEO so one bad resolver cannot hide inside a multi-hour run. Paid research comes only after deterministic/cache work.</p><button type=\"button\" class=\"secondary\" data-directory-open-analytics-v628>Open Directory Analytics &amp; Search Console</button></div><div class=\"orbit-directory-manual-state-v626\"><strong>Schedules OFF</strong><span>${lock.active?`Active: ${esc(lock.agentId||\"Directory component\")}`:\"Ready for one manual run\"}</span></div></div>${directoryLiveRunMarkupV625(payload)}<section class=\"orbit-directory-forensics-panel-v626\"><div class=\"orbit-directory-section-title-v626\"><div><p class=\"orbit-kicker\">1 \\xB7 PIPELINE FORENSICS</p><h3>Where the Directory is stuck</h3><p>Read-only diagnostics before state-changing work. No paid AI and no canonical writes.</p></div><button type=\"button\" class=\"secondary\" data-directory-agent-run-v625=\"${esc(forensicsAgent?.id||\"pipeline-forensics\")}\">Refresh forensics</button></div>${signals.length?`<div class=\"orbit-directory-forensic-signals-v626\">${signals.slice(0,6).map(x=>`<article class=\"is-${esc(x.severity||\"info\")}\"><strong>${esc(String(x.code||\"signal\").replace(/_/g,\" \"))}</strong><span>${esc(x.message||\"\")}</span></article>`).join(\"\")}</div>`:\"\"}<div class=\"orbit-directory-forensics-v626\"><article><small>Unpublished queue</small><strong>${Number(queue.total||0).toLocaleString(\"en-GB\")}</strong><span>${queue.oldest?`Oldest: ${esc(queue.oldest.title||queue.oldest.eventId)} \\xB7 ${esc(prettyDate(queue.oldest.waitingSince||\"\"))}`:\"No waiting record\"}</span></article><article><small>Coverage cursor</small><strong>${Number(f.crawlState?.cursor||0)}</strong><span>Sweep ${Number(f.crawlState?.sweepNumber||0)} \\xB7 last found ${Number(f.crawlState?.lastFound||0)}</span></article><article><small>7-day Directory AI</small><strong>$${Number(f.usage?.estimatedSpendUsd||0).toFixed(2)}</strong><span>${Number(f.usage?.totalTokens||0).toLocaleString(\"en-GB\")} tokens \\xB7 ${Number(f.usage?.webSearchCalls||0)+Number(f.usage?.imageWebSearchCalls||0)} search calls</span></article><article class=\"${providerCost.reconciliationAvailable===!1||providerCost.providerCostUsd==null||Number(providerCost.unattributedProviderSpendUsd||0)>.01?\"is-cost-warning-v627\":\"\"}\"><small>Provider reconciliation</small><strong>${providerCost.providerCostUsd==null?\"Unavailable \\xB7 not $0\":`$${Number(providerCost.providerCostUsd||0).toFixed(2)} provider`}</strong><span>${providerCost.providerCostUsd==null?`Provider cost is not connected or could not be read. Orbit estimate $${Number(providerCost.usageEstimatedUsd||f.usage?.estimatedSpendUsd||0).toFixed(2)} is not settled provider spend.`:Number(providerCost.unattributedProviderSpendUsd||0)>.01?`UNATTRIBUTED PROVIDER SPEND $${Number(providerCost.unattributedProviderSpendUsd||0).toFixed(3)}`:`Orbit ledger $${Number(providerCost.settledLedgerUsd||0).toFixed(2)} \\xB7 ${esc(providerCost.providerScope||\"provider scope\")}`}</span>${providerCost.providerError?`<small>${esc(providerCost.providerError)}</small>`:providerCost.scopeWarning?`<small>${esc(providerCost.scopeWarning)}</small>`:\"\"}</article><article><small>Top blocker</small><strong>${esc(queue.publicationBlockers?.[0]?.reason||\"None\")}</strong><span>${Number(queue.publicationBlockers?.[0]?.count||0).toLocaleString(\"en-GB\")} record${Number(queue.publicationBlockers?.[0]?.count||0)===1?\"\":\"s\"}</span></article></div><div class=\"orbit-directory-progress-strip-v626\">${stageRows.map(([label,row])=>`<div><small>${esc(label)}</small><strong>${row?.at?esc(prettyDate(row.at)):\"No progress\"}</strong></div>`).join(\"\")}</div></section>${directoryModelRoutingMarkupV625(payload.modelRouting||{})}<div class=\"orbit-directory-section-title-v626\"><div><p class=\"orbit-kicker\">ADVANCED INDIVIDUAL AGENTS</p><h3>Resolver-level diagnostics</h3><p>Use these when diagnosing one resolver. The primary V648 workflow is the small pipeline cards below, not the legacy full pipeline.</p></div></div><div class=\"orbit-directory-agent-grid-v626\">${coreAgents.map(a=>directoryAgentCardV626(a,lock)).join(\"\")}</div>${supportingAgents.length?`<div class=\"orbit-directory-section-title-v626 orbit-directory-supporting-title-v627\"><div><p class=\"orbit-kicker\">SUPPORTING RESEARCH</p><h3>Optional tools outside the core pipeline</h3><p>Use these deliberately. They do not change the proven numbered Full Pipeline order.</p></div></div><div class=\"orbit-directory-agent-grid-v626\">${supportingAgents.map(a=>directoryAgentCardV626(a,lock)).join(\"\")}</div>`:\"\"}`}function directorySplitBudgetV648(run={}){const b=run.budget||{},settled=Number(b.settledUsd??b.spendUsd??0),reserved=Number(b.reservedUsd??0);return settled||reserved?`$${settled.toFixed(2)} settled${reserved?` + $${reserved.toFixed(2)} reserved`:\"\"}`:\"$0.00 / deterministic or no paid usage\"}function directorySplitResultItemsV649(result={}){const items=Array.isArray(result.items)?result.items:[];if(!items.length)return\"\";const timing=result.researchTiming||{},timingLabel=Number(timing.batchDurationMs||0)?` \\xB7 research batch ${(Number(timing.batchDurationMs)/1e3).toFixed(1)}s \\xB7 p50 ${(Number(timing.p50DurationMs||0)/1e3).toFixed(1)}s \\xB7 p95 ${(Number(timing.p95DurationMs||0)/1e3).toFixed(1)}s`:\"\";return`<details class=\"orbit-directory-model-routing-v626\"><summary><span><small>EXACT RECORD OUTCOMES</small><strong>View ${items.length} processed record${items.length===1?\"\":\"s\"}</strong></span><span>${Number(result.published||0)} published${esc(timingLabel)}</span></summary><div class=\"orbit-directory-source-outcomes-v626\">${items.map(item=>{const status=String(item.status||\"checked\"),isBad=[\"failed\",\"review\",\"rejected\",\"exclusion_review\"].includes(status),url=String(item.publicUrl||\"\"),blockers=[...item.blockersAfter||item.blockers||item.remainingPublicationBlockers||[]].filter(Boolean),reason=item.reason||\"\",title=item.title||item.eventId||\"Directory record\",research=(item.evidence||[]).find(x=>x.step===\"event_research\"),elapsed=Number(research?.durationMs||research?.timings?.totalMs||0);return`<article class=\"${isBad?\"is-error\":\"is-ok\"}\"><div><strong>${url?`<a href=\"${esc(url)}\" target=\"_blank\" rel=\"noopener\">${esc(title)}</a>`:esc(title)}</strong><small>${esc(item.eventId||\"\")}${item.nextStage?` \\xB7 next ${esc(item.nextStage)}`:\"\"}${elapsed?` \\xB7 research ${(elapsed/1e3).toFixed(1)}s`:\"\"}</small></div><span>${esc(status.replace(/_/g,\" \"))}${blockers.length?` \\xB7 blockers: ${esc(blockers.join(\", \"))}`:\"\"}${reason?` \\xB7 ${esc(reason)}`:\"\"}</span></article>`}).join(\"\")}</div></details>`}function directorySplitCopyTextV657(run={},payload={}){const result=run.result||{},pipeline=(payload.pipelines||[]).find(p=>p.key===run.pipelineKey)||{},cohort=payload.cohort||{},items=Array.isArray(result.items)?result.items:[],steps=Array.isArray(result.steps)?result.steps:[],lines=[`CardShowIndex ${ORBIT_RELEASE} proving result`,`Stage: ${pipeline.order?pipeline.order+\" \\xB7 \":\"\"}${pipeline.label||run.label||run.pipelineKey||\"Directory stage\"}`,`Pipeline key: ${run.pipelineKey||\"\"}`,`Cohort: ${run.cohortId||cohort.id||\"none\"}`,`Run ID: ${run.id||\"\"}`,`Status: ${run.status||\"unknown\"}`,`Started: ${run.startedAt||\"\"}`,`Completed: ${run.completedAt||\"\"}`,`Budget: ${directorySplitBudgetV648(run)}`,`Result: ${Number(result.selected||0)} selected \\xB7 ${Number(result.solved||0)} solved \\xB7 ${Number(result.retrying||0)} retrying \\xB7 ${Number(result.exclusionReview||0)} exclusion review \\xB7 ${Number(result.reviewed||0)} human review \\xB7 ${Number(result.failed||0)} failed \\xB7 ${Number(result.published||0)} published${Number(result.deduped||0)?` \\xB7 ${Number(result.deduped)} deduped`:\"\"}`];if(steps.length){lines.push(\"\",\"Steps:\");for(const step of steps)lines.push(`- ${step.name||\"step\"}: ${step.status||\"completed\"} \\xB7 requested ${Number(step.requested||0)} \\xB7 resolved ${Number(step.resolved||0)} \\xB7 review ${Number(step.review||0)} \\xB7 rejected ${Number(step.rejected||0)} \\xB7 failed ${Number(step.failed||0)}${step.error?` \\xB7 ${step.error}`:\"\"}`)}if(items.length){lines.push(\"\",\"Exact records:\");for(const item of items){const blockers=[...item.blockersAfter||item.blockers||item.remainingPublicationBlockers||[]].filter(Boolean),parts=[`- ${item.title||item.eventId||\"Directory record\"}`,`[${item.eventId||\"no id\"}]`,`=> ${String(item.status||\"checked\").replace(/_/g,\" \")}`];item.nextStage&&parts.push(`next ${item.nextStage}`),blockers.length&&parts.push(`blockers: ${blockers.join(\", \")}`),item.reason&&parts.push(item.reason),item.publicUrl&&parts.push(`public: ${item.publicUrl}`),item.ticketUrl&&parts.push(`ticket: ${item.ticketUrl}`),lines.push(parts.join(\" \\xB7 \"))}}return lines.join(`\n`)}async function copyDirectorySplitResultV657(runId,button2){const payload=orbitDirectorySplitPayloadV657||{},run=(payload.runs||[]).find(r=>String(r.id)===String(runId))||(payload.pipelines||[]).map(p=>p.lastRun).find(r=>r&&String(r.id)===String(runId));if(!run)throw new Error(\"That pipeline result is no longer loaded. Refresh and try again.\");const textValue=directorySplitCopyTextV657(run,payload);if(navigator.clipboard?.writeText)await navigator.clipboard.writeText(textValue);else{const area=document.createElement(\"textarea\");area.value=textValue,area.setAttribute(\"readonly\",\"\"),area.style.position=\"fixed\",area.style.opacity=\"0\",document.body.appendChild(area),area.select(),document.execCommand(\"copy\"),area.remove()}const original=button2?.textContent;return button2&&(button2.textContent=\"Copied \\u2713\",window.setTimeout(()=>{button2.textContent=original||\"Copy result\"},1200)),setNotice2(\"Pipeline result copied. Paste it straight into ChatGPT.\"),textValue}function renderDirectorySplitV648(payload={}){const box=$2(\"directorySplitPipelinesV648\");if(!box)return;orbitDirectorySplitPayloadV657=payload;const all=Array.isArray(payload.pipelines)?payload.pipelines:[],primary=all.filter(p=>p.primary).sort((a,b)=>Number(a.order||99)-Number(b.order||99)),support=all.filter(p=>!p.primary),cohort=payload.cohort||{},cc=cohort.counts||{},cohortSummary=cohort.id?`${Number(cohort.claimed||0)}/${Number(cohort.target||25)} claimed \\xB7 ${Number(cc.intake||0)} Intake \\xB7 ${Number(cc.canonical||0)} Identity \\xB7 ${Number(cc.enrichment||0)} Enrichment \\xB7 ${Number(cc.truth||0)} Truth \\xB7 ${Number(cc.publication||0)} Publication \\xB7 ${Number(cc.published||0)} published \\xB7 ${Number(cc.exclusionReview||0)} exclusion review \\xB7 ${Number(cc.humanReview||0)} human review \\xB7 ${Number(cc.deduped||0)} deduped`:\"No active proving cohort. Start at Stage 1.\",card=p=>{const r=p.lastRun||{},busy=[\"queued\",\"running\",\"stopping\"].includes(String(r.status||\"\")),result=r.result||{},progress=r.progress||{},selection=r.selection||{},selected=Number(result.selected??progress.selected??selection.count??0),claimed=Number(result.claimed??selection.claimed??0),claimSkipped=Number(result.claimSkipped??selection.claimSkipped??0),deferred=Number(result.deferred??selection.deferred??0),paidResearchRequested=Number(result.paidResearchRequested??0),solved=Number(result.solved??progress.solved??0),reviewed=Number(result.reviewed??progress.reviewed??0),exclusionReview=Number(result.exclusionReview??progress.exclusionReview??0),retrying=Number(result.retrying??progress.retrying??0),failed=Number(result.failed??progress.failed??0),rejected=Number(result.rejected??progress.rejected??0),published=Number(result.published??progress.published??0),deduped=Number(result.deduped??progress.deduped??0),eligible=p.eligible==null?\"\\u2014\":Number(p.eligible).toLocaleString(\"en-GB\"),sub=p.key===\"enrichment\",progressText=busy&&progress.currentStep?` \\xB7 ${esc(String(progress.currentStep).replace(/_/g,\" \"))}${Number(progress.researchTotal||0)?` ${Number(progress.researchCompleted||0)}/${Number(progress.researchTotal||0)}`:\"\"}`:\"\",stageLabel=p.order?`${p.order} \\xB7 ${String(p.key||\"\").toUpperCase()}`:String(p.key||\"\").toUpperCase(),runControls=busy?`<button type=\"button\" class=\"secondary danger\" data-directory-split-stop-v648=\"${esc(r.id)}\" ${String(r.status)===\"stopping\"?\"disabled\":\"\"}>${String(r.status)===\"stopping\"?\"Stopping\\u2026\":\"Stop\"}</button>`:p.key===\"discovery\"?'<button type=\"button\" data-directory-split-run-v648=\"discovery\" data-directory-split-limit-v648=\"25\" data-directory-split-new-cohort-v657=\"true\" data-directory-split-cohort-source-v658=\"existing\">Load 25 existing candidates</button><button type=\"button\" class=\"secondary\" data-directory-split-run-v648=\"discovery\" data-directory-split-limit-v648=\"25\" data-directory-split-new-cohort-v657=\"true\" data-directory-split-cohort-source-v658=\"discovery\">Discover 25 new</button>':`<button type=\"button\" data-directory-split-run-v648=\"${esc(p.key)}\" data-directory-split-limit-v648=\"25\">Run cohort (up to 25)</button>`;return`<article class=\"orbit-directory-agent-card-v626 ${busy?\"is-active\":\"\"}\"><div class=\"orbit-directory-agent-card-head-v626\"><div><small>${esc(stageLabel)}</small><strong>${esc(p.label||p.key)}</strong></div><span>${eligible} waiting</span></div><p>${esc(p.description||\"\")}</p>${r.id?`<div class=\"orbit-directory-agent-last-v626\"><div><b>${esc(String(r.status||\"not run\").replace(/_/g,\" \"))}</b><small>${r.completedAt?esc(prettyDate(r.completedAt)):esc(r.message||\"\")}${progressText}</small></div><span>${directorySplitBudgetV648(r)}</span><span>${selected} selected${p.key===\"enrichment\"?` \\xB7 ${claimed} claimed \\xB7 ${claimSkipped} claim-skipped \\xB7 ${deferred} cooling/deferred \\xB7 ${paidResearchRequested} paid-research candidates`:\"\"} \\xB7 ${solved} solved \\xB7 ${retrying} retrying \\xB7 ${exclusionReview} exclusion review \\xB7 ${reviewed} human review${deduped?` \\xB7 ${deduped} deduped`:\"\"}${rejected?` \\xB7 ${rejected} discovery rejected`:\"\"} \\xB7 ${failed} failed${published?` \\xB7 ${published} published`:\"\"}</span></div>${directorySplitResultItemsV649(result)}`:'<div class=\"orbit-directory-agent-last-v626\"><span>Not run for this active cohort yet.</span></div>'}<div class=\"orbit-directory-run-controls-v625\">${runControls}${r.id?`<button type=\"button\" class=\"secondary\" data-directory-split-copy-v657=\"${esc(r.id)}\">Copy result</button>`:\"\"}</div>${sub&&!busy?'<div class=\"orbit-directory-run-controls-v625\"><button type=\"button\" class=\"secondary\" data-directory-split-run-v648=\"enrichment\" data-directory-split-limit-v648=\"10\" data-directory-split-substage-v648=\"ticket\">10 Tickets</button><button type=\"button\" class=\"secondary\" data-directory-split-run-v648=\"enrichment\" data-directory-split-limit-v648=\"10\" data-directory-split-substage-v648=\"image\">10 Images</button><button type=\"button\" class=\"secondary\" data-directory-split-run-v648=\"enrichment\" data-directory-split-limit-v648=\"10\" data-directory-split-substage-v648=\"geography\">10 Geography</button></div>':\"\"}</article>`},supportHtml=support.length?`<details class=\"orbit-panel\"><summary><strong>Outside the six-stage proving cohort</strong><span>Legacy backlog is parked; SEO and freshness remain separate from factual publication.</span></summary><div class=\"orbit-directory-agent-grid-v626\">${support.map(p=>`<article class=\"orbit-directory-agent-card-v626\"><div class=\"orbit-directory-agent-card-head-v626\"><div><small>${esc(p.postPublish?\"POST-PUBLICATION\":\"PARKED\")}</small><strong>${esc(p.label||p.key)}</strong></div><span>${p.eligible==null?\"\\u2014\":Number(p.eligible).toLocaleString(\"en-GB\")}</span></div><p>${esc(p.description||\"\")}</p></article>`).join(\"\")}</div></details>`:\"\";box.innerHTML=`<div class=\"orbit-directory-section-title-v626\"><div><p class=\"orbit-kicker\">V662 FACTUAL PIPELINE PROVING</p><h3>Follow the same 25 records from Cohort Intake to Publication</h3><p>Stage 1 can instantly load 25 suitable unresolved candidates already in Orbit, or deliberately discover 25 new ones. Nothing enters paid enrichment until Intake has proved UK trading-card scope and Identity has resolved safe duplicates.</p></div><span>${cohort.id?esc(cohort.id):\"No cohort\"}</span></div><div class=\"orbit-info-banner\"><strong>${cohort.id?`Active cohort \\xB7 ${esc(cohort.id)}`:\"Start with Stage 1\"}</strong><span>${esc(cohortSummary)}</span></div><div class=\"orbit-directory-agent-grid-v626\">${primary.map(card).join(\"\")}</div>${supportHtml}`}async function loadDirectorySplitV648(force=!1){const payload=await api(\"/api/admin/directory/split-pipelines/status\",{cacheMs:force?0:2e3,timeoutMs:15e3});orbitDirectorySplitPayloadV657=payload,renderDirectorySplitV648(payload);const running=(payload.runs||[]).some(r=>[\"queued\",\"running\",\"stopping\"].includes(String(r.status||\"\")));return running&&!orbitDirectorySplitPollV648&&(orbitDirectorySplitPollV648=window.setInterval(()=>loadDirectorySplitV648(!0).catch(()=>{}),2500)),!running&&orbitDirectorySplitPollV648&&(window.clearInterval(orbitDirectorySplitPollV648),orbitDirectorySplitPollV648=null),payload}async function runDirectorySplitV648(key,limit,substage,button2,newCohort=!1,cohortSource=\"discovery\"){setLoading(button2,!0);try{const body={limit:String(limit)===\"all\"?\"all\":Number(limit)||10,substage:substage||\"all\",newCohort:newCohort===!0,cohortSource:cohortSource===\"existing\"?\"existing\":\"discovery\"},result=await api(\"/api/admin/directory/split-pipelines/\"+encodeURIComponent(key)+\"/start\",{method:\"POST\",body:JSON.stringify(body),cacheMs:0,timeoutMs:15e3});return setNotice2(result?.existing?\"That lane was already running, so Orbit kept the existing run.\":newCohort?body.cohortSource===\"existing\"?\"Loading 25 existing candidates into the proving cohort.\":\"Discovering up to 25 new candidates for the proving cohort.\":\"Cohort stage started.\"),window.setTimeout(()=>loadDirectorySplitV648(!0).catch(()=>{}),250),window.setTimeout(()=>loadDirectoryControlCentreV625(!0).catch(()=>{}),500),result}finally{setLoading(button2,!1)}}async function stopDirectorySplitV648(runId,button2){setLoading(button2,!0);try{orbitDirectorySplitPollV648&&(window.clearInterval(orbitDirectorySplitPollV648),orbitDirectorySplitPollV648=null),orbitDirectoryControlPollV625&&(window.clearInterval(orbitDirectoryControlPollV625),orbitDirectoryControlPollV625=null);const result=await api(\"/api/admin/directory/split-pipelines/runs/\"+encodeURIComponent(runId)+\"/stop\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:15e3});if(orbitReadUnavailableUntil=0,orbitDirectorySplitPayloadV657&&result?.run){const runs=(orbitDirectorySplitPayloadV657.runs||[]).map(row=>String(row.id)===String(runId)?{...row,...result.run}:row),pipelines=(orbitDirectorySplitPayloadV657.pipelines||[]).map(row=>row.lastRun&&String(row.lastRun.id)===String(runId)?{...row,lastRun:{...row.lastRun,...result.run}}:row);orbitDirectorySplitPayloadV657={...orbitDirectorySplitPayloadV657,runs,pipelines},renderDirectorySplitV648(orbitDirectorySplitPayloadV657)}return setNotice2(\"Directory stage stopped safely. No server outage was detected.\"),window.setTimeout(()=>{orbitReadUnavailableUntil=0,loadDirectorySplitV648(!0).catch(()=>{}),loadDirectoryControlCentreV625(!0).catch(()=>{})},1e3),result}finally{setLoading(button2,!1)}}function renderDirectoryExclusionsV654(pending=[],confirmed=[]){const box=$2(\"directoryExclusionReviewV654\");if(!box)return;const card=x=>`<article class=\"orbit-directory-agent-card-v626\"><div class=\"orbit-directory-agent-card-head-v626\"><div><small>PROPOSED EXCLUSION</small><strong>${esc(x.eventTitle||\"Directory event\")}</strong></div><span>${x.eventDate?esc(directoryDateV560(x.eventDate)):\"\"}</span></div><p><b>${esc(String(x.reasonCode||\"review\").replace(/_/g,\" \"))}</b> \\xB7 ${esc(x.explanation||x.reason||\"Orbit proposes blocking this exact occurrence.\")}</p>${Array.isArray(x.evidence)&&x.evidence.length?`<div class=\"orbit-directory-run-evidence-v649\">${x.evidence.map(ev=>`<a href=\"${esc(ev.url||\"#\")}\" target=\"_blank\" rel=\"noopener\">${esc(ev.title||ev.role||\"Evidence source\")}</a>`).join(\" \\xB7 \")}</div>`:\"\"}<label><span>Evidence / note to send back</span><textarea rows=\"2\" data-directory-exclusion-note-v654=\"${esc(x.id||x.eventId)}\" placeholder=\"Optional: paste an official URL or explain why this should return to research.\"></textarea></label><div class=\"orbit-directory-run-controls-v625\"><button type=\"button\" class=\"danger\" data-directory-exclusion-confirm-v654=\"${esc(x.id)}\">Confirm block</button><button type=\"button\" class=\"secondary\" data-directory-exclusion-return-v654=\"${esc(x.id)}\">Return to pipeline</button></div></article>`,blocked=x=>`<article class=\"orbit-directory-agent-card-v626\"><div class=\"orbit-directory-agent-card-head-v626\"><div><small>CONFIRMED BLOCK</small><strong>${esc(x.eventTitle||\"Directory event\")}</strong></div><span>${x.eventDate?esc(directoryDateV560(x.eventDate)):\"\"}</span></div><p>${esc(String(x.reasonCode||x.reason||\"confirmed exclusion\").replace(/_/g,\" \"))}</p><button type=\"button\" class=\"secondary\" data-directory-exclusion-reopen-v654=\"${esc(x.eventId)}\">Reopen</button></article>`;box.innerHTML=`<div class=\"orbit-directory-section-title-v626\"><div><p class=\"orbit-kicker\">EXCLUSION REVIEW</p><h3>Nothing leaves CardShowIndex silently</h3><p>Agents can propose an exclusion, but only you can confirm the permanent discovery block. Missing evidence returns to research instead. Confirmed blocks are retained as reversible exact-occurrence tombstones, never deleted.</p></div><span>${pending.length} awaiting decision</span></div>${pending.length?`<div class=\"orbit-directory-agent-grid-v626\">${pending.map(card).join(\"\")}</div>`:'<div class=\"orbit-info-banner\"><strong>No proposed exclusions</strong><span>There is nothing waiting to be permanently blocked.</span></div>'}${confirmed.length?`<details class=\"orbit-panel\"><summary><strong>Confirmed block list (${confirmed.length})</strong></summary><div class=\"orbit-directory-agent-grid-v626\">${confirmed.map(blocked).join(\"\")}</div></details>`:\"\"}`}async function loadDirectoryExclusionsV654(force=!1){const[pending,confirmed]=await Promise.all([api(\"/api/admin/directory/exclusions?status=pending&limit=200\",{cacheMs:force?0:2e3,timeoutMs:15e3}),api(\"/api/admin/directory/exclusions?status=confirmed&limit=200\",{cacheMs:force?0:2e3,timeoutMs:15e3})]);return renderDirectoryExclusionsV654(pending.items||[],confirmed.items||[]),{pending,confirmed}}async function directoryExclusionDecisionV654(id,action,button2){setLoading(button2,!0);try{const note=$2(\"directoryExclusionReviewV654\")?.querySelector(`[data-directory-exclusion-note-v654=\"${String(id)}\"]`)?.value||\"\",url=action===\"reopen\"?`/api/admin/directory/exclusions/events/${encodeURIComponent(id)}/reopen`:`/api/admin/directory/exclusions/${encodeURIComponent(id)}/${action===\"confirm\"?\"confirm\":\"return\"}`;await api(url,{method:\"POST\",body:JSON.stringify(action===\"return\"?{note,evidence:note}:{note}),cacheMs:0,timeoutMs:2e4}),setNotice2(action===\"confirm\"?\"Event added to the confirmed exclusion list.\":action===\"reopen\"?\"Confirmed block reopened and returned to the pipeline.\":\"Event returned to the pipeline with your evidence.\"),await Promise.all([loadDirectoryExclusionsV654(!0),loadDirectorySplitV648(!0)])}finally{setLoading(button2,!1)}}async function loadDirectoryControlCentreV625(force=!1){const payload=await api(\"/api/admin/directory/control-centre\",{cacheMs:force?0:2500,timeoutMs:15e3});renderDirectoryControlCentreV625(payload),loadDirectorySplitV648(force).catch(()=>{}),loadDirectoryExclusionsV654(force).catch(()=>{});const running=(payload.runs||[]).some(r=>[\"queued\",\"running\",\"stopping\"].includes(String(r.status||\"\")))||payload.executionLock?.active;return running&&!orbitDirectoryControlPollV625&&(orbitDirectoryControlPollV625=window.setInterval(()=>loadDirectoryControlCentreV625(!0).catch(()=>{}),2500)),!running&&orbitDirectoryControlPollV625&&(window.clearInterval(orbitDirectoryControlPollV625),orbitDirectoryControlPollV625=null),payload}async function runDirectoryAgentV625(agentId,button2){if(agentId===\"directory-pipeline\")return runDirectoryPipelineV580(button2);setLoading(button2,!0);try{const result=await api(\"/api/admin/directory/control-centre/\"+encodeURIComponent(agentId)+\"/run\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:2e4});return await loadDirectoryControlCentreV625(!0),agentId!==\"pipeline-forensics\"&&loadDirectoryV560(!0).catch(()=>{}),result}finally{setLoading(button2,!1)}}async function controlDirectoryRunV625(runId,action,button2){setLoading(button2,!0);try{await api(\"/api/admin/directory/control-centre/runs/\"+encodeURIComponent(runId)+\"/\"+encodeURIComponent(action),{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:15e3}),await loadDirectoryControlCentreV625(!0)}finally{setLoading(button2,!1)}}function directoryPipelineCountV580(v){return Number(v||0).toLocaleString(\"en-GB\")}function formatPipelineDurationV587(ms){const total=Math.max(0,Math.round(Number(ms||0)/1e3)),m=Math.floor(total/60),s=total%60;return m>=60?`${Math.floor(m/60)}h ${m%60}m`:m?`${m}m ${s}s`:`${s}s`}function directoryPipelineStageStatusV644(status){const value=String(status||\"pending\").toLowerCase();return[\"passed\",\"failed\",\"skipped\",\"aborted\",\"running\"].includes(value)?value:\"pending\"}function directoryPipelineSummaryTextV644(run={}){const s=run.stageSummary||{};return`${Number(s.passed||0)} Passed \\xB7 ${Number(s.failed||0)} Failed \\xB7 ${Number(s.aborted||0)} Aborted \\xB7 ${Number(s.skipped||0)} Skipped`}function directoryPipelineStorageV644(key,value){try{if(value===void 0)return localStorage.getItem(key)||\"\";value===null?localStorage.removeItem(key):localStorage.setItem(key,String(value))}catch{}return\"\"}function showDirectoryPipelineToastV644(run={}){if(!run?.id)return;const summary=run.stageSummary||{},attention=String(run.outcome||\"\")===\"attention_needed\"||Number(summary.failed||0)>0||Number(summary.aborted||0)>0||String(run.status||\"\")===\"failed\";let toast=$2(\"directoryPipelineGlobalToastV644\");toast||(toast=document.createElement(\"aside\"),toast.id=\"directoryPipelineGlobalToastV644\",toast.className=\"orbit-directory-pipeline-toast-v644\",toast.setAttribute(\"role\",\"status\"),toast.setAttribute(\"aria-live\",\"polite\"),document.body.appendChild(toast)),toast.classList.toggle(\"is-attention\",attention),toast.innerHTML=`<div><strong>${attention?\"Pipeline complete \\u2014 attention needed\":\"Directory pipeline run complete\"}</strong><span>${esc(directoryPipelineSummaryTextV644(run))}</span></div><div class=\"orbit-directory-pipeline-toast-actions-v644\"><button type=\"button\" data-directory-pipeline-view-v644>View results</button><button type=\"button\" class=\"secondary\" data-directory-pipeline-dismiss-v644 aria-label=\"Dismiss pipeline notification\">Dismiss</button></div>`,toast.hidden=!1,toast.querySelector(\"[data-directory-pipeline-view-v644]\")?.addEventListener(\"click\",()=>{toast.hidden=!0,activateWorkspace(\"directory-control\"),window.setTimeout(()=>$2(\"directoryPipelineNoticeV580\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"}),120)}),toast.querySelector(\"[data-directory-pipeline-dismiss-v644]\")?.addEventListener(\"click\",()=>{toast.hidden=!0})}function trackDirectoryPipelineCompletionV644(payload={}){const run=payload?.run;if(!run?.id)return;const terminal=[\"completed\",\"failed\",\"stopped\"].includes(String(run.status||\"\"));if(payload?.active===!0||[\"queued\",\"running\",\"paused\"].includes(String(run.status||\"\"))){directoryPipelineStorageV644(\"orbitDirectoryActivePipelineRunV644\",run.id);return}const activeId=directoryPipelineStorageV644(\"orbitDirectoryActivePipelineRunV644\");if(!terminal||activeId!==String(run.id))return;directoryPipelineStorageV644(\"orbitDirectoryPipelineNotifiedV644\")!==String(run.id)&&(directoryPipelineStorageV644(\"orbitDirectoryPipelineNotifiedV644\",run.id),showDirectoryPipelineToastV644(run)),directoryPipelineStorageV644(\"orbitDirectoryActivePipelineRunV644\",null)}function renderDirectoryPipelineV580(payload={}){const run=payload?.run||null,n=$2(\"directoryPipelineNoticeV580\"),button2=$2(\"directoryRunPipelineV580\"),status=String(run?.status||\"\").toLowerCase(),stopping=String(run?.controlRequested||\"\").toLowerCase()===\"stop\",active=payload?.active===!0||[\"queued\",\"running\",\"paused\"].includes(status);if(trackDirectoryPipelineCompletionV644(payload),button2&&(button2.disabled=active,button2.textContent=active?stopping?\"Stopping pipeline\\u2026\":status===\"paused\"?\"Pipeline test paused\":\"Pipeline test running\\u2026\":\"Run full pipeline test\",button2.setAttribute(\"aria-busy\",String(active&&status!==\"paused\"))),!n||!run)return;n.hidden=!1;const c=run.counts||{},stage=String(run.currentStage||run.status||\"queued\").replace(/[-_]/g,\" \"),percent=Math.max(0,Math.min(100,Number(run.stageProgress||0))),figures=`Queued ${directoryPipelineCountV580(c.queued)} \\xB7 New ${directoryPipelineCountV580(c.discovered)} \\xB7 Refreshed ${directoryPipelineCountV580(c.refreshed)} \\xB7 Enriched ${directoryPipelineCountV580(c.enriched)} \\xB7 Geography ${directoryPipelineCountV580(Number(c.venuesResolved||0)+Number(c.geocoded||0))} \\xB7 Copy ${directoryPipelineCountV580(c.copyPrepared)} \\xB7 Images ${directoryPipelineCountV580(c.imagesResolved)} \\xB7 Duplicates ${directoryPipelineCountV580(c.duplicatesMerged)} \\xB7 Published ${directoryPipelineCountV580(Math.max(Number(c.published||0),Number(c.netPublished||0)))} \\xB7 Failed ${directoryPipelineCountV580(c.failed)}`,title=stopping?`Pipeline stopping \\xB7 ${stage}`:status===\"paused\"?`Pipeline paused \\xB7 ${stage}`:status===\"running\"||status===\"queued\"?`Pipeline running \\xB7 ${stage}`:status===\"completed\"?String(run.outcome||\"\")===\"attention_needed\"?\"Pipeline complete \\u2014 attention needed\":\"Directory pipeline run complete\":status===\"stopped\"?\"Directory pipeline stopped\":\"Directory pipeline stopped safely\",bits=[];(run.currentItem?.title||run.currentItem?.id)&&bits.push(`Current: ${run.currentItem.title||run.currentItem.id}`);const spent=Number(run.manualSpentUsd||0),reserved=Number(run.manualReservedUsd||0),stageKey=String(run.currentStage||\"\"),stageSpent=Number(run.stageSpentUsd?.[stageKey]||0);bits.push(`Total AI $${spent.toFixed(3)} settled \\xB7 $${reserved.toFixed(3)} reserved${stageKey?` \\xB7 current stage $${stageSpent.toFixed(3)} / $10 max`:\"\"}`),bits.push(`Elapsed ${formatPipelineDurationV587(run.elapsedMs)} \\xB7 no hard time cap while productive`),run.lastProgressAt&&bits.push(`Last activity ${prettyDate(run.lastProgressAt)}`);const canSkip=!stopping&&status===\"running\"&&Array.isArray(run.stages)&&run.stages.some(x=>String(x.key||\"\")===String(run.currentStage||\"\")),controls=stopping?'<div class=\"orbit-directory-pipeline-controls-v625\"><button type=\"button\" class=\"secondary danger\" disabled aria-busy=\"true\">Stopping\\u2026</button></div>':[\"queued\",\"running\"].includes(status)?`<div class=\"orbit-directory-pipeline-controls-v625\">${canSkip?`<button type=\"button\" class=\"secondary\" data-pipeline-action-v625=\"skip\" data-pipeline-run-v625=\"${esc(run.id)}\">Skip this stage</button>`:\"\"}<button type=\"button\" class=\"secondary\" data-pipeline-action-v625=\"pause\" data-pipeline-run-v625=\"${esc(run.id)}\">Pause</button><button type=\"button\" class=\"secondary danger\" data-pipeline-action-v625=\"stop\" data-pipeline-run-v625=\"${esc(run.id)}\">Stop</button></div>`:status===\"paused\"?`<div class=\"orbit-directory-pipeline-controls-v625\"><button type=\"button\" data-pipeline-action-v625=\"resume\" data-pipeline-run-v625=\"${esc(run.id)}\">Resume</button><button type=\"button\" class=\"secondary danger\" data-pipeline-action-v625=\"stop\" data-pipeline-run-v625=\"${esc(run.id)}\">Stop</button></div>`:\"\",stages=Array.isArray(run.stages)?run.stages:[],stageRows=stages.map(item=>{const result=item.result||{},stageStatus=directoryPipelineStageStatusV644(result.status||(String(run.currentStage||\"\")===item.key&&status===\"running\"?\"running\":\"pending\")),policy=item.policy||{},cost=result.aiSpentUsd==null?Number(run.stageSpentUsd?.[item.key]||0):Number(result.aiSpentUsd||0),reason=result.reason?String(result.reason).replace(/_/g,\" \"):\"\",time=result.durationMs!=null?formatPipelineDurationV587(result.durationMs):stageStatus===\"running\"?formatPipelineDurationV587(Math.max(0,Date.now()-Date.parse(result.startedAt||run.stageStartedAt||run.startedAt||Date.now()))):\"\\u2014\",effectiveness=result.effectiveness&&result.effectiveness!==\"productive\"?String(result.effectiveness).replace(/_/g,\" \"):\"\",aiMeta=Number(policy.aiBudgetUsd||0)>0?`AI $${cost.toFixed(3)} / $10 max`:\"Deterministic \\xB7 $0 AI\",detail=[time,aiMeta,effectiveness,reason].filter(Boolean).join(\" \\xB7 \");return`<article class=\"orbit-directory-pipeline-stage-v644 orbit-directory-pipeline-stage-v645 is-${esc(stageStatus)}\"><div class=\"orbit-directory-stage-id-v645\"><small>${esc(item.order||\"\")}</small><strong>${esc(item.label||item.key||\"\")}</strong></div><span class=\"orbit-directory-pipeline-stage-pill-v644\">${esc(stageStatus.replace(/_/g,\" \"))}</span><small class=\"orbit-directory-stage-meta-v645\">${esc(detail)}</small></article>`}).join(\"\");n.classList.toggle(\"is-running\",[\"queued\",\"running\"].includes(status)),n.classList.toggle(\"is-failed\",status===\"failed\"||String(run.outcome||\"\")===\"attention_needed\"),n.classList.toggle(\"is-stalled\",!!run.stalled);const icon=[\"queued\",\"running\"].includes(status)?'<span class=\"orbit-directory-pipeline-spinner-v587 is-active\" aria-hidden=\"true\"></span>':status===\"completed\"&&String(run.outcome||\"\")!==\"attention_needed\"?'<span class=\"orbit-directory-pipeline-complete-v588\" aria-hidden=\"true\">\\u2713</span>':'<span class=\"orbit-directory-pipeline-stopped-v588\" aria-hidden=\"true\">!</span>';n.innerHTML=`<div class=\"orbit-directory-pipeline-head-v587\">${icon}<div><strong>${esc(title)}</strong><small>${esc(`${Number(run.completedStages||0)} of ${Number(run.totalStages||17)} numbered stages complete \\xB7 ${Number(run.completedSteps??run.completedStages??0)} of ${Number(run.totalSteps??run.totalStages??0)} execution steps \\xB7 ${directoryPipelineSummaryTextV644(run)}`)}</small></div><b>${Math.round(percent)}%</b></div><div class=\"orbit-directory-pipeline-progress-v587\" role=\"progressbar\" aria-valuemin=\"0\" aria-valuemax=\"100\" aria-valuenow=\"${Math.round(percent)}\"><i style=\"width:${percent}%\"></i></div><span>${esc(figures)}</span><small>${esc(bits.join(\" \\xB7 \"))}</small>${run.message?`<small>${esc(run.message)}</small>`:\"\"}${controls}${stageRows?`<div class=\"orbit-directory-pipeline-stages-v644 orbit-directory-pipeline-stages-v645\">${stageRows}</div>`:\"\"}`,n.querySelectorAll(\"[data-pipeline-action-v625]\").forEach(b=>b.addEventListener(\"click\",()=>controlDirectoryPipelineV625(b.dataset.pipelineRunV625,b.dataset.pipelineActionV625,b).catch(err=>setNotice2(err.message||err,!0))))}async function controlDirectoryPipelineV625(runId,action,button2){setLoading(button2,!0);try{const payload=await api(`/api/admin/directory/pipeline/${encodeURIComponent(runId)}/${encodeURIComponent(action)}`,{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:15e3});renderDirectoryPipelineV580({...payload,active:[\"queued\",\"running\",\"paused\"].includes(String(payload?.run?.status||\"\"))}),[\"resume\",\"skip\"].includes(action)&&startDirectoryPipelinePollV580(),state.currentModule===\"directory\"&&await loadDirectoryControlCentreV625(!0).catch(()=>{})}finally{setLoading(button2,!1)}}function stopDirectoryPipelinePollV580(){orbitDirectoryPipelinePollV580&&(window.clearInterval(orbitDirectoryPipelinePollV580),orbitDirectoryPipelinePollV580=null)}async function pollDirectoryPipelineV580(){try{const payload=await api(\"/api/admin/directory/pipeline/status\",{cacheMs:0,timeoutMs:12e3});return renderDirectoryPipelineV580(payload),orbitDirectoryPipelinePollTickV580++,payload?.active===!0?(state.currentModule===\"directory\"&&orbitDirectoryPipelinePollTickV580%3===0&&await loadDirectoryV560(!0,{keepPage:!0}).catch(()=>{}),payload):(stopDirectoryPipelinePollV580(),state.currentModule===\"directory\"&&await loadDirectoryV560(!0,{keepPage:!0}).catch(()=>{}),payload)}catch(error){const n=$2(\"directoryPipelineNoticeV580\");return n&&state.currentModule===\"directory\"&&(n.hidden=!1,n.innerHTML=`<strong>Pipeline status temporarily unavailable</strong><span>${esc(error.message||error)}. The server-side job is not cancelled; Orbit will keep checking.</span>`),null}}function startDirectoryPipelinePollV580(){stopDirectoryPipelinePollV580(),orbitDirectoryPipelinePollTickV580=0,orbitDirectoryPipelinePollV580=window.setInterval(()=>pollDirectoryPipelineV580().catch(()=>{}),4e3)}async function resumeDirectoryPipelineV580(){const payload=await pollDirectoryPipelineV580();return payload?.active===!0&&startDirectoryPipelinePollV580(),payload}async function runDirectoryPipelineV580(button2){button2&&(button2.disabled=!0,button2.textContent=\"Starting pipeline test\\u2026\",button2.setAttribute(\"aria-busy\",\"true\"));const n=$2(\"directoryPipelineNoticeV580\");n&&(n.hidden=!1,n.classList.add(\"is-running\"),n.innerHTML=\"<strong>Starting Directory pipeline test\\u2026</strong><span>The run continues server-side if you navigate away. Orbit will let productive stages finish and stop only for hang/no-progress, operator control, or the $10 per-stage AI ceiling.</span>\");try{const payload=await api(\"/api/admin/directory/pipeline/start\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:15e3});payload?.run?.id&&directoryPipelineStorageV644(\"orbitDirectoryActivePipelineRunV644\",payload.run.id),renderDirectoryPipelineV580({...payload,active:!0}),startDirectoryPipelinePollV580(),window.setTimeout(()=>pollDirectoryPipelineV580().catch(()=>{}),500),state.currentModule===\"directory\"&&await loadDirectoryControlCentreV625(!0).catch(()=>{})}catch(error){n&&(n.classList.remove(\"is-running\"),n.classList.add(\"is-failed\"),n.innerHTML=`<strong>Pipeline could not be started</strong><span>${esc(error.message||error)}</span>`),button2&&(button2.disabled=!1,button2.textContent=\"Run full pipeline test\",button2.setAttribute(\"aria-busy\",\"false\"))}}async function runDirectoryDiscoveryV560(button2){setLoading(button2,!0);const n=$2(\"directoryDiscoveryNoticeV560\");n&&(n.innerHTML=\"<strong>Full UK discovery sweep starting\\u2026</strong><span>Orbit will work through every registered source and national coverage lane, including all announced 2027 and later dates. You can leave this screen while it continues.</span>\");try{const result=await api(\"/api/admin/directory/discover\",{method:\"POST\",body:JSON.stringify({full:!0}),cacheMs:0,timeoutMs:3e4});n&&(n.innerHTML=`<strong>${result.queued?\"Full discovery sweep queued\":result.alreadyRunning?\"Discovery already running\":\"Full discovery sweep started\"}</strong><span>${esc(result.message||\"\")} ${Number(result.planTasks||0)} discovery lanes \\xB7 up to ${Number(result.maxEventsPerTask||0)} candidates per lane \\xB7 all announced future years. Enrichment will improve the records separately.</span>`);let attempts=0;window.clearInterval(window.orbitDirectoryDiscoveryPollV562),window.orbitDirectoryDiscoveryPollV562=window.setInterval(async()=>{attempts++;try{await loadDirectoryV560(!0),((await api(\"/api/admin/directory/summary\",{cacheMs:0}))?.lastDiscoveryRun?.status!==\"running\"||attempts>=24)&&(window.clearInterval(window.orbitDirectoryDiscoveryPollV562),window.orbitDirectoryDiscoveryPollV562=null)}catch{attempts>=24&&(window.clearInterval(window.orbitDirectoryDiscoveryPollV562),window.orbitDirectoryDiscoveryPollV562=null)}},1e4),await loadDirectoryV560(!0)}catch(err){n&&(n.innerHTML=`<strong>Discovery stopped safely</strong><span>${esc(err.message||err)}</span>`)}finally{setLoading(button2,!1)}}async function runDirectoryEnrichmentV561(button2){setLoading(button2,!0);const n=$2(\"directoryDiscoveryNoticeV560\");n&&(n.innerHTML=\"<strong>Data Enrichment is working\\u2026</strong><span>Orbit is following source evidence, checking Eventbrite detail where available, validating postcodes and re-researching incomplete/conflicting records.</span>\");try{const result=await api(\"/api/admin/directory/enrich\",{method:\"POST\",body:JSON.stringify({limit:10}),cacheMs:0,timeoutMs:24e4});n&&(n.innerHTML=`<strong>Enrichment complete</strong><span>${Number(result.investigated||0)} checked \\xB7 ${Number(result.enriched||0)} improved \\xB7 ${Number(result.conflicts||0)} identity conflict${Number(result.conflicts||0)===1?\"\":\"s\"} quarantined. Nothing was approved or published.</span>`),await loadDirectoryV560(!0)}catch(err){n&&(n.innerHTML=`<strong>Enrichment stopped safely</strong><span>${esc(err.message||err)}</span>`)}finally{setLoading(button2,!1)}}function directoryEvidenceRowsV561(e){return[\"title\",\"startDate\",\"venueName\",\"addressLine1\",\"city\",\"postcode\",\"organiser\",\"imageUrl\",\"description\",\"latitude\",\"longitude\"].map(field=>{const ev=e.fieldEvidence?.[field]||[];return`<tr><td><strong>${esc(field)}</strong></td><td>${ev.length?ev.map(x=>`<a href=\"${esc(x.sourceUrl||\"#\")}\" target=\"_blank\" rel=\"noopener\">${esc(x.sourceType||\"source\")}</a> <small>${esc(x.confidence||\"\")}</small>`).join(\"<br>\"):\"<small>No provenance yet</small>\"}</td></tr>`}).join(\"\")}async function openDirectoryEventV560(id){ensureDirectoryModuleV560();const data=await api(\"/api/admin/directory/events/\"+encodeURIComponent(id),{cacheMs:0,timeoutMs:15e3}),e=data.event,d=$2(\"directoryEventDialogV560\"),body=$2(\"directoryEventDialogBodyV560\"),actions=$2(\"directoryEventDialogActionsV565\");if(!d||!body||!actions)return;$2(\"directoryEventDialogTitleV560\").textContent=e.title||\"Directory event\",$2(\"directoryEventDialogSubtitleV560\").textContent=directoryDateV560(e.startDate)+\" \\xB7 \"+directoryLocationV560(e);const sources=e.sources||[],q=e.dataQuality||{},conflicts=q.conflicts||[],approved=e.status===\"approved\",ignored=e.status===\"ignored\",imageVerified=!!q.imageVerified,displayImageReady=!!q.displayImageReady,generatedImage=q.displayImageType===\"generated\",pendingApproval=!!(approved&&e.reapprovalRequired),hasConflictV575=field=>conflicts.some(c=>c.field===field),meta=$2(\"directoryEventDialogMetaV565\");meta&&(meta.innerHTML=`<span class=\"orbit-directory-status-pill-v565\">${esc(String(e.status||\"needs_review\").replace(/_/g,\" \"))}</span><span><strong>${Number(q.score||0)}%</strong> data quality</span><span><strong>${Number(q.independentSourceCount||0)}</strong> independent sources</span>${e.seoBlueprint?`<span><strong>${Number(e.seoBlueprint.readiness?.score||0)}%</strong> SEO readiness</span>`:\"\"}`),actions.innerHTML=`<span class=\"orbit-directory-toolbar-state-v566\"><strong>${pendingApproval?\"Published \\xB7 update waiting\":esc(String(e.status||\"needs_review\").replace(/_/g,\" \"))}</strong><span>${Number(q.score||0)}% quality \\xB7 ${Number(q.independentSourceCount||0)} sources</span></span><div class=\"orbit-directory-toolbar-buttons-v566\"><button type=\"button\" id=\"dirSaveV560\">Save</button>${pendingApproval?'<button type=\"button\" id=\"dirApproveV560\">Approve live update</button>':!approved&&!ignored&&e.status!==\"past\"?'<button type=\"button\" id=\"dirApproveV560\">Approve & lock</button>':\"\"}${ignored?'<button type=\"button\" class=\"secondary\" id=\"dirRestoreV561\">Restore</button>':'<button type=\"button\" class=\"secondary\" id=\"dirInvestigateButtonV561\">Investigate</button><button type=\"button\" class=\"secondary danger\" id=\"dirIgnoreV561\">Exclude false positive</button>'}<button type=\"button\" class=\"secondary\" id=\"directoryEventCloseV560\">Close</button></div>`,body.innerHTML=`<div class=\"orbit-directory-review-v565\">\n      <div id=\"dirActionResultV560\" class=\"orbit-action-result orbit-directory-action-result-v565\" hidden></div>\n      ${approved?'<div class=\"orbit-info-banner\"><strong>Your edits are authoritative</strong><span>If you change a field and save it, Orbit locks that field to your decision. Agents may flag genuinely new contradictory evidence in Review Queue, but they cannot silently undo your edit.</span></div>':\"\"}\n      <section class=\"orbit-directory-summary-v565\">\n        <div class=\"orbit-info-banner ${q.hasConflicts?\"warning\":\"\"}\"><strong>${q.autoPublishReady?\"100% verified \\xB7 automatic publication eligible\":q.approvalReady?\"Publication-ready evidence\":\"AI is still verifying this record\"}</strong><span>${q.autoPublishReady?\"All critical gates have passed. Orbit can publish this new listing automatically without operator approval.\":q.approvalReady?\"All publication-critical fields are verified.\":`Still needed: ${esc((q.publicationCriticalMissing||[]).map(directoryMissingLabelV561).join(\", \")||\"resolve evidence conflicts\")}.`}</span></div>\n        ${approved?`<div class=\"orbit-info-banner ${pendingApproval?\"warning\":\"\"}\"><strong>${pendingApproval?\"Live listing preserved \\xB7 proposed update needs you\":\"Published record locked\"}</strong><span>${pendingApproval?\"Directory Night Watch detected a material change. The public listing has NOT been changed; review the proposed diff below and approve only if correct.\":\"AI verifies this show nightly. It can update internal freshness evidence, but cannot change, hide or remove public listing facts without your approval.\"}</span></div>`:\"\"}\n        ${conflicts.length?`<div class=\"orbit-directory-conflict-stack-v575\">${directoryConflictHtmlV575(conflicts,e)}</div>`:\"\"}\n      </section>\n      <div class=\"orbit-directory-review-grid-v565\">\n        <section class=\"orbit-directory-section-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">EVENT DATA</p><h3>Core details</h3></div><span>${Number(q.score||0)}% complete</span></div>\n          <div class=\"orbit-directory-core-grid-v565\"><label class=\"${hasConflictV575(\"title\")?\"orbit-directory-field-conflict-v575\":\"\"}\">Show title<input id=\"dirEditTitleV560\" value=\"${esc(e.title||\"\")}\"></label><label class=\"${hasConflictV575(\"startDate\")?\"orbit-directory-field-conflict-v575\":\"\"}\">Start date<input id=\"dirEditStartV560\" type=\"date\" value=\"${esc(e.startDate||\"\")}\"></label><label>Start time<input id=\"dirEditStartTimeV561\" type=\"time\" value=\"${esc(e.startTime||\"\")}\"></label><label class=\"${hasConflictV575(\"endDate\")?\"orbit-directory-field-conflict-v575\":\"\"}\">End date<input id=\"dirEditEndV560\" type=\"date\" value=\"${esc(e.endDate||\"\")}\"></label><label>End time<input id=\"dirEditEndTimeV561\" type=\"time\" value=\"${esc(e.endTime||\"\")}\"></label><label class=\"${hasConflictV575(\"venueName\")?\"orbit-directory-field-conflict-v575\":\"\"}\">Venue<input id=\"dirEditVenueV560\" value=\"${esc(e.venueName||\"\")}\"></label><label class=\"orbit-span-2-v565\">Address<input id=\"dirEditAddressV560\" value=\"${esc(e.addressLine1||\"\")}\"></label><label class=\"${hasConflictV575(\"city\")?\"orbit-directory-field-conflict-v575\":\"\"}\">Town / city<input id=\"dirEditCityV560\" value=\"${esc(e.city||\"\")}\"></label><label>County<input id=\"dirEditCountyV560\" value=\"${esc(e.county||\"\")}\"></label><label>Region<input id=\"dirEditRegionV560\" value=\"${esc(e.region||\"\")}\"></label><label class=\"${hasConflictV575(\"postcode\")?\"orbit-directory-field-conflict-v575\":\"\"}\">Postcode<input id=\"dirEditPostcodeV560\" value=\"${esc(e.postcode||\"\")}\"></label><label class=\"${hasConflictV575(\"organiser\")?\"orbit-directory-field-conflict-v575\":\"\"}\">Organiser<input id=\"dirEditOrganiserV560\" value=\"${esc(e.organiser||\"\")}\"></label></div>\n          <label class=\"orbit-directory-description-v565\">Description<textarea id=\"dirEditDescriptionV560\" rows=\"6\" placeholder=\"Verified factual description\">${esc(e.description||\"\")}</textarea></label>\n          <details class=\"orbit-directory-advanced-v565\"><summary>URLs, coordinates and advanced fields</summary><div class=\"orbit-directory-core-grid-v565\"><label>Organiser URL<input id=\"dirEditOrganiserUrlV561\" value=\"${esc(e.organiserUrl||\"\")}\"></label><label>Ticket URL<input id=\"dirEditTicketV560\" value=\"${esc(e.ticketUrl||\"\")}\"></label><label>Website URL<input id=\"dirEditWebsiteV561\" value=\"${esc(e.websiteUrl||\"\")}\"></label><label>Image URL<input id=\"dirEditImageV560\" value=\"${esc(e.imageUrl||\"\")}\"></label><label>Latitude<input id=\"dirEditLatV561\" inputmode=\"decimal\" value=\"${esc(e.latitude??\"\")}\"></label><label>Longitude<input id=\"dirEditLongV561\" inputmode=\"decimal\" value=\"${esc(e.longitude??\"\")}\"></label></div></details>\n        </section>\n        <aside class=\"orbit-directory-side-v565\">\n          <section class=\"orbit-directory-section-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">MEDIA</p><h3>${generatedImage?\"Directory display image\":\"Official event image\"}</h3></div>${imageVerified?'<span class=\"orbit-good-v565\">Official verified</span>':displayImageReady?'<span class=\"orbit-good-v565\">Generated fallback</span>':'<span class=\"orbit-warn-v565\">Needs work</span>'}</div>\n            ${imageVerified?`<div class=\"orbit-directory-image-preview-v565\"><img src=\"${esc(e.imageUrl)}\" alt=\"${esc(e.title||\"Event image\")}\"><div><a href=\"${esc(e.imageUrl)}\" target=\"_blank\" rel=\"noopener\">Open image asset \\u2197</a>${e.imageSourceUrl?`<a href=\"${esc(e.imageSourceUrl)}\" target=\"_blank\" rel=\"noopener\">View source page \\u2197</a>`:\"\"}</div></div>`:generatedImage?`<div class=\"orbit-directory-image-empty-v565\"><strong>Safe CardShowIndex fallback is ready</strong><span>Orbit could not yet resolve official artwork, so the public card can use a generated listing banner made only from verified event facts. Official-image research continues and will replace it when verified.</span>${e.imageSourceUrl?`<a href=\"${esc(e.imageSourceUrl)}\" target=\"_blank\" rel=\"noopener\">Known official image source page \\u2197</a>`:\"\"}</div>`:`<div class=\"orbit-directory-image-empty-v565\"><strong>No usable image yet</strong><span>${esc(q.imageValidationReason||\"The image pipeline is still finding, extracting and visually verifying official artwork.\")}</span>${e.imageSourceUrl?`<a href=\"${esc(e.imageSourceUrl)}\" target=\"_blank\" rel=\"noopener\">Known image source page \\u2197</a>`:\"\"}</div>`}\n          </section>\n          ${e.socialLinks&&Object.keys(e.socialLinks).length?`<section class=\"orbit-directory-section-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">OFFICIAL PRESENCE</p><h3>Website & socials</h3></div></div><div class=\"orbit-directory-socials-v565\">${Object.entries(e.socialLinks).flatMap(([k,v])=>Array.isArray(v)?v.map(url=>`<a href=\"${esc(url)}\" target=\"_blank\" rel=\"noopener\">${esc(k)} \\u2197</a>`):[`<a href=\"${esc(v)}\" target=\"_blank\" rel=\"noopener\">${esc(k)} \\u2197</a>`]).join(\"\")}</div></section>`:\"\"}\n          ${e.seoBlueprint?`<section class=\"orbit-directory-section-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">SEO FOUNDATION</p><h3>Search readiness</h3></div><strong>${Number(e.seoBlueprint.readiness?.score||0)}%</strong></div><p class=\"orbit-muted\">Planned canonical path</p><code class=\"orbit-directory-code-v565\">${esc(e.seoBlueprint.canonicalPath||\"\")}</code><p class=\"orbit-muted\">${esc(e.seoBlueprint.metaTitle||\"\")}</p></section>`:\"\"}\n        </aside>\n      </div>\n      ${(e.pendingChanges||[]).length?`<section class=\"orbit-directory-section-v565 orbit-directory-warning-section-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">CHANGE DETECTION</p><h3>${e.pendingChanges.length} material live change${e.pendingChanges.length===1?\"\":\"s\"} need your approval</h3></div></div><div class=\"orbit-directory-change-list-v565\">${e.pendingChanges.slice(-12).map(x=>`<div><strong>${esc(x.field)}</strong><span>${esc(String(x.from??\"\"))}</span><b>\\u2192</b><span>${esc(String(x.to??\"\"))}</span></div>`).join(\"\")}</div></section>`:\"\"}\n      ${(e.possibleDuplicates||[]).length?`<section class=\"orbit-directory-section-v565 orbit-directory-warning-section-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">DUPLICATE CHECK</p><h3>Possible duplicate</h3></div></div>${e.possibleDuplicates.map(x=>`<p><strong>${esc(x.title)}</strong> \\xB7 ${esc(x.startDate)} \\xB7 ${esc(x.city||\"\")} \\xB7 match ${Number(x.identityScore||0)}</p>`).join(\"\")}</section>`:\"\"}\n      <div class=\"orbit-directory-evidence-grid-v565\"><section class=\"orbit-directory-section-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">EVIDENCE</p><h3>Source evidence (${sources.length})</h3></div></div><p class=\"orbit-muted\">${Number(q.independentSourceCount||0)} genuinely independent event source${Number(q.independentSourceCount||0)===1?\"\":\"s\"}. Eventbrite web + API count as one.</p><div class=\"orbit-directory-source-grid-v565\">${sources.length?sources.map(x=>`<a class=\"orbit-directory-source-card-v565\" href=\"${esc(x.url)}\" target=\"_blank\" rel=\"noopener\"><strong>${esc(x.type||\"source\")}</strong><span>${esc(x.reliability||\"unknown\")} reliability${x.channel?` \\xB7 ${esc(x.channel)}`:\"\"}</span><small>${esc((x.url||\"\").replace(/^https?:\\/\\//,\"\"))}</small></a>`).join(\"\"):\"<p>No direct source evidence recorded.</p>\"}</div></section><section class=\"orbit-directory-section-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">PROVENANCE</p><h3>Field evidence</h3></div></div><div class=\"orbit-directory-provenance-v565\"><table><tbody>${directoryEvidenceRowsV561(e)}</tbody></table></div></section></div>\n      <section class=\"orbit-directory-section-v565 orbit-directory-investigate-v565\"><div class=\"orbit-directory-section-heading-v565\"><div><p class=\"orbit-kicker\">AI RESEARCH</p><h3>Investigate with AI</h3></div></div><label>Paste a URL, clue or instruction<textarea id=\"dirInvestigateV561\" rows=\"4\" placeholder=\"Example: this organiser page has the correct image and venue address\\u2026\">${esc(e.researchInstruction||\"\")}</textarea></label><p>AI treats what you paste as a research lead, verifies the source, records provenance and learns useful source patterns for future events. Your text never becomes canonical data by itself.</p></section>\n    </div>`;const payload=()=>({title:$2(\"dirEditTitleV560\")?.value,startDate:$2(\"dirEditStartV560\")?.value,startTime:$2(\"dirEditStartTimeV561\")?.value,endDate:$2(\"dirEditEndV560\")?.value,endTime:$2(\"dirEditEndTimeV561\")?.value,venueName:$2(\"dirEditVenueV560\")?.value,addressLine1:$2(\"dirEditAddressV560\")?.value,city:$2(\"dirEditCityV560\")?.value,county:$2(\"dirEditCountyV560\")?.value,region:$2(\"dirEditRegionV560\")?.value,postcode:$2(\"dirEditPostcodeV560\")?.value,organiser:$2(\"dirEditOrganiserV560\")?.value,organiserUrl:$2(\"dirEditOrganiserUrlV561\")?.value,imageUrl:$2(\"dirEditImageV560\")?.value,ticketUrl:$2(\"dirEditTicketV560\")?.value,websiteUrl:$2(\"dirEditWebsiteV561\")?.value,latitude:$2(\"dirEditLatV561\")?.value,longitude:$2(\"dirEditLongV561\")?.value,description:$2(\"dirEditDescriptionV560\")?.value}),originalPayload={title:e.title||\"\",startDate:e.startDate||\"\",startTime:e.startTime||\"\",endDate:e.endDate||\"\",endTime:e.endTime||\"\",venueName:e.venueName||\"\",addressLine1:e.addressLine1||\"\",city:e.city||\"\",county:e.county||\"\",region:e.region||\"\",postcode:e.postcode||\"\",organiser:e.organiser||\"\",organiserUrl:e.organiserUrl||\"\",imageUrl:e.imageUrl||\"\",ticketUrl:e.ticketUrl||\"\",websiteUrl:e.websiteUrl||\"\",latitude:e.latitude==null?\"\":String(e.latitude),longitude:e.longitude==null?\"\":String(e.longitude),description:e.description||\"\"},hasManualChanges=()=>JSON.stringify(payload())!==JSON.stringify(originalPayload),showResult=(text2,error=!1)=>{const r=$2(\"dirActionResultV560\");r&&(r.hidden=!1,r.classList.toggle(\"error\",!!error),r.textContent=text2)},refreshListQuietly=()=>{loadDirectoryV560(!0).catch(()=>{})};$2(\"directoryEventCloseV560\")?.addEventListener(\"click\",()=>d.close()),$2(\"dirSaveV560\")?.addEventListener(\"click\",async ev=>{const button2=ev.currentTarget;setLoading(button2,!0);try{await api(\"/api/admin/directory/events/\"+encodeURIComponent(e.id),{method:\"PATCH\",body:JSON.stringify(payload()),cacheMs:0,timeoutMs:15e3}),showResult(approved?\"Saved and locked to your decision. Agents cannot silently overwrite the fields you changed.\":\"Saved successfully. AI enrichment continues separately in the background.\"),refreshListQuietly()}catch(err){showResult(err.message||err,!0)}finally{setLoading(button2,!1)}}),$2(\"dirApproveV560\")?.addEventListener(\"click\",async ev=>{const button2=ev.currentTarget;setLoading(button2,!0);try{hasManualChanges()&&await api(\"/api/admin/directory/events/\"+encodeURIComponent(e.id),{method:\"PATCH\",body:JSON.stringify(payload()),cacheMs:0,timeoutMs:15e3}),await api(\"/api/admin/directory/events/\"+encodeURIComponent(e.id)+\"/approve\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:15e3}),d.close(),refreshListQuietly(),setNotice2(pendingApproval?\"Live Directory update approved. The public record has now been updated and re-locked.\":\"Directory event approved and locked. Night Watch will verify it, but any material public change will always wait for your approval.\")}catch(err){showResult(err.message||err,!0)}finally{setLoading(button2,!1)}}),$2(\"dirInvestigateButtonV561\")?.addEventListener(\"click\",async ev=>{const instruction=$2(\"dirInvestigateV561\")?.value?.trim();if(!instruction){showResult(\"Paste a URL, clue or tell the agent what you want investigated.\",!0);return}const button2=ev.currentTarget;setLoading(button2,!0);try{await api(\"/api/admin/directory/events/\"+encodeURIComponent(e.id)+\"/investigate\",{method:\"POST\",body:JSON.stringify({instruction}),cacheMs:0,timeoutMs:15e3}),d.close(),refreshListQuietly(),setNotice2(\"Research lead saved. Directory AI will verify it in the background.\")}catch(err){showResult(err.message||err,!0)}finally{setLoading(button2,!1)}}),$2(\"dirIgnoreV561\")?.addEventListener(\"click\",async ev=>{if(!window.confirm(\"Exclude this item from CardShowIndex because it is not a real/in-scope card show? Orbit will remember the exclusion so the same false positive is not rediscovered.\"))return;const button2=ev.currentTarget;setLoading(button2,!0);try{await api(\"/api/admin/directory/events/\"+encodeURIComponent(e.id)+\"/ignore\",{method:\"POST\",body:JSON.stringify({reason:\"Excluded as a false positive by Orbit Admin\"}),cacheMs:0,timeoutMs:15e3}),d.close(),orbitDirectoryFilterV560=\"enriching\",refreshListQuietly()}catch(err){showResult(err.message||err,!0)}finally{setLoading(button2,!1)}}),$2(\"dirRestoreV561\")?.addEventListener(\"click\",async ev=>{const button2=ev.currentTarget;setLoading(button2,!0);try{await api(\"/api/admin/directory/events/\"+encodeURIComponent(e.id)+\"/restore\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:15e3}),d.close(),refreshListQuietly()}catch(err){showResult(err.message||err,!0)}finally{setLoading(button2,!1)}}),typeof d.showModal==\"function\"?d.showModal():d.setAttribute(\"open\",\"\")}let memberStoreAdminDataV601=null;function memberStoreMoneyV601(pence){return new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency:\"GBP\"}).format((Number(pence)||0)/100)}function memberStoreDateV601(value){if(!value)return\"\\u2014\";try{return new Date(value).toLocaleString(\"en-GB\",{dateStyle:\"medium\",timeStyle:\"short\"})}catch{return String(value)}}function memberStoreStatusV601(value){return String(value||\"draft\").replaceAll(\"_\",\" \").replace(/\\b\\w/g,c=>c.toUpperCase())}let paOpsDataV614=null,paOpsPaneV614=\"overview\";const paDateV614=value=>value?memberStoreDateV601(value):\"Not yet\",paMoneyV614=value=>\"$\"+Number(value||0).toFixed(4);function paFieldV614(label,name,type=\"text\",value=\"\",help=\"\"){return`<label>${esc(label)}<input name=\"${esc(name)}\" type=\"${esc(type)}\" value=\"${esc(String(value??\"\"))}\" ${type===\"password\"?'autocomplete=\"new-password\" spellcheck=\"false\"':'autocomplete=\"off\"'}>${help?`<small>${esc(help)}</small>`:\"\"}</label>`}function paOptionV614(value,label,current){return`<option value=\"${esc(value)}\" ${value===current?\"selected\":\"\"}>${esc(label)}</option>`}function paChoiceV614(label,name,value=!1,help=\"\"){return`<label class=\"pa614-check\"><input type=\"checkbox\" name=\"${esc(name)}\" ${value?\"checked\":\"\"}><span>${esc(label)}${help?`<small>${esc(help)}</small>`:\"\"}</span></label>`}function paShowPaneV614(pane){paOpsPaneV614=[\"overview\",\"connections\",\"agents\",\"diagnostics\"].includes(pane)?pane:\"overview\";const root=$2(\"paOpsV614\");root&&(root.querySelectorAll(\"[data-pa614-pane]\").forEach(el=>el.hidden=el.dataset.pa614Pane!==paOpsPaneV614),root.querySelectorAll(\"[data-pa614-tab]\").forEach(el=>{const on=el.dataset.pa614Tab===paOpsPaneV614;el.classList.toggle(\"active\",on),el.setAttribute(\"aria-selected\",String(on))}))}async function loadPokeOpsV614(force=!1){const root=$2(\"paOpsV614\");if(!(!root||root.dataset.loading===\"true\"||root.dataset.loaded===\"true\"&&!force)){root.dataset.loading=\"true\",root.dataset.loaded||(root.innerHTML='<p role=\"status\">Loading source connections and monitoring evidence\\u2026</p>');try{const data=await api(\"/api/admin/poke-alerts/operations\",{cacheMs:0,timeoutMs:6e4});if($2(\"paOpsV614\")!==root)return;paOpsDataV614=data,root.dataset.loaded=\"true\",renderPokeOpsV614(data)}catch{$2(\"paOpsV614\")===root&&(root.innerHTML='<p role=\"alert\">Monitoring evidence could not load. Your source settings were not changed.</p><button type=\"button\" data-pa614-retry>Try again</button>',root.querySelector(\"[data-pa614-retry]\").onclick=()=>loadPokeOpsV614(!0))}finally{root.dataset.loading=\"false\"}}}function renderPokeOpsV614(data){const root=$2(\"paOpsV614\");if(!root)return;const queue=data.queue||{},intel=data.intelligence||{},cost=intel.costs||{},policy=cost.policy||{},agents=intel.agents||[],connections=data.connections?.connections||[],runs=data.diagnostics?.runs||[],signals=data.signals?.signals||[],connRows=connections.map(c=>`<tr data-pa614-connection-row=\"${esc((c.name+\" \"+c.providerId+\" \"+c.sourceId).toLowerCase())}\"><td><strong>${esc(c.name)}</strong><small>${esc(c.providerId)} \\xB7 ${esc(c.kind)} \\xB7 ${c.enabled?\"Enabled\":\"Disabled\"}</small></td><td><strong>${esc(c.status)}</strong><small>${esc(c.lastErrorCode||\"No recorded error\")} \\xB7 HTTP ${Number(c.lastHttpStatus)||0}</small></td><td>${esc(c.networkConnected?\"Network account verified\":c.networkApproval===\"reported_by_mark\"?\"Account approval reported, not API verified\":c.networkApproval===\"website_verification_pending\"?\"Website verification pending\":\"Network account not verified\")}<small>${esc(c.entitlement)} \\xB7 ${esc(c.freshness)}</small></td><td>${esc(paDateV614(c.lastSuccessAt))}<small>Next ${esc(paDateV614(c.nextRunAt))}</small></td><td><button type=\"button\" class=\"secondary\" data-pa614-edit=\"${esc(c.connectionId)}\">Edit</button> <button type=\"button\" data-pa614-test=\"${esc(c.connectionId)}\">Test connection</button></td></tr>`).join(\"\"),agentRows=agents.map(a=>`<tr><td><strong>${esc(a.name)}</strong><small>${esc(a.trigger)}</small></td><td>${esc(a.health)}<small>${esc(a.attentionReason||a.summary||\"No recorded result yet\")}</small></td><td>${esc(a.modelRoute)}<small>${a.deterministicCompleted?\"Deterministic check completed\":\"Awaiting check\"}${a.paidAiDeferred?\" \\xB7 Paid AI deferred\":\"\"}${a.aiReason?\" \\xB7 \"+esc(a.aiReason):\"\"}</small></td><td>${esc(paDateV614(a.lastRunAt))}<small>Next ${esc(paDateV614(a.nextRunAt))}</small></td><td>${esc(paMoneyV614(a.cost30DaysUsd))}<small>${Number(a.calls30Days)||0} paid calls / 30 days</small></td><td><button type=\"button\" class=\"secondary\" data-pa614-agent=\"${esc(a.id)}\">Run now</button></td></tr>`).join(\"\"),policies=agents.map(a=>`<div class=\"pa614-agent-policy\"><strong>${esc(a.name)}</strong><label>Model route<select name=\"route:${esc(a.id)}\">${[[\"deterministic\",\"No paid AI\"],[\"routine\",\"Luna \\xB7 routine\"],[\"analysis\",\"Terra \\xB7 analysis\"],[\"engineering\",\"Sol \\xB7 engineering\"],[\"expert\",\"Astra \\xB7 escalation only\"]].map(([v,l])=>paOptionV614(v,l,policy.routes?.[a.id]||\"routine\")).join(\"\")}</select></label>${paFieldV614(\"Cadence (minutes)\",\"cadence:\"+a.id,\"number\",Math.ceil((policy.cadences?.[a.id]||a.cadenceSeconds)/60))}</div>`).join(\"\"),runRows=runs.map(r=>`<tr><td><strong>${esc(r.sourceId)}</strong><small>${esc(r.worker)} \\xB7 ${esc(r.version)}</small></td><td>${esc(r.status)}<small>${esc(r.blocker||\"No blocker recorded\")}</small></td><td>${esc(r.reconciliationStatus||\"Pending\")}<small>${Number(r.observations)||0} observations \\xB7 ${Number(r.alertsGenerated)||0} events</small></td><td>${esc(paDateV614(r.startedAt))}<small>${Number(r.durationMs)||0} ms \\xB7 next ${esc(paDateV614(r.nextRunAt))}</small></td><td><details><summary>Evidence</summary><pre>${esc(JSON.stringify(r,null,2))}</pre></details></td></tr>`).join(\"\"),signalRows=signals.map(r=>`<tr><td><strong>${esc(r.sourceId)}</strong><small>${esc(r.sku||\"SKU awaits exact verification\")}</small></td><td>${esc(r.classification)}<small>${esc(r.status)} \\xB7 ${esc(r.blocker||\"No blocker\")}</small></td><td>${esc(r.independenceKey)}<small>${esc(r.kind)} \\xB7 ${esc(paDateV614(r.observedAt))}</small></td><td>${r.eventId?`<button type=\"button\" class=\"secondary\" data-pa614-trace=\"${esc(r.eventId)}\">View delivery trace</button>`:\"No stock alert created\"}<details><summary>Signal evidence</summary><pre>${esc(JSON.stringify(r,null,2))}</pre></details></td></tr>`).join(\"\");root.innerHTML=`<div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">SOURCE OPERATIONS</p><h3>Sources, connections & evidence</h3><p>Read real blockers, manage supported feeds and keep routine monitoring token-free. Stock claims still require exact fresh product evidence.</p></div><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-pa614-refresh>Refresh evidence</button><button type=\"button\" class=\"secondary\" data-pa614-export>Export safe diagnostics</button></div></div>\n      <div class=\"pa614-tabs\" role=\"tablist\" aria-label=\"Pok\\xE9 Alerts operations\">${[[\"overview\",\"Overview\"],[\"connections\",\"Sources & Connections\"],[\"agents\",\"Agents & Cost\"],[\"diagnostics\",\"Diagnostics & Traces\"]].map(([v,l])=>`<button type=\"button\" role=\"tab\" data-pa614-tab=\"${v}\">${l}</button>`).join(\"\")}</div><div id=\"paOpsResultV614\" class=\"orbit-action-result\" role=\"status\" aria-live=\"polite\"></div>\n      <div data-pa614-pane=\"overview\"><div class=\"pa614-summary\"><article><small>Pok\\xE9mon Center UK \\xB7 priority zero</small><strong>${esc(queue.label||\"Queue state unknown\")}</strong><p>${esc(queue.blocker||\"A queue is an early warning, never proof that a product is available.\")}</p><small>Last check ${esc(paDateV614(queue.lastCheckAt))}<br>Last successful check ${esc(paDateV614(queue.lastSuccessAt))}<br>Next ${esc(paDateV614(queue.nextRunAt))} \\xB7 HTTP ${Number(queue.httpStatus)||0}</small><button type=\"button\" class=\"secondary\" data-pa614-queue>Check queue when due</button></article><article><small>AI cost today</small><strong>${esc(paMoneyV614(cost.costTodayUsd))} / $${Number(policy.dailyBudgetUsd||0).toFixed(2)}</strong><p>${Number(cost.callsToday)||0} / ${Number(policy.dailyCallCap)||0} paid calls \\xB7 ${Number(cost.expertCallsToday)||0} Astra escalations</p><small>7 days ${esc(paMoneyV614(cost.cost7DaysUsd))}<br>30 days ${esc(paMoneyV614(cost.cost30DaysUsd))}<br>${cost.budgetDeferred?\"Paid AI deferred. Deterministic monitoring continues.\":\"Deterministic polling uses no AI tokens.\"}</small></article><article><small>Delivery protection</small><strong>Existing test member only</strong><p>Saving a connection never enables member sends. Email, SMS, consent, credit balance and spend caps remain separate gates.</p><small>Fixtures and connection tests are not live delivery proof. Email acceptance is not inbox confirmation.</small></article></div></div>\n      <div data-pa614-pane=\"connections\" hidden><div class=\"pa614-toolbar\"><label>Find a connection<input type=\"search\" id=\"paConnectionSearchV614\" placeholder=\"Provider, retailer or name\"></label><button type=\"button\" data-pa614-new>Add connection</button></div><div class=\"pa614-table-wrap\"><table><thead><tr><th>Connection</th><th>Connection health</th><th>Account & entitlement</th><th>Last success / next check</th><th>Actions</th></tr></thead><tbody>${connRows||'<tr><td colspan=\"5\">No new connections yet. Existing retailer monitors and legacy feeds remain intact. Add approved credentials below.</td></tr>'}</tbody></table></div><div id=\"paConnectionEditorV614\"></div></div>\n      <div data-pa614-pane=\"agents\" hidden><p>These five agents belong to Members Club. Polling, parsing, queue checks and delivery never need a paid model. Paid explanations are advisory and cannot override stock or billing gates.</p><div class=\"pa614-table-wrap\"><table><thead><tr><th>Agent</th><th>Health / attention</th><th>Model & execution</th><th>Last / next run</th><th>Cost</th><th>Action</th></tr></thead><tbody>${agentRows||'<tr><td colspan=\"6\">Agent evidence is not available yet.</td></tr>'}</tbody></table></div><form id=\"paCostFormV614\"><h4>Hard cost controls</h4><div class=\"pa614-fields\">${paFieldV614(\"Daily AI budget (USD)\",\"dailyBudgetUsd\",\"number\",policy.dailyBudgetUsd??.5)}${paFieldV614(\"Maximum paid calls per day\",\"dailyCallCap\",\"number\",policy.dailyCallCap??12)}${paFieldV614(\"Minimum AI cooldown (minutes)\",\"cooldownMinutes\",\"number\",Math.ceil((policy.cooldownSeconds||900)/60))}${paFieldV614(\"Maximum Astra escalations per day\",\"expertDailyCap\",\"number\",policy.expertDailyCap??1)}</div>${policies}<p>Astra also requires a recent cheap diagnosis that explicitly needs deeper analysis. Source Scout cannot run more often than every four hours. Existing shared Orbit AI limits still apply. Unknown execution retains its reservation rather than replenishing the budget.</p><button type=\"submit\">Save cost controls</button></form><details><summary>Per-source cost and paid-call evidence</summary><pre>${esc(JSON.stringify({bySource:cost.bySource||[],recent:cost.recent||[],note:cost.note},null,2))}</pre></details></div>\n      <div data-pa614-pane=\"diagnostics\" hidden><h4>Latest source acquisitions</h4><p>Bounded recent history with HTTP, parser, exact identity, latency, backoff and reconciliation evidence. Failed checks stay Unknown or Blocked, not Out of stock.</p><div class=\"pa614-table-wrap\"><table><thead><tr><th>Worker</th><th>Result / blocker</th><th>Reconciliation</th><th>Time / next run</th><th>Details</th></tr></thead><tbody>${runRows||'<tr><td colspan=\"5\">No V614 source run has been recorded yet.</td></tr>'}</tbody></table></div><h4>Authorised signals & verification</h4><div class=\"pa614-table-wrap\"><table><thead><tr><th>Exact target</th><th>Classification</th><th>Original source</th><th>Trace</th></tr></thead><tbody>${signalRows||'<tr><td colspan=\"4\">No authorised connector signals have arrived yet.</td></tr>'}</tbody></table></div><form id=\"paTraceFormV614\" class=\"pa614-toolbar\">${paFieldV614(\"Stock event reference\",\"eventId\",\"text\",\"\",\"Copy an event reference from the stock or delivery evidence.\")}<button type=\"submit\">View delivery trace</button></form><pre id=\"paTraceResultV614\" hidden></pre></div>`;const budgetInput=root.querySelector('[name=\"dailyBudgetUsd\"]');budgetInput&&(budgetInput.step=\"0.01\",budgetInput.min=\"0\",budgetInput.max=\"10\"),paShowPaneV614(paOpsPaneV614),paEditConnectionV614(null),syncPokePageV618(),root.querySelectorAll(\"[data-pa614-tab]\").forEach(b=>b.onclick=()=>paShowPaneV614(b.dataset.pa614Tab)),root.querySelector(\"[data-pa614-refresh]\").onclick=()=>loadPokeOpsV614(!0),root.querySelector(\"[data-pa614-export]\").onclick=()=>{const blob=new Blob([JSON.stringify(paOpsDataV614,null,2)],{type:\"application/json\"}),url=URL.createObjectURL(blob),a=document.createElement(\"a\");a.href=url,a.download=\"Orbit_Poke_Alerts_V614_Safe_Diagnostics.json\",document.body.appendChild(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(url),1e3)},root.querySelector(\"[data-pa614-new]\").onclick=()=>{paEditConnectionV614(null),$2(\"paConnectionEditorV614\")?.scrollIntoView({block:\"nearest\",behavior:\"smooth\"})},root.querySelector(\"#paConnectionSearchV614\").oninput=e=>root.querySelectorAll(\"[data-pa614-connection-row]\").forEach(tr=>tr.hidden=!tr.dataset.pa614ConnectionRow.includes(e.target.value.toLowerCase().trim())),root.querySelectorAll(\"[data-pa614-edit]\").forEach(b=>b.onclick=()=>paEditConnectionV614(connections.find(c=>c.connectionId===b.dataset.pa614Edit))),root.querySelectorAll(\"[data-pa614-test]\").forEach(b=>b.onclick=()=>paActionV614(b,\"/connections/\"+encodeURIComponent(b.dataset.pa614Test)+\"/test\",{},\"Connection tested. No member message was sent.\")),root.querySelectorAll(\"[data-pa614-agent]\").forEach(b=>b.onclick=()=>paActionV614(b,\"/agents/\"+encodeURIComponent(b.dataset.pa614Agent)+\"/run\",{},\"Agent run completed within the configured limits.\")),root.querySelector(\"[data-pa614-queue]\").onclick=e=>paActionV614(e.currentTarget,\"/queue-sentinel/run\",{},\"Queue check processed. Cadence and access backoff are still enforced.\"),root.querySelectorAll(\"[data-pa614-trace]\").forEach(b=>b.onclick=()=>paTraceV614(b.dataset.pa614Trace)),root.querySelector(\"#paTraceFormV614\").onsubmit=e=>{e.preventDefault(),paTraceV614(new FormData(e.target).get(\"eventId\"))},root.querySelector(\"#paCostFormV614\").onsubmit=e=>{e.preventDefault();const form=e.target,fd=new FormData(form),routes={},cadences={};for(const a of agents)routes[a.id]=fd.get(\"route:\"+a.id),cadences[a.id]=Number(fd.get(\"cadence:\"+a.id))*60;paActionV614(form.querySelector('[type=\"submit\"]'),\"/ai-policy\",{dailyBudgetUsd:Number(fd.get(\"dailyBudgetUsd\")),dailyCallCap:Number(fd.get(\"dailyCallCap\")),cooldownSeconds:Number(fd.get(\"cooldownMinutes\"))*60,expertDailyCap:Number(fd.get(\"expertDailyCap\")),routes,cadences},\"Cost controls saved. Deterministic monitoring remains independent of paid AI.\")}}function paEditConnectionV614(row){const root=$2(\"paConnectionEditorV614\");if(!root)return;const r=row||{},providers=paOpsDataV614?.connections?.providers||[],sources=memberStoreAdminDataV601?.pokeAlerts?.sources||[],p=r.proxy||{},select=(label,name,options,current)=>`<label>${esc(label)}<select name=\"${esc(name)}\">${options.map(([v,l])=>paOptionV614(v,l,current)).join(\"\")}</select></label>`;root.innerHTML=`<form id=\"paConnectionFormV614\" class=\"pa614-editor\"><h4>${row?\"Edit connection\":\"Add a supported connection\"}</h4><p>Secret fields stay blank after saving. A blank field keeps its saved value. Network approval alone does not prove merchant access or a current stock feed.</p><input type=\"hidden\" name=\"connectionId\" value=\"${esc(r.connectionId||\"\")}\"><div class=\"pa614-fields\">${select(\"Provider\",\"providerId\",providers.map(p2=>[p2.id,p2.name]),r.providerId||\"avelon\")}${paFieldV614(\"Connection name\",\"name\",\"text\",r.name||\"\")}${select(\"Connection method\",\"kind\",[[\"feed\",\"Merchant / affiliate product feed\"],[\"discord_bot\",\"Authorised Discord bot\"],[\"relay\",\"Authorised JSON webhook / announcement relay\"],[\"social_api\",\"Authorised normalised X / social API\"],[\"proxy\",\"Permitted fixed proxy routing\"],[\"manual_benchmark\",\"Manual benchmark only\"]],r.kind||\"feed\")}${select(\"Retailer\",\"sourceId\",[[\"\",\"Match approved product links automatically\"],...sources.map(s=>[s.id,s.name])],r.sourceId||\"\")}${paFieldV614(\"Account / publisher ID\",\"publisherId\",\"text\",r.publisherId||\"\")}${paFieldV614(\"Merchant / advertiser ID\",\"merchantId\",\"text\",r.merchantId||\"\")}${paFieldV614(\"Check every (minutes)\",\"cadenceMinutes\",\"number\",Math.ceil((r.cadenceSeconds||900)/60))}${paFieldV614(\"Source freshness limit (minutes)\",\"maxAgeMinutes\",\"number\",Math.ceil((r.maxAgeSeconds||600)/60))}${paFieldV614(\"Original source group\",\"independenceGroup\",\"text\",r.independenceGroup||\"unattributed-relay\",\"Keep copied / rebroadcast signals in the same source group.\")}</div>\n      <div class=\"pa614-fields\" data-pa614-kind=\"feed social_api\">${paFieldV614(\"Feed / API URL (secret)\",\"endpointUrl\",\"password\",\"\",\"Use the authorised machine-readable endpoint. Saved URL paths are never returned.\")}${select(\"Authentication\",\"authMode\",[[\"none\",\"None / token already in secret URL\"],[\"bearer\",\"Bearer API token\"],[\"header\",\"Named API key header\"],[\"basic\",\"Basic key + secret\"]],r.authMode||\"none\")}${paFieldV614(\"API header name\",\"authHeader\",\"text\",r.authHeader||\"Authorization\")}${paFieldV614(\"API key / token\",\"apiKey\",\"password\")}${paFieldV614(\"API secret\",\"apiSecret\",\"password\")}${paFieldV614(\"Additional account secret (stored only)\",\"accountSecret\",\"password\")}${select(\"Feed format\",\"format\",[[\"normalized_json\",\"Normalised product JSON\"],[\"google_csv\",\"Google-style CSV\"],[\"google_xml\",\"Google-style XML\"]],r.format||\"normalized_json\")}</div>\n      <div data-pa614-kind=\"feed\"><div class=\"pa614-checks\">${paChoiceV614(\"Merchant access confirmed\",\"merchantAccessConfirmed\",r.merchantAccessConfirmed,\"Confirm actual access to this retailer, not just the affiliate network.\")}${paChoiceV614(\"This product / stock feed is permitted\",\"feedAccessConfirmed\",r.feedAccessConfirmed)}${paChoiceV614(\"Impact website verification completed\",\"websiteVerificationConfirmed\",r.websiteVerificationConfirmed)}</div><details><summary>Custom field mapping</summary><label>JSON field map<textarea name=\"fieldMap\" rows=\"4\" spellcheck=\"false\">${esc(JSON.stringify(r.fieldMap||{},null,2))}</textarea></label><small>Optional keys: title, url, sku, availability, observedAt, price, category, image, currency, market. A feed without a genuine source timestamp is discovery-only.</small></details></div>\n      <div class=\"pa614-fields\" data-pa614-kind=\"discord_bot\">${paFieldV614(\"Authorised bot token\",\"botToken\",\"password\",\"\",\"Bot tokens only. Personal user tokens, self-bots and logged-in scraping are not supported.\")}${paFieldV614(\"Discord channel ID\",\"channelId\",\"text\",r.channelId||\"\")}${paFieldV614(\"Allowed author IDs (optional)\",\"allowedAuthorIds\",\"text\",(r.allowedAuthorIds||[]).join(\", \"))}</div>\n      <div data-pa614-kind=\"relay\">${paFieldV614(\"Incoming relay key\",\"relayKey\",\"password\",\"\",\"At least 24 random characters. Save your own copy securely; Orbit will not show it again.\")}<p>Send authorised JSON signals to <code>/api/poke-alerts/relay/${esc(r.connectionId||\"{saved connection ID}\")}</code> with the <code>X-Orbit-Source-Key</code> header. Each signal needs an exact UK product <code>url</code>, original <code>observedAt</code> timestamp and preferably <code>originalId</code>. This does not read a private Discord account.</p></div>\n      <div data-pa614-kind=\"social_api\">${paFieldV614(\"Allowed UK / official accounts\",\"allowedAccounts\",\"text\",(r.allowedAccounts||[\"PokemonStockUK\"]).join(\", \"),\"The approved API must return account, url and original observedAt. Broad social scraping is not used.\")}</div>\n      <div data-pa614-kind=\"manual_benchmark\"><p>Manual comparison only. A paid Discord without supported bot or supplier access cannot be automated here.</p></div>\n      <div data-pa614-kind=\"proxy\"><div class=\"pa614-fields\">${paFieldV614(\"Proxy host (secret)\",\"proxyHost\",\"password\")}${paFieldV614(\"Proxy port\",\"proxyPort\",\"number\",p.port||443)}${select(\"Protocol\",\"proxyProtocol\",[[\"https\",\"HTTPS CONNECT\"],[\"http\",\"HTTP CONNECT\"]],p.protocol||\"https\")}${paFieldV614(\"Proxy username\",\"proxyUsername\",\"password\")}${paFieldV614(\"Proxy password\",\"proxyPassword\",\"password\")}${paFieldV614(\"Region\",\"proxyRegion\",\"text\",p.region||\"GB\")}${select(\"Session policy\",\"proxySessionPolicy\",[[\"static\",\"Static fixed route\"],[\"sticky\",\"Provider sticky session\"]],p.sessionPolicy||\"static\")}${paFieldV614(\"Daily traffic cap (MB)\",\"proxyCapMb\",\"number\",p.dailyTrafficCapMb||20)}${paFieldV614(\"Assigned retailer IDs\",\"proxySourceIds\",\"text\",(p.assignedSourceIds||[]).join(\", \"))}</div>${paChoiceV614(\"This source permits this regional / reliability route\",\"permittedRouting\",p.permittedRouting)}<p>Pok\\xE9mon Center UK cannot use a proxy. No rotation, queue bypass, WAF bypass, CAPTCHA solving or automatic fallback after access denial. Proxy tests respect retailer backoff.</p></div>\n      <div class=\"pa614-checks\">${paChoiceV614(\"Enable this connection\",\"enabled\",r.enabled,\"Delivery switches and member protections are not changed.\")}<label class=\"pa614-check\"><input type=\"checkbox\" name=\"clearSavedSecrets\"><span>Clear all stored secrets on save</span></label></div><small>Stored secret fields: ${esc((r.secretFieldsConfigured||[]).join(\", \")||\"None\")}. Values are never returned to this page.</small><div class=\"orbit-action-row\"><button type=\"submit\">Save connection</button></div></form>`;const form=root.querySelector(\"form\"),kind=form.elements.kind,provider=form.elements.providerId,show=()=>form.querySelectorAll(\"[data-pa614-kind]\").forEach(el=>el.hidden=!el.dataset.pa614Kind.split(\" \").includes(kind.value));provider.onchange=()=>{kind.value=providers.find(p2=>p2.id===provider.value)?.kind||\"feed\",show()},kind.onchange=show,show(),form.onsubmit=async e=>{e.preventDefault();const fd=new FormData(form),payload={};for(const[k,v]of fd.entries())[\"clearSavedSecrets\",\"fieldMap\"].includes(k)||(payload[k]=String(v));for(const k of[\"enabled\",\"merchantAccessConfirmed\",\"feedAccessConfirmed\",\"websiteVerificationConfirmed\",\"permittedRouting\"])payload[k]=form.elements[k]?.checked===!0;for(const k of[\"proxyPort\",\"proxyCapMb\"])payload[k]=Number(fd.get(k));payload.cadenceSeconds=Number(fd.get(\"cadenceMinutes\"))*60,payload.maxAgeSeconds=Number(fd.get(\"maxAgeMinutes\"))*60;try{payload.fieldMap=JSON.parse(fd.get(\"fieldMap\")||\"{}\")}catch{$2(\"paOpsResultV614\").textContent=\"Field mapping must be valid JSON. Nothing was saved.\";return}form.elements.clearSavedSecrets.checked&&(payload.clearSecretFields=[\"endpointUrl\",\"apiKey\",\"apiSecret\",\"accountSecret\",\"botToken\",\"relayKey\",\"proxyHost\",\"proxyUsername\",\"proxyPassword\"]),await paActionV614(form.querySelector('[type=\"submit\"]'),\"/connections\",payload,\"Connection saved. Secret values have been cleared from this form.\",()=>form.querySelectorAll('input[type=\"password\"]').forEach(i=>i.value=\"\"))}}async function paActionV614(button2,suffix,payload,message,onSaved){setLoading(button2,!0);const resultNode=$2(\"paOpsResultV614\");resultNode&&(resultNode.textContent=\"Processing\\u2026\");try{const result=await api(\"/api/admin/poke-alerts\"+suffix,{method:\"POST\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:1e5});onSaved?.(),await loadPokeOpsV614(!0);const out=$2(\"paOpsResultV614\");out&&(out.textContent=(result.success===!1?\"Not completed: \"+(result.code||result.status||\"Unknown blocker\"):message)+(result.status?\" Result: \"+result.status+\".\":\"\")+(result.code?\" \"+result.code:\"\")+(result.nextRunAt?\" Next check: \"+paDateV614(result.nextRunAt):\"\"))}catch(error){$2(\"paOpsResultV614\")&&($2(\"paOpsResultV614\").textContent=error.message||\"The action could not complete. No delivery settings were changed.\")}finally{setLoading(button2,!1)}}async function paTraceV614(eventId){if(!String(eventId||\"\").trim())return;activateModule(\"member-store\",\"poke-diagnostics\",{historyMode:\"push\"}),paShowPaneV614(\"diagnostics\");const out=$2(\"paTraceResultV614\");if(out){out.hidden=!1,out.textContent=\"Loading delivery trace\\u2026\";try{const data=await api(\"/api/admin/poke-alerts/trace/\"+encodeURIComponent(String(eventId).trim()),{cacheMs:0,timeoutMs:3e4});$2(\"paTraceResultV614\")===out&&(out.textContent=JSON.stringify(data,null,2))}catch(error){out.textContent=error.message||\"Trace could not be loaded.\"}}}const POKE_PAGES_V618=Object.freeze({\"poke-alerts\":\"Overview\",\"poke-delivery\":\"Delivery evidence\",\"poke-pc\":\"Pok\\xE9mon Center UK\",\"poke-connections\":\"Connections\",\"poke-sources\":\"Stock source broker\",\"poke-products\":\"Products Orbit sees\",\"poke-source-engineer\":\"Source Engineer\",\"poke-stock-scout\":\"Stock Scout\",\"poke-guardian\":\"Guardian\",\"poke-events\":\"Recent stock events\",\"poke-agents\":\"Agents & cost\",\"poke-diagnostics\":\"Diagnostics\"}),POKE_OPERATIONS_V618={\"poke-pc\":\"overview\",\"poke-connections\":\"connections\",\"poke-agents\":\"agents\",\"poke-diagnostics\":\"diagnostics\"};let vendorSmsAdminV674=null,vendorSmsPaneV674=\"connection\";function vendorSmsShowPaneV674(name){vendorSmsPaneV674=[\"connection\",\"templates\",\"usage\"].includes(name)?name:\"connection\",document.querySelectorAll(\"[data-vendor-sms-pane-v674]\").forEach(n=>n.hidden=n.dataset.vendorSmsPaneV674!==vendorSmsPaneV674),document.querySelectorAll(\"[data-vendor-sms-tab-v674]\").forEach(b=>{const active=b.dataset.vendorSmsTabV674===vendorSmsPaneV674;b.classList.toggle(\"active\",active),b.setAttribute(\"aria-current\",active?\"page\":\"false\")}),vendorSmsPaneV674!==\"connection\"&&loadVendorSmsAdminV674(!0)}function vendorSmsSampleVarsV674(key){return key===\"new_show\"?{event_name:\"Warwick Racecourse\",event_date:\"9 Jan 2027\",booking_url:\"https://orbitvendorclub.co.uk/?tab=book\"}:key===\"floor_plan\"?{event_name:\"Warwick Racecourse\",vendor_club_url:\"https://orbitvendorclub.co.uk/?tab=bookings\"}:{event_name:\"Warwick Racecourse\",ticket_count:\"2\",plural:\"s\",points:\"4\",points_plural:\"s\"}}function renderVendorSmsAdminV674(data){vendorSmsAdminV674=data;const templates=$2(\"vendorSmsTemplatesV674\"),usage=$2(\"vendorSmsUsageV674\");if(templates&&(templates.innerHTML=`<div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">VENDOR CLUB SMS</p><h3>Approved message templates</h3><p>Edit operational SMS templates. Event announcements are manual-only in SMS Campaigns. Saving a change removes live approval until you approve the new version.</p></div></div>${(data.templates||[]).map(t=>`<article class=\"orbit-panel\" data-vendor-sms-template-card=\"${esc(t.key)}\"><div class=\"orbit-panel-header\"><div><h3>${esc(t.name)}</h3><p>Version ${Number(t.version)||1} \\xB7 ${t.approved?\"<strong>Approved for live use</strong>\":\"Not approved \\xB7 automatic sends blocked\"}</p></div><span class=\"orbit-status ${t.approved?\"success\":\"warning\"}\">${t.approved?\"Approved\":\"Needs approval\"}</span></div><label>SMS body<textarea rows=\"4\" data-vendor-sms-body=\"${esc(t.key)}\">${esc(t.body)}</textarea></label><p><small>Variables: ${(t.variables||[]).map(v=>\"{{\"+esc(v)+\"}}\").join(\" \\xB7 \")}</small></p><div class=\"orbit-info-banner\"><strong>Live preview</strong><span data-vendor-sms-preview=\"${esc(t.key)}\">${esc(t.preview||\"\")}</span><small>${Number(t.characters)||0} characters \\xB7 ${Number(t.segments)||0} segment${Number(t.segments)===1?\"\":\"s\"} \\xB7 ${esc(t.encoding||\"\")}</small></div><div class=\"orbit-action-row\"><button type=\"button\" data-vendor-sms-save=\"${esc(t.key)}\">Save draft</button><button type=\"button\" class=\"secondary\" data-vendor-sms-approve=\"${esc(t.key)}\" data-approved=\"${t.approved?\"1\":\"0\"}\">${t.approved?\"Remove approval\":\"Approve for live use\"}</button><button type=\"button\" class=\"secondary\" data-vendor-sms-test=\"${esc(t.key)}\">Send authorised test SMS</button></div></article>`).join(\"\")}`,templates.querySelectorAll(\"[data-vendor-sms-body]\").forEach(area=>area.addEventListener(\"input\",()=>{const card=area.closest(\"[data-vendor-sms-template-card]\"),key=area.dataset.vendorSmsBody,t=(data.templates||[]).find(x=>x.key===key),vars=vendorSmsSampleVarsV674(key);let text2=area.value;for(const[k,v]of Object.entries(vars))text2=text2.replace(new RegExp(\"\\\\{\\\\{\\\\s*\"+k+\"\\\\s*\\\\}\\\\}\",\"gi\"),v);const out=card?.querySelector(\"[data-vendor-sms-preview]\");out&&(out.textContent=text2)})),templates.querySelectorAll(\"[data-vendor-sms-save]\").forEach(b=>b.onclick=async()=>{const key=b.dataset.vendorSmsSave,body=templates.querySelector(`[data-vendor-sms-body=\"${CSS.escape(key)}\"]`)?.value||\"\";setLoading(b,!0);try{await api(\"/api/admin/vendors/club/sms/templates/\"+encodeURIComponent(key),{method:\"POST\",body:JSON.stringify({body}),cacheMs:0}),setNotice2(\"SMS draft saved. Re-approve it before live use.\"),await loadVendorSmsAdminV674(!0)}catch(e){setNotice2(e.message,!0)}finally{setLoading(b,!1)}}),templates.querySelectorAll(\"[data-vendor-sms-approve]\").forEach(b=>b.onclick=async()=>{const key=b.dataset.vendorSmsApprove,approved=b.dataset.approved!==\"1\";setLoading(b,!0);try{await api(\"/api/admin/vendors/club/sms/templates/\"+encodeURIComponent(key)+\"/approval\",{method:\"POST\",body:JSON.stringify({approved}),cacheMs:0}),setNotice2(approved?\"SMS template approved for live use.\":\"SMS template approval removed.\"),await loadVendorSmsAdminV674(!0)}catch(e){setNotice2(e.message,!0)}finally{setLoading(b,!1)}}),templates.querySelectorAll(\"[data-vendor-sms-test]\").forEach(b=>b.onclick=async()=>{const key=b.dataset.vendorSmsTest,to=prompt(\"Authorised UK mobile number for this test SMS:\");if(to){setLoading(b,!0);try{const result=await api(\"/api/admin/vendors/club/sms/templates/\"+encodeURIComponent(key)+\"/test-send\",{method:\"POST\",body:JSON.stringify({to,vars:vendorSmsSampleVarsV674(key)}),cacheMs:0,timeoutMs:3e4});setNotice2(\"Test SMS submitted to Twilio\"+(result?.result?.messageSid?\" \\xB7 \"+result.result.messageSid:\"\")+\".\"),await loadVendorSmsAdminV674(!0)}catch(e){setNotice2(e.message,!0)}finally{setLoading(b,!1)}}})),usage){const u=data.usage||{},c=u.counts||{},bal=u.balance;usage.innerHTML=`<div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">TWILIO USAGE</p><h3>SMS credit & delivery</h3><p>Provider balance is shown only when Twilio returns it. Orbit never invents an SMS credit figure.</p></div><button type=\"button\" class=\"secondary\" id=\"vendorSmsRefreshV674\">Refresh</button></div><div class=\"orbit-stat-grid\"><article><small>Available Twilio balance</small><strong>${bal&&bal.balance!=null?esc(String(bal.currency||\"USD\"))+\" \"+Number(bal.balance).toFixed(2):\"Unavailable\"}</strong><p>${u.balanceError?esc(u.balanceError):u.configuration?.configured?\"Live provider account\":\"Twilio not configured\"}</p></article><article><small>Sent \\xB7 last 30 days</small><strong>${Number(c.sent)||0}</strong><p>${Number(c.segments)||0} SMS segment${Number(c.segments)===1?\"\":\"s\"}</p></article><article><small>Failed \\xB7 last 30 days</small><strong>${Number(c.failed)||0}</strong><p>Failed sends are retained for audit.</p></article><article><small>Recorded provider cost</small><strong>${Number(c.estimatedSpend||0).toFixed(4)}</strong><p>Only provider-returned message prices are totalled.</p></article></div><div class=\"orbit-panel\"><h4>Recent Vendor Club SMS activity</h4><div class=\"orbit-table-wrap\"><table><thead><tr><th>Template</th><th>Status</th><th>Show</th><th>Segments / cost</th><th>Time</th></tr></thead><tbody>${(u.recent||[]).map(r=>`<tr><td>${esc(r.templateKey||\"\")}</td><td>${esc(r.status||\"\")}</td><td>${esc(r.eventKey||\"\\u2014\")}</td><td>${Number(r.segments)||0}${r.price!=null?\" \\xB7 \"+esc(r.priceUnit||\"\")+\" \"+Math.abs(Number(r.price)).toFixed(4):\"\"}</td><td>${esc(r.sentAt||r.createdAt||\"\")}</td></tr>`).join(\"\")||'<tr><td colspan=\"5\">No Vendor Club SMS activity recorded yet.</td></tr>'}</tbody></table></div></div>`,$2(\"vendorSmsRefreshV674\")?.addEventListener(\"click\",()=>loadVendorSmsAdminV674(!0))}}async function loadVendorSmsAdminV674(force=!1){if(!force&&vendorSmsAdminV674){renderVendorSmsAdminV674(vendorSmsAdminV674);return}try{const data=await api(\"/api/admin/vendors/club/sms\",{cacheMs:0,timeoutMs:3e4});renderVendorSmsAdminV674(data)}catch(e){const target=$2(vendorSmsPaneV674===\"usage\"?\"vendorSmsUsageV674\":\"vendorSmsTemplatesV674\");target&&(target.innerHTML=`<div class=\"orbit-info-banner warning\"><strong>Vendor Club SMS data unavailable</strong><span>${esc(e.message||\"Unable to load SMS settings.\")}</span></div>`)}}function organisePokeAdminV618(){const mount=$2(\"memberStoreAdminMountV601\"),poke=mount?.querySelector('[data-member-store-pane-v601=\"poke-alerts\"]');if(!poke||poke.dataset.organisedV618)return;poke.dataset.organisedV618=\"1\";const original=Array.from(poke.children),pages={};for(const[key,label]of Object.entries(POKE_PAGES_V618)){const section=document.createElement(\"div\");section.dataset.pokePageV618=key,section.className=\"orbit-poke-page-v618\",section.setAttribute(\"aria-label\",label),pages[key]=section,poke.appendChild(section)}const move=(node,key)=>{node&&pages[key].appendChild(node)};move(poke.querySelector(\".orbit-v613-delivery\"),\"poke-delivery\"),move(poke.querySelector(\".orbit-v612-pc-registry\"),\"poke-pc\");const broker=poke.querySelector(\".orbit-v609-stock-sources\");if(broker){const products=broker.querySelector(\"#paProductEvidenceV610\")?.closest(\"section\"),engineer=broker.querySelector(\"#paScoutQueueV610\")?.closest(\"section\");if(products){const label=document.createElement(\"label\");label.className=\"orbit-poke-retailer-v618\",label.textContent=\"Retailer\";const select=document.createElement(\"select\");select.id=\"paProductsRetailerV618\";const originalSelect=broker.querySelector(\"#paSourceProviderRetailerV609\");for(const option of originalSelect?.options||[])select.appendChild(option.cloneNode(!0));label.appendChild(select),products.insertBefore(label,products.querySelector(\"#paInspectProductsV610\"));const copy=products.querySelector(\"p\");copy&&(copy.textContent=\"Choose a retailer here. Last confirmed stock may be old when a source is degraded; this view does not certify delivery.\"),move(products,\"poke-products\")}move(engineer,\"poke-source-engineer\");const scout=broker.querySelector(\"#paStockScoutRetailerV609\")?.closest(\".orbit-form-grid\");scout&&(move(scout.previousElementSibling,\"poke-stock-scout\"),move(scout,\"poke-stock-scout\"),move(broker.querySelector(\"#paStockScoutResultV609\"),\"poke-stock-scout\")),move(broker,\"poke-sources\")}move(poke.querySelector(\".orbit-v605-guardian-panel\"),\"poke-guardian\"),move(poke.querySelector(\"#paEventTableV602\")?.closest(\".orbit-panel\"),\"poke-events\"),move(poke.querySelector(\"#pokeAlertObservationFormV602\")?.closest(\"details\"),\"poke-diagnostics\");const sms=document.createElement(\"section\");sms.dataset.memberStorePaneV601=\"sms\",sms.className=\"orbit-sms-page-v618\",sms.hidden=!0;const smsHeader=document.createElement(\"div\");smsHeader.className=\"orbit-panel-header\",smsHeader.innerHTML='<div><p class=\"orbit-kicker\">MEMBERS CLUB</p><h2>SMS</h2><p>Manage the Twilio connection, approve Vendor Club message templates and inspect real usage.</p></div>',sms.appendChild(smsHeader);const smsNav=document.createElement(\"div\");smsNav.className=\"orbit-context-nav\",smsNav.innerHTML='<button type=\"button\" data-vendor-sms-tab-v674=\"connection\">Connection & Delivery Settings</button><button type=\"button\" data-vendor-sms-tab-v674=\"templates\">SMS Templates</button><button type=\"button\" data-vendor-sms-tab-v674=\"usage\">Usage & Credit</button>',sms.appendChild(smsNav);const connection=document.createElement(\"div\");connection.dataset.vendorSmsPaneV674=\"connection\";const templates=document.createElement(\"div\");templates.dataset.vendorSmsPaneV674=\"templates\",templates.id=\"vendorSmsTemplatesV674\",templates.hidden=!0;const usage=document.createElement(\"div\");usage.dataset.vendorSmsPaneV674=\"usage\",usage.id=\"vendorSmsUsageV674\",usage.hidden=!0,sms.append(connection,templates,usage);const provider=poke.querySelector(\".orbit-pa-provider-v603\"),delivery=poke.querySelector(\"#pokeAlertSettingsFormV602\")?.closest(\".orbit-panel\");provider&&connection.appendChild(provider),delivery&&connection.appendChild(delivery),poke.parentElement.appendChild(sms),smsNav.querySelectorAll(\"[data-vendor-sms-tab-v674]\").forEach(b=>b.onclick=()=>vendorSmsShowPaneV674(b.dataset.vendorSmsTabV674)),vendorSmsShowPaneV674(\"connection\");const operations=$2(\"paOpsV614\");for(const node of original)node.parentElement===poke&&node!==operations&&move(node,\"poke-alerts\");operations&&poke.appendChild(operations);const toolbar=document.createElement(\"div\");toolbar.className=\"orbit-poke-tools-v618\",toolbar.innerHTML='<span id=\"pokePageTitleV618\"></span><button type=\"button\" class=\"secondary\" data-poke-refresh-v618>Refresh view</button>',poke.prepend(toolbar),toolbar.querySelector(\"[data-poke-refresh-v618]\").onclick=()=>loadMemberStoreAdminV601(!0).catch(error=>setNotice2(error.message,!0))}function syncPokePageV618(){const pane=state.currentMemberStorePaneV601||\"overview\",ops=$2(\"paOpsV614\");document.querySelectorAll(\"[data-poke-page-v618]\").forEach(node=>node.hidden=node.dataset.pokePageV618!==pane),ops&&(ops.hidden=!POKE_OPERATIONS_V618[pane],ops.hidden||paShowPaneV614(POKE_OPERATIONS_V618[pane])),$2(\"pokePageTitleV618\")&&($2(\"pokePageTitleV618\").textContent=POKE_PAGES_V618[pane]||\"\");const wrapper=$2(\"memberStoreAdminMountV601\")?.querySelector(\".orbit-member-store-admin-v601\");wrapper&&(wrapper.dataset.pageV618=pane)}function memberStorePaneV601(name){const value=[\"overview\",\"products\",\"orders\",\"draws\",\"topups\",\"store-fulfilment\",\"launch\",\"wallets\",\"settings\",\"sms\",...Object.keys(POKE_PAGES_V618)].includes(name)?name:\"overview\";state.currentMemberStorePaneV601=value;const parent=POKE_PAGES_V618[value]?\"poke-alerts\":value;document.querySelectorAll(\"[data-member-store-pane-v601]\").forEach(node=>node.hidden=node.dataset.memberStorePaneV601!==parent),document.querySelectorAll(\"[data-member-store-view]\").forEach(button2=>{const active=button2.dataset.memberStoreView===value;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")}),syncPokePageV618(),POKE_OPERATIONS_V618[value]&&loadPokeOpsV614(),value===\"sms\"&&vendorSmsPaneV674!==\"connection\"&&loadVendorSmsAdminV674()}async function memberStoreUploadImageV601(file,title,type){if(!file)return{mediaId:\"\",imageUrl:\"\"};if(!/^image\\/(webp|png|jpe?g)$/i.test(file.type||\"\"))throw new Error(\"Use a WebP, JPG or PNG image.\");if(file.size>5*1024*1024)throw new Error(\"Images must be 5 MB or smaller.\");const dataUrl=await fileToDataUrlV74(file),image=new Image,dimensions=await new Promise(resolve=>{image.onload=()=>resolve({width:image.naturalWidth,height:image.naturalHeight}),image.onerror=()=>resolve({}),image.src=dataUrl}),data=await api(\"/api/admin/media\",{method:\"POST\",body:JSON.stringify({filename:file.name,title:title||file.name,tags:[\"member-store\",type].join(\",\"),scope:\"members-club\",dataUrl,width:dimensions.width,height:dimensions.height}),cacheMs:0,timeoutMs:3e4});return{mediaId:data.item?.id||\"\",imageUrl:data.item?.url||\"\"}}function memberStoreFormStatusOptionsV601(value){return[[\"draft\",\"Draft\"],[\"preview\",\"Preview\"],[\"coming_soon\",\"Coming Soon\"]].map(([v,l])=>`<option value=\"${v}\"${String(value||\"draft\")===v?\" selected\":\"\"}>${l}</option>`).join(\"\")}function memberStoreTopUpsTableV712(rows=[]){return rows.length?table([\"Order / checkout\",\"Member\",\"Credit\",\"Shopify payment\",\"Orbit settlement\",\"Email\",\"Action\"],rows.map(row=>{const codes=(row.discountCodes||[]).join(\", \"),status=row.settlementStatus||row.checkoutStatus||\"pending\",needsRepair=status!==\"credited\"&&status!==\"reversed\";return`<tr><td><strong>${esc(row.shopifyOrderName||row.shopifyOrderId||\"Pending Shopify order\")}</strong><small>${esc(row.checkoutId||\"\")}</small><small>${esc(memberStoreDateV601(row.createdAt))}</small></td><td><strong>${esc(row.memberName||row.memberNumber||row.subscriptionId||\"Member\")}</strong><small>${esc(row.memberNumber||\"\")} \\xB7 ${esc(row.email||\"\")}</small></td><td><strong>${esc(memberStoreMoneyV601(row.grossCreditPence||0))}</strong><small>Expected ${esc(memberStoreMoneyV601(row.expectedPayPence||0))}</small></td><td><strong>${esc(memberStoreMoneyV601(row.cashPaidPence||0))}</strong><small>${codes?`Promo ${esc(codes)} \\xB7 ${esc(memberStoreMoneyV601(row.discountPence||0))} discount`:\"No promo\"} \\xB7 ${esc(row.financialStatus||row.providerStatus||\"pending\")}</small></td><td><span class=\"orbit-status-pill ${status===\"credited\"?\"success\":status===\"reconciliation_error\"?\"danger\":status===\"reversed\"?\"warning\":\"muted\"}\">${esc(memberStoreStatusV601(status))}</span><small>${row.ledgerId?`Ledger ${esc(row.ledgerId)}`:row.reconcileError?esc(row.reconcileError):esc(row.providerReason||\"Awaiting reconciliation\")}</small></td><td>${esc(row.emailStatus||\"not queued\")}<small>${esc(row.emailSentAt?memberStoreDateV601(row.emailSentAt):\"\")}</small></td><td>${needsRepair?`<button type=\"button\" class=\"secondary\" data-ms-topup-reconcile-v712=\"${esc(row.checkoutId)}\">Reconcile now</button>`:\"\\u2014\"}</td></tr>`}),\"No Member Credit top ups found.\"):\"<div class='orbit-empty-state'><strong>No Member Credit top ups found</strong><span>Shopify Member Credit checkouts will appear here as soon as they are created.</span></div>\"}async function loadMemberStoreTopUpsV712({button:button2=null}={}){button2&&setLoading(button2,!0);try{const query=new URLSearchParams,search=$2(\"msTopUpSearchV712\")?.value?.trim(),status=$2(\"msTopUpStatusV712\")?.value||\"\",promo=$2(\"msTopUpPromoV712\")?.value?.trim();search&&query.set(\"search\",search),status&&query.set(\"status\",status),promo&&query.set(\"promo\",promo),query.set(\"limit\",\"200\");const result=await api(\"/api/admin/member-store/top-ups?\"+query.toString(),{cacheMs:0,timeoutMs:2e4}),mount=$2(\"msTopUpsMountV712\");mount&&(mount.innerHTML=memberStoreTopUpsTableV712(result.topUps||[]));const summary=$2(\"msTopUpsSummaryV712\");return summary&&(summary.textContent=`${Number(result.counts?.total||0)} top ups \\xB7 ${Number(result.counts?.credited||0)} credited \\xB7 ${Number(result.counts?.pending||0)} pending \\xB7 ${Number(result.counts?.errors||0)} errors`),bindMemberStoreTopUpsV712(),result}finally{button2&&setLoading(button2,!1)}}function bindMemberStoreTopUpsV712(){document.querySelectorAll(\"[data-ms-topup-reconcile-v712]\").forEach(button2=>{button2.dataset.boundV712||(button2.dataset.boundV712=\"1\",button2.addEventListener(\"click\",async()=>{setLoading(button2,!0);try{const result=await api(\"/api/admin/member-store/top-ups/\"+encodeURIComponent(button2.dataset.msTopupReconcileV712)+\"/reconcile\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:3e4});setNotice2(result.status===\"credited\"?\"Member Credit top up reconciled and credited.\":result.error||\"Top up checked.\"),await loadMemberStoreTopUpsV712()}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}))})}function renderMemberStoreAdminV601(data){memberStoreAdminDataV601=data;const mount=$2(\"memberStoreAdminMountV601\");if(!mount)return;const launch=data.launch||{},settings=data.settings||{},paymentConnection=data.paymentConnection||{},bundles=data.bundles||[],products=data.products||[],draws=data.draws||[],wallets=data.wallets||[],orders=data.orders||[],storeFulfilments=data.storeFulfilments||[],launchCredit=data.launchCredit||{},launchCampaign2=data.launchCampaign||{},launchBroadcast2=data.launchBroadcast||{},launchReadiness=data.launchReadiness||{},launchBlockers=Array.isArray(launchReadiness.blockers)?launchReadiness.blockers:[],launchCreditRemaining=Math.max(0,Number(launchCredit.eligible||0)-Number(launchCredit.granted||0)),poke=data.pokeAlerts||{},pokeSettings=poke.settings||{},pokeLaunch=poke.launch||{},pokeProvider=poke.provider||{},pokeSourceProviders=poke.sourceProviders||[],productRows=products.length?products.map(row=>`<article class=\"orbit-member-store-admin-item-v601\"><div class=\"orbit-member-store-admin-thumb-v601\">${row.imageUrl?`<img src=\"${esc(row.imageUrl)}\" alt=\"\">`:\"<span>\\u{1F4E6}</span>\"}</div><div><span class=\"orbit-pill\">${esc(memberStoreStatusV601(row.status))}</span><h3>${esc(row.title)}</h3><p>${esc(row.description||\"No description yet.\")}</p><small>${esc(memberStoreMoneyV601(row.creditPricePence))} Member Credit \\xB7 ${esc(String(row.stock))} in stock</small></div><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-ms-product-edit-v601=\"${esc(row.id)}\">Edit</button>${(launch.productOrdersEnabled||launch.sandboxCommerceEnabled)&&row.status!==\"active\"?`<button type=\"button\" data-ms-status-v601=\"product:${esc(row.id)}:active\">Activate</button>`:\"\"}<button type=\"button\" class=\"danger\" data-ms-archive-v601=\"product:${esc(row.id)}\">Archive</button></div></article>`).join(\"\"):\"<div class='orbit-empty-state'><strong>No Members Store products yet</strong><span>Create a normal members-only product below.</span></div>\",drawRows=draws.length?draws.map(row=>`<article class=\"orbit-member-store-admin-item-v601\"><div class=\"orbit-member-store-admin-thumb-v601\">${row.imageUrl?`<img src=\"${esc(row.imageUrl)}\" alt=\"\">`:\"<span>\\u{1F3C6}</span>\"}</div><div><span class=\"orbit-pill\">${esc(memberStoreStatusV601(row.status))}</span><h3>${esc(row.title)}</h3><p>${esc(row.description||\"No description yet.\")}</p><small>${esc(memberStoreMoneyV601(row.entryCreditPence))} per entry \\xB7 ${esc(String(row.totalEntryCount||0))} entries \\xB7 closes ${esc(memberStoreDateV601(row.closeAt))} \\xB7 draws ${esc(memberStoreDateV601(row.drawAt))}</small></div><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-ms-draw-edit-v601=\"${esc(row.id)}\">Edit</button><button type=\"button\" class=\"secondary\" data-ms-draw-entries-v601=\"${esc(row.id)}\">Entries</button>${launch.sandboxCommerceEnabled?`<button type=\"button\" class=\"secondary\" data-ms-draw-reset-sandbox-v606=\"${esc(row.id)}\">Reset test data</button>`:\"\"}${(launch.drawEntriesEnabled||launch.sandboxCommerceEnabled)&&[\"draft\",\"preview\",\"coming_soon\"].includes(row.status)?`<button type=\"button\" data-ms-status-v601=\"draw:${esc(row.id)}:open\">Open draw</button>`:\"\"}<button type=\"button\" class=\"danger\" data-ms-archive-v601=\"draw:${esc(row.id)}\">Archive</button></div></article>`).join(\"\"):\"<div class='orbit-empty-state'><strong>No Orbit Chases yet</strong><span>Create your first Chase below. The approved test member can exercise the complete sandbox entry flow while ordinary members remain on the stable experience.</span></div>\",walletRows=wallets.length?table([\"Member\",\"Email\",\"Balance\",\"Updated\"],wallets.map(row=>`<tr><td><strong>${esc(row.memberNumber||row.subscriptionId||\"\\u2014\")}</strong><small>${esc(row.subscriptionId||\"\")}</small></td><td>${esc(row.email||\"\\u2014\")}</td><td><strong>${esc(memberStoreMoneyV601(row.balancePence))}</strong></td><td>${esc(memberStoreDateV601(row.updatedAt))}</td></tr>`),\"No Member Credit wallets yet.\"):\"<div class='orbit-empty-state'><strong>No Member Credit wallets yet</strong><span>Issue test credit to the existing Orbit test member to begin previewing the experience.</span></div>\",orderRows=orders.length?table([\"Order\",\"Member\",\"Items\",\"Credit\",\"Fulfilment\",\"Tracking\"],orders.map(row=>`<tr><td><strong>${esc(row.orderId||\"\\u2014\")}</strong><small>${esc(memberStoreDateV601(row.createdAt))}</small></td><td>${esc(row.memberNumber||row.subscriptionId||row.email||\"\\u2014\")}</td><td>${esc((row.items||[]).map(item=>`${item.quantity||1} \\xD7 ${item.title||\"Item\"}`).join(\", \")||\"\\u2014\")}</td><td><strong>${esc(memberStoreMoneyV601(row.totalCreditPence||0))}</strong></td><td>${esc(memberStoreStatusV601(row.status||\"processing\"))}</td><td>${esc(row.trackingNumber||\"\\u2014\")}</td></tr>`),\"No Members Store orders yet.\"):\"<div class='orbit-empty-state'><strong>No Members Store orders yet</strong><span>Completed preview/live purchases will appear here and physical items will flow into canonical Fulfilment.</span></div>\",storeFulfilmentRows=storeFulfilments.length?table([\"Order / parcel\",\"Member\",\"Items\",\"Delivery\",\"Status\",\"Tracking\"],storeFulfilments.map(row=>`<tr><td><strong>${esc(row.shipmentId||row.sourceId||\"\\u2014\")}</strong><small>${esc(memberStoreDateV601(row.createdAt))}</small></td><td><strong>${esc(row.memberName||row.memberNumber||\"Member\")}</strong><small>${esc(row.memberNumber||\"\")} \\xB7 ${esc(row.email||\"\")}</small></td><td>${esc((row.contents||[]).map(item=>`${item.quantity||1} \\xD7 ${item.name||item.title||\"Item\"}`).join(\", \")||\"\\u2014\")}</td><td>${row.deliveryComplete?`<strong>${esc(row.delivery?.postcode||\"\")}</strong><small>${esc([row.delivery?.addressLine1,row.delivery?.city].filter(Boolean).join(\", \"))}</small>`:'<span class=\"orbit-status-pill danger\">Address needed</span>'}</td><td><span class=\"orbit-status-pill ${row.status===\"awaiting_label\"?\"warning\":row.status===\"dispatched\"||row.status===\"delivered\"?\"success\":\"muted\"}\">${esc(memberStoreStatusV601(row.status||\"awaiting_label\"))}</span></td><td>${esc(row.trackingNumber||\"\\u2014\")}</td></tr>`),\"No Store fulfilments yet.\"):\"<div class='orbit-empty-state'><strong>No Store fulfilments yet</strong><span>Paid Members Shop orders will appear here automatically ready for label generation.</span></div>\",testMembers=data.testMembers||[],defaultTestLookup=testMembers[0]?.memberNumber||testMembers[0]?.subscriptionId||testMembers[0]?.email||\"\",pokeSourceRows=(poke.sources||[]).map(source=>{const health=source.health||{},status=health.status||\"waiting\",tone=status===\"healthy\"?\"success\":status===\"attention\"?\"danger\":status===\"degraded\"?\"warning\":\"\",tracked=Number(health.trackedProducts??health.productsSeen??0),lastGood=Number(health.lastKnownGoodProducts??tracked),fails=Number(health.consecutiveFailures||0),sourceProducts=(poke.products||[]).filter(row=>String(row.sourceId||\"\")===String(source.id)).slice(0,12),warnings=Array.isArray(health.warnings)?health.warnings:[],capability=health.stockCapable?`${esc(String(health.stockKnownProducts||0))} stock-readable`:tracked?\"catalogue only\":\"awaiting inventory\",mode=health.acquisitionMode?String(health.acquisitionMode).replaceAll(\"_\",\" \"):\"not established\",certification=source.certification||{},certLabels={certified:\"Certified working\",awaiting_live_transition:\"Awaiting a live stock event\",discovery_only:\"Discovery only\",queue_only:\"Queue only\",degraded:\"Degraded\",unproven:\"Not yet proven\"},productsHtml=sourceProducts.length?sourceProducts.map(row=>`<li><span><strong>${esc(row.title||row.productKey||\"Pok\\xE9mon TCG product\")}</strong><small>${esc(row.category||\"Pok\\xE9mon TCG\")} \\xB7 ${esc(memberStoreStatusV601(row.currentAvailability||row.observedState||\"unknown\"))} now \\xB7 last confirmed ${esc(memberStoreStatusV601(row.stockState||\"unknown\"))}</small></span>${row.url?`<a href=\"${esc(row.url)}\" target=\"_blank\" rel=\"noopener\">Open</a>`:\"\"}</li>`).join(\"\"):\"<li><span><strong>No tracked products yet</strong><small>Orbit will preserve the last-known-good catalogue while this source retries.</small></span></li>\";return`<article class=\"orbit-pa-admin-source-v602 orbit-pa-live-source-v603 orbit-v607-source-card\"><div><span class=\"orbit-pill ${tone}\">${esc(source.enabled?memberStoreStatusV601(status):\"Disabled\")}</span><h3>${esc(source.name||source.id)}</h3><p class=\"orbit-v612-certification\"><strong>${esc(certLabels[certification.status]||\"Not yet proven\")}</strong>${certification.verifiedChannels?.length?` \\xB7 ${esc(certification.verifiedChannels.join(\", \"))}`:\"\"}</p><p>${esc(String(source.coverage||\"national\").replaceAll(\"_\",\" \"))} \\xB7 checks about every ${esc(String(source.pollEveryMinutes||5))} min</p><small>${health.lastSuccessAt?`Last healthy ${esc(memberStoreDateV601(health.lastSuccessAt))} \\xB7 ${esc(String(tracked))} products now \\xB7 ${esc(String(lastGood))} last known good`:\"Waiting for first successful retailer scan\"}${fails?`<br>${esc(String(fails))} consecutive failure${fails===1?\"\":\"s\"}${health.nextRetryAt?` \\xB7 retry ${esc(memberStoreDateV601(health.nextRetryAt))}`:\"\"}`:\"\"}${health.lastError?`<br><b>${esc(health.lastError)}</b>`:\"\"}</small><div class=\"orbit-v607-source-meta\"><span>Acquisition \\xB7 ${esc(mode)}</span><span>Environment \\xB7 ${esc(health.executionEnvironment||\"Not checked\")}</span><span>Source type \\xB7 ${esc(health.sourceType||\"Not checked\")}</span><span>Valid product \\xB7 ${esc(memberStoreDateV601(health.lastValidProductObservation))}</span><span>Parser failures \\xB7 ${esc(String(health.parserFailures||0))}</span><span>Capability \\xB7 ${esc(capability)}</span>${health.httpStatus?`<span>HTTP \\xB7 ${esc(String(health.httpStatus))}</span>`:\"\"}</div>${warnings.length?`<div class=\"orbit-v607-source-warning\">${warnings.slice(0,2).map(w=>`<span>${esc(w)}</span>`).join(\"\")}</div>`:\"\"}<details class=\"orbit-v612-proof\"><summary>What is actually proven?</summary><p>${esc(certification.note||\"No complete real stock-to-member delivery chain has been recorded.\")}</p>${Object.entries(certification.checks||{}).map(([name,passed])=>`<p>${passed?\"\\u2713\":\"\\u25CB\"} ${esc(name.replace(/([A-Z])/g,\" $1\"))}</p>`).join(\"\")}</details><details class=\"orbit-v607-source-products\"><summary>Products Orbit sees \\xB7 ${esc(String(sourceProducts.length||tracked))}</summary><ul>${productsHtml}</ul></details></div><div class=\"orbit-pa-source-actions-v603\"><a href=\"${esc(source.monitorUrl||\"#\")}\" target=\"_blank\" rel=\"noopener\">Open retailer</a><button type=\"button\" class=\"secondary\" data-pa-run-source-v603=\"${esc(source.id)}\">Check now</button></div></article>`}).join(\"\")||\"<div class='orbit-empty-state'><strong>No sources configured</strong></div>\",pokeEventRows=(poke.events||[]).length?table([\"When\",\"Retailer\",\"Product\",\"Event\",\"State\",\"Action\"],(poke.events||[]).slice(0,30).map(event=>`<tr><td>${esc(memberStoreDateV601(event.createdAt))}</td><td>${esc(event.retailerId||event.sourceId||\"\\u2014\")}</td><td><strong>${esc(event.title||event.productKey||\"\\u2014\")}</strong></td><td>${esc(memberStoreStatusV601(event.type||\"event\"))}</td><td>${esc(memberStoreStatusV601(event.stockState||\"unknown\"))}</td><td><button type=\"button\" class=\"secondary\" data-pa-fanout-v602=\"${esc(event.eventId)}\">Preview matches</button></td></tr>`),\"No stock transitions have been recorded yet.\"):\"<div class='orbit-empty-state'><strong>No stock transitions yet</strong><span>Use the test observation form below to exercise the transition/deduplication engine without contacting a retailer.</span></div>\",sourceBrokerRows=(poke.sources||[]).map(source=>{const cfg=source.sourceBroker?.configuredProvider||{};return`<option value=\"${esc(source.id)}\">${esc(source.name||source.id)}${cfg.enabled?` \\xB7 ${esc(cfg.providerLabel||cfg.format||\"partner source\")}`:\"\"}</option>`}).join(\"\"),pcProbe=poke.stockProbe||{},pcHealth=(poke.sources||[]).find(row=>row.id===\"pokemon-center-uk\")?.health||{},pcPanelV612=`<section class=\"orbit-panel orbit-v612-pc-registry\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">POK\\xC9MON CENTER UK</p><h3>Exact UK products, separate stock checks</h3><p>Search discovers a product. Only a trustworthy observation of its exact UK product page can confirm stock. A failed check means unknown, never sold out.</p></div></div><div class=\"orbit-v607-source-meta\"><span>Search: ${esc(pcHealth.discoveryStatus||\"Not checked\")}</span><span>Last search: ${esc(memberStoreDateV601(pcHealth.lastDiscoveryAt))}</span><span>UK products discovered: ${esc(String(pcHealth.discoveryCount||0))}</span></div>${pcHealth.lastDiscoveryError?`<p>${esc(pcHealth.lastDiscoveryError)}</p>`:\"\"}<form id=\"paPcDiscoveryV612\" class=\"orbit-form-grid\"><label>Search a UK SKU, product or set<input id=\"paPcSearchV612\" maxlength=\"160\" placeholder=\"10-10416-109 or Pitch Black\"></label><div class=\"orbit-form-action\"><button type=\"submit\">Discover UK products</button><button type=\"button\" id=\"paPcRegistryOpenV612\" class=\"secondary\">View UK SKU registry</button></div></form><details><summary>Add a known official UK product</summary><form id=\"paPcSeedV612\" class=\"orbit-form-grid\"><label>Exact UK product URL<input id=\"paPcUrlV612\" type=\"url\" required placeholder=\"https://www.pokemoncenter.com/en-gb/product/\\u2026\"></label><label>Matching SKU<input id=\"paPcSkuV612\" required maxlength=\"64\"></label><label>Product title<input id=\"paPcTitleV612\" maxlength=\"240\"></label><div class=\"orbit-form-action\"><button type=\"submit\">Add for monitoring</button></div></form><p>This creates an unconfirmed registry entry. It cannot send an in-stock alert.</p></details><div id=\"paPcActionResultV612\" role=\"status\"></div><details class=\"orbit-v612-probe\"><summary>Connect an owner-controlled browser probe</summary><p>A normal visible browser can be used instead of the server for Pok\\xE9mon Center observations. It stops on a queue or access challenge and never purchases anything or bypasses protection. Pair only when you have the separate Orbit Stock Probe package ready. While paired, server product checks pause; revoking restores the server path.</p><p><strong>${pcProbe.enabled?\"Paired\":\"Not paired\"}</strong> \\xB7 ${esc(pcProbe.lastStatus||\"No browser observations yet\")} \\xB7 Last seen ${esc(memberStoreDateV601(pcProbe.lastSeenAt))}</p><button type=\"button\" id=\"paPcPairV612\" ${pcProbe.enabled?\"disabled\":\"\"}>Pair and save connection file</button> <button type=\"button\" class=\"secondary\" id=\"paPcRevokeV612\" ${pcProbe.enabled?\"\":\"disabled\"}>Revoke browser connection</button><p id=\"paPcProbeResultV612\" role=\"status\"></p><small>The connection file is shown once. Keep it private; never put it in a Development Note, diagnostic export or AI ZIP.</small></details></section>`,stockScoutPanelV609=renderPokeDeliveryV613(poke)+pcPanelV612+`<div class=\"orbit-panel orbit-v609-stock-sources\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">STOCK SOURCE BROKER</p><h3>Partner feeds, commercial APIs & Orbit Stock Scout</h3><p>Give any retailer a legitimate feed/API in front of the native monitor. Orbit tries the configured source first and safely falls back to the public retailer adapter. Credentials are encrypted server-side and never returned to this browser, diagnostics, AI handover or release ZIP.</p></div><span class=\"orbit-pill\">${esc(String(poke.stats?.configuredPartnerFeeds||0))} partner source${Number(poke.stats?.configuredPartnerFeeds||0)===1?\"\":\"s\"}</span></div><div class=\"orbit-info-banner\"><strong>Discovery and stock can use different sources.</strong><span>Affiliate/catalogue feeds can discover SKUs while a faster certified source monitors known-product availability. A source is not treated as live until Orbit certification proves the end-to-end path.</span></div><form id=\"paSourceProviderFormV609\" class=\"orbit-form-grid\"><label>Retailer<select id=\"paSourceProviderRetailerV609\">${sourceBrokerRows}</select></label><label class=\"orbit-checkbox-line\"><input id=\"paSourceProviderEnabledV609\" type=\"checkbox\"> Enable this partner/commercial source</label><div class=\"orbit-form-span-2\"><strong>Accounts already approved, as reported by Mark</strong><p>Avelon Network, Forbidden Planet, Partnerize, CJ Affiliate and Awin. Impact still needs website verification. Do not reapply merely because a merchant feed has not been confirmed.</p></div><label>Actual feed network<select id=\"paSourceNetworkV613\"><option value=\"\">Not recorded</option><option value=\"avelon\">Avelon Network</option><option value=\"forbidden-planet\">Forbidden Planet</option><option value=\"partnerize\">Partnerize</option><option value=\"cj\">CJ Affiliate</option><option value=\"awin\">Awin</option><option value=\"impact\">Impact (website verification pending)</option><option value=\"direct\">Other licensed direct feed</option></select></label><div><label class=\"orbit-checkbox-line\"><input type=\"checkbox\" id=\"paMerchantAccessV613\"> This specific merchant has approved our access</label><label class=\"orbit-checkbox-line\"><input type=\"checkbox\" id=\"paFeedAccessV613\"> This specific feed/API permits this stock-monitoring use</label><small>Account approval alone is not either permission. Unconfirmed feeds remain discovery-only.</small></div><label>Provider / network label<input id=\"paSourceProviderLabelV609\" placeholder=\"Awin \\xB7 Partnerize \\xB7 Impact \\xB7 commercial API\"></label><label>Feed format<select id=\"paSourceProviderFormatV609\"><option value=\"normalized_json\">Normalized JSON</option><option value=\"google_csv\">Google Shopping CSV</option><option value=\"google_xml\">Google Shopping XML</option></select></label><label class=\"orbit-form-span-2\">HTTPS feed/API endpoint<input id=\"paSourceProviderEndpointV609\" type=\"url\" placeholder=\"https://\\u2026\"></label><label>Feed capability<select id=\"paSourceProviderCapabilityV610\"><option value=\"discovery\">Discovery only (safe default)</option><option value=\"stock\">Discovery + timestamped stock</option></select></label><label>Maximum stock age (seconds)<input id=\"paSourceProviderMaxAgeV610\" type=\"number\" min=\"60\" max=\"86400\" value=\"900\"></label><label class=\"orbit-checkbox-line orbit-form-span-2\"><input id=\"paSourceProviderCompleteV610\" type=\"checkbox\"> Provider guarantees a complete catalogue. JSON must also declare catalogueComplete and a fresh generatedAt timestamp.</label><label>Authentication<select id=\"paSourceProviderAuthModeV609\"><option value=\"none\">None</option><option value=\"bearer\">Bearer token</option><option value=\"header\">Custom header token</option></select></label><label>Custom auth header<input id=\"paSourceProviderAuthHeaderV609\" placeholder=\"X-API-Key\"></label><label class=\"orbit-form-span-2\">Secret token / password<input id=\"paSourceProviderSecretV609\" type=\"password\" autocomplete=\"new-password\" placeholder=\"Leave blank to keep the saved encrypted secret\"></label><label class=\"orbit-form-span-2\">Optional field map JSON<textarea id=\"paSourceProviderFieldMapV609\" rows=\"4\" placeholder='{\"title\":\"name\",\"url\":\"product_url\",\"availability\":\"stock\"}'></textarea></label><div class=\"orbit-form-action\"><button type=\"submit\">Save source securely</button><button type=\"button\" class=\"secondary\" id=\"paSourceProviderTestV609\">Test selected source</button></div></form><div id=\"paSourceProviderResultV609\" class=\"orbit-action-result\"></div><hr><section class=\"orbit-panel\"><h3>View products Orbit sees</h3><p>The selected retailer above controls this view. \\u201CLast confirmed stock\\u201D may be old when a source is degraded; unknown scans do not erase it.</p><button type=\"button\" id=\"paInspectProductsV610\">View products Orbit sees</button><div id=\"paProductEvidenceV610\" aria-live=\"polite\"></div><button type=\"button\" id=\"paProductsMoreV610\" hidden>Load more products</button></section><section class=\"orbit-panel\"><h3>Source Engineer investigation queue</h3><p>One investigation per retailer/root cause. Automatic research is budget-gated and limited to one attempt per six hours across the queue. Deterministic polling runs independently.</p><label class=\"orbit-checkbox-line\"><input id=\"paAutoScoutV610\" type=\"checkbox\" ${pokeSettings.stock_scout_automatic_enabled!==!1?\"checked\":\"\"}> Automatic Stock Scout research</label><button type=\"button\" id=\"paSaveAutoScoutV610\">Save research policy</button><div id=\"paScoutQueueV610\">${(poke.stockScout?.queue||[]).map(row=>`<article class=\"orbit-info-banner\"><strong>${esc(row.source_id||\"Retailer\")} \\xB7 ${esc(row.status||\"pending\")}</strong><span>${esc(row.reason||row.code||\"\")}</span><small>Last attempt: ${esc(row.last_attempt_at||\"Not attempted\")} \\xB7 Candidate only, no production edits.</small></article>`).join(\"\")||\"No source investigations queued yet.\"}</div></section><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">ORBIT STOCK SCOUT</p><h3>Deep retailer source investigation</h3><p>Run the high-intelligence source-engineering agent only when a retailer needs investigation. Stock Scout can web-research legitimate APIs, affiliate feeds, structured public sources and commercial providers, but it cannot solve CAPTCHAs, defeat access controls, change production adapters or deploy code.</p></div></div><div class=\"orbit-form-grid\"><label>Retailer to investigate<select id=\"paStockScoutRetailerV609\">${sourceBrokerRows}</select></label><div class=\"orbit-form-action\"><button type=\"button\" id=\"paStockScoutRunV609\">Research source gap</button></div></div><div id=\"paStockScoutResultV609\" class=\"orbit-action-result\"></div></div>`,guardian=poke.guardian||{},guardianIssues=Array.isArray(guardian.issues)?guardian.issues:[],guardianIssueRows=guardianIssues.length?guardianIssues.map(issue=>`<article class=\"orbit-v605-guardian-issue ${esc(issue.severity||\"medium\")}\"><strong>${esc(issue.title||\"Monitoring issue\")}</strong><span>${esc(issue.reason||\"\")}</span><small>${esc(issue.sourceId||\"\")}</small></article>`).join(\"\"):'<div class=\"orbit-info-banner success\"><strong>Deterministic monitor health looks good</strong><span>The Guardian only calls low-cost AI when a real anomaly needs interpretation. Routine retailer scans never require AI.</span></div>',pokeProducts=poke.products||[],productHealthRows=pokeProducts.length?table([\"Retailer\",\"Product\",\"Category\",\"State\",\"Seen / missing\",\"URL\"],pokeProducts.slice(0,100).map(row=>`<tr><td>${esc(row.sourceId||\"\\u2014\")}</td><td><strong>${esc(row.title||row.productKey||\"\\u2014\")}</strong></td><td>${esc(row.category||\"\\u2014\")}</td><td>${esc(memberStoreStatusV601(row.stockState||\"unknown\"))}</td><td>${esc(row.lastSeenAt?memberStoreDateV601(row.lastSeenAt):\"Never\")} \\xB7 ${esc(String(row.missingScans||0))} miss(es)</td><td>${row.url?`<a href=\"${esc(row.url)}\" target=\"_blank\" rel=\"noopener\">Open</a>`:\"\\u2014\"}</td></tr>`),\"No Pok\\xE9mon TCG products tracked yet.\"):\"<div class='orbit-empty-state'><strong>No tracked products yet</strong><span>Run the retailer monitors to build the quiet baseline.</span></div>\",pokeGuardianPanel=`<div class=\"orbit-panel orbit-v605-guardian-panel\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">POK\\xC9 ALERTS GUARDIAN</p><h3>Monitoring the monitors</h3><p>A deterministic health layer watches every retailer for zero-product scans, source errors, suspicious disappearances and parser drift. Cheap AI is invoked only when there is a meaningful anomaly; it can diagnose and recommend, but it cannot rewrite production code.</p></div><button type=\"button\" id=\"paGuardianRunV605\">Run Guardian now</button></div><div class=\"orbit-v605-guardian-status\"><strong>${esc(memberStoreStatusV601(guardian.status||\"healthy\"))}</strong><span>AI lane: ${esc(guardian.aiLane||\"routine-luna-on-anomaly\")} \\xB7 Production writes: OFF</span></div><div class=\"orbit-v605-guardian-issues\">${guardianIssueRows}</div><div id=\"paGuardianResultV605\" class=\"orbit-action-result\"></div><details><summary><strong>What Orbit currently sees</strong> \\xB7 ${esc(String(pokeProducts.length))} tracked products</summary><p class=\"orbit-muted\">Use this to sanity-check that the monitors are seeing real Pok\\xE9mon TCG products rather than unrelated merchandise.</p>${productHealthRows}</details></div>`;mount.innerHTML=`<div class=\"orbit-member-store-admin-v601\"><section class=\"orbit-member-store-safety-v601\"><div><p class=\"orbit-kicker\">${launch.publicLive?\"MEMBERS CLUB \\xB7 LIVE COMMERCE\":\"MEMBERS CLUB \\xB7 PRIVATE LAUNCH TEST\"}</p><h2>Members Shop \\xB7 Orbit Chase</h2><p>${launch.publicLive?\"Orbit Chase, Members Credit and the Members Shop are live for eligible members. Pok\\xE9 Alerts remains hidden from the Members Area while its separate work continues.\":\"The Active Review Member can exercise the real Shopify Member Credit checkout, Members Shop purchases and Orbit Chase entries while ordinary members remain on the stable Members Area. Pok\\xE9 Alerts stays hidden from members.\"}</p></div><div class=\"orbit-member-store-safety-badges-v601\"><span>${launch.publicLive?\"Eligible members live\":\"Review member only\"}</span><span>${launch.publicLive?\"Live commerce ON\":\"Sandbox commerce ON\"}</span><span>${launch.publicLive?\"Launch persisted\":\"Public launch LOCKED\"}</span></div></section>\n      <section data-member-store-pane-v601=\"overview\"><div class=\"orbit-member-store-kpis-v601\"><article><small>Store products</small><strong>${products.length}</strong></article><article><small>Orbit Chases</small><strong>${draws.length}</strong></article><article><small>Wallets</small><strong>${wallets.length}</strong></article><article><small>Launch state</small><strong>${launch.publicLive?launch.silentLiveProving?\"LIVE \\xB7 SILENT\":\"LIVE\":launch.sandboxCommerceEnabled?\"Sandbox\":\"Paused\"}</strong></article></div><div class=\"orbit-panel\"><h3>Member Credit bundles</h3><div class=\"orbit-member-store-bundles-v601\">${bundles.map(b=>`<article><strong>${esc(memberStoreMoneyV601(b.payPence))}</strong><span>pay</span><b>${esc(memberStoreMoneyV601(b.creditPence))}</b><small>Member Credit</small></article>`).join(\"\")}</div><p class=\"orbit-muted\">Member Credit uses the protected MSTX Holdings Shopify checkout. Orbit credits only an authoritative paid Shopify order. Webhook retries, page refreshes and status reconciliation are idempotent.</p></div><div class=\"orbit-panel orbit-v606-mobile-preview-admin\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">ACTIVE REVIEW MEMBER</p><h3>Open the launch sandbox on your phone</h3><p>Generate a short lived one time sign in link for the protected review member. This remains available for controlled diagnostics during silent-live proving.</p></div></div><div class=\"orbit-form-grid\"><label>Review member<input id=\"msSandboxMemberV606\" list=\"msTestMembersListV601\" value=\"${esc(defaultTestLookup)}\" placeholder=\"Member number, subscription ID or email\"></label><div class=\"orbit-form-action\"><button type=\"button\" id=\"msSandboxGenerateV606\">Generate mobile QR</button></div></div><div id=\"msSandboxMobileResultV606\" class=\"orbit-v606-sandbox-link\" hidden></div></div><div class=\"orbit-panel orbit-v709-launch-readiness\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">PROTECTED LAUNCH CONTROL</p><h3>${launch.publicLive?\"Orbit Chase and Members Shop are live\":\"Launch readiness\"}</h3><p>V715 quietly opens Orbit Chase and the Members Shop to eligible members for final real-account proving. The launch email and Member Area broadcast remain held until you explicitly announce the launch.</p></div><span class=\"orbit-status-pill ${launch.publicLive||launchReadiness.ready?\"success\":launchBlockers.length?\"warning\":\"muted\"}\">${launch.publicLive?launch.silentLiveProving?\"LIVE \\xB7 SILENT\":\"LIVE\":launchReadiness.ready?\"READY\":\"BLOCKED\"}</span></div><div class=\"orbit-member-store-kpis-v601\"><article><small>MSTX Shopify</small><strong>${paymentConnection.ready?\"Ready\":\"Check\"}</strong></article><article><small>Launch Chases</small><strong>${esc(String(launchReadiness.candidateDrawCount??0))} / 4</strong></article><article><small>Shop products</small><strong>${esc(String(launchReadiness.candidateProductCount??0))}</strong></article><article><small>Current entries</small><strong>${esc(String(launchReadiness.currentEntryCount??launchReadiness.sandboxEntryCount??0))}</strong></article></div><p><strong>Store:</strong> ${esc(paymentConnection.shop||paymentConnection.approvedShop||\"zqtnxw-md.myshopify.com\")} \\xB7 <strong>Legal approval:</strong> ${esc(launch.legalApproval||\"pending\")} \\xB7 <strong>Payment approval:</strong> ${esc(launch.paymentApproval||\"pending\")}</p>${launchBlockers.length?`<div class=\"orbit-v709-launch-blockers\"><strong>Still required before announcement</strong><ul>${launchBlockers.map(item=>`<li>${esc(item)}</li>`).join(\"\")}</ul></div>`:`<div class=\"orbit-info-banner success\"><strong>${launch.silentLiveProving?\"Silent-live proving is green\":\"Announcement gates passed\"}</strong><span>${launch.silentLiveProving?\"Eligible members can use Orbit Chase and the Members Shop now. Communications are still held while you complete your real-member tests.\":\"The \\xA32 credit, email and Member Area broadcast are ready for the explicit announcement action.\"}</span></div>`}<div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" id=\"msPrepareLaunchV714\" ${launch.publicLive?\"\":\"disabled\"}>Prepare announcement</button><button type=\"button\" id=\"msLaunchPublicV709\" class=\"${launchReadiness.announcementReady&&launch.publicLive?\"orbit-v709-launch-button\":\"secondary\"}\" ${launchReadiness.announcementReady&&launch.publicLive?\"\":\"disabled\"}>${launch.announcedAt?\"Launch announced\":\"Announce launch\"}</button></div><div id=\"msLaunchPublicResultV709\" class=\"orbit-action-result\"></div></div><div class=\"orbit-panel\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">ORBIT CHASE LAUNCH KIT</p><h3>\\xA32 launch credit, rich email and Member Area broadcast</h3><p>Feature availability and launch communications are deliberately separate. Complete the live member tests first; when you are ready, prepare the \\xA32 credit and drafts, approve the final gates, then announce once.</p></div></div><div class=\"orbit-member-store-kpis-v601\"><article><small>Eligible genuine members</small><strong>${esc(String(launchCredit.eligible||0))}</strong></article><article><small>Already granted</small><strong>${esc(String(launchCredit.granted||0))}</strong></article><article><small>Still to grant</small><strong>${esc(String(launchCreditRemaining))}</strong></article><article><small>Email / broadcast</small><strong>${esc(memberStoreStatusV601(launchCampaign2.status||\"draft\"))} / ${esc(memberStoreStatusV601(launchBroadcast2.status||\"draft\"))}</strong></article></div><p><strong>Free Entry by Post:</strong><br>${esc(settings.free_entry_postal_address||`Orbit Collectors Club\nPO BOX 776\nWeston-Super-Mare\nBS23 9UL`).replaceAll(`\n`,\"<br>\")}</p><div class=\"orbit-action-row\"><button type=\"button\" id=\"msGrantLaunchCreditV708\" class=\"secondary\" disabled>${launchCreditRemaining?\"\\xA32 credit grants with Prepare announcement\":\"\\xA32 launch credit prepared\"}</button>${launchCampaign2.id?`<a class=\"orbit-button-link secondary\" target=\"_blank\" rel=\"noopener\" href=\"${esc(adminDownloadUrlV73(\"/api/admin/newsletters/\"+encodeURIComponent(launchCampaign2.id)+\"/preview\"))}\">Preview full launch email</a><button type=\"button\" class=\"secondary\" id=\"msOpenLaunchCampaignV709\">Open email in Newsletter Studio</button>`:\"\"}<button type=\"button\" class=\"secondary\" id=\"msOpenLaunchBroadcastV709\">Open Member Area broadcast</button></div><div id=\"msLaunchCreditResultV708\" class=\"orbit-action-result\"></div><p class=\"orbit-muted\">Campaign: ${esc(launchCampaign2.title||\"Your first taste of Orbit Chase is on us\")} \\xB7 Broadcast: ${esc(launchBroadcast2.title||\"Orbit Chase is live\")} \\xB7 both remain held as drafts until the explicit announcement action sends/publishes them once.</p></div></section>\n      <section data-member-store-pane-v601=\"topups\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">MEMBER CREDIT \\xB7 SHOPIFY</p><h2>Top ups</h2><p>Support and reconciliation view for every Member Credit Shopify checkout. The settlement state shown here comes from the same checkout, Shopify order and immutable Member Credit ledger used to issue credit.</p></div><button type=\"button\" class=\"secondary\" id=\"msTopUpsRefreshV712\">Refresh</button></div><div class=\"orbit-panel orbit-v712-topups-toolbar\"><div class=\"orbit-form-grid\"><label>Search member or order<input id=\"msTopUpSearchV712\" placeholder=\"Member, order, checkout ID or email\"></label><label>Status<select id=\"msTopUpStatusV712\"><option value=\"\">All statuses</option><option value=\"credited\">Credited</option><option value=\"pending\">Pending</option><option value=\"payment_confirmed_pending_credit\">Payment confirmed, credit pending</option><option value=\"reconciliation_error\">Reconciliation error</option><option value=\"reversed\">Reversed</option></select></label><label>Promo code<input id=\"msTopUpPromoV712\" placeholder=\"e.g. TESTING\"></label><div class=\"orbit-form-action\"><button type=\"button\" id=\"msTopUpsSearchV712\">Search</button></div></div><p id=\"msTopUpsSummaryV712\" class=\"orbit-muted\"></p></div><div id=\"msTopUpsMountV712\" class=\"orbit-panel\">${memberStoreTopUpsTableV712(data.topUps||[])}</div></section>\n      <section data-member-store-pane-v601=\"store-fulfilment\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">MEMBERS SHOP \\xB7 FULFILMENT</p><h2>Store</h2><p>Every paid Members Shop order creates one canonical fulfilment record here, ready for the existing label and dispatch workflow. Monthly member parcels stay separate.</p></div><button type=\"button\" class=\"secondary\" data-module-nav=\"shipping\">Open Shipping Queue</button></div><div class=\"orbit-panel\"><div class=\"orbit-info-banner success\"><strong>Canonical fulfilment</strong><span>These rows are the same special shipment records used by Shipping, labels and tracking. There is no duplicate reporting truth.</span></div>${storeFulfilmentRows}</div></section>\n      <section data-member-store-pane-v601=\"launch\" hidden><div id=\"msLaunchPaneV712\"></div></section>\n      <section data-member-store-pane-v601=\"products\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">NORMAL MEMBERS STORE ITEMS</p><h2>Products</h2><p>Add slabs, accessories and member-exclusive products. The approved test member can purchase them now with Member Credit; ordinary members cannot see this sandbox.</p></div></div><div class=\"orbit-member-store-admin-list-v601\">${productRows}</div><form id=\"memberStoreProductFormV601\" class=\"orbit-panel orbit-member-store-form-v601\"><input type=\"hidden\" id=\"msProductIdV601\"><input type=\"hidden\" id=\"msProductMediaIdV601\"><input type=\"hidden\" id=\"msProductImageUrlV601\"><h3 id=\"msProductFormTitleV601\">Add product</h3><div class=\"orbit-form-grid\"><label>Title<input id=\"msProductTitleV601\" required maxlength=\"180\"></label><label>Status<select id=\"msProductStatusV601\">${memberStoreFormStatusOptionsV601(\"coming_soon\")}</select></label><label>Member Credit price (\\xA3)<input id=\"msProductPriceV601\" type=\"number\" min=\"0.01\" step=\"0.01\" value=\"1.00\" required></label><label>Estimated value (\\xA3)<input id=\"msProductValueV601\" type=\"number\" min=\"0\" step=\"0.01\"></label><label>Stock<input id=\"msProductStockV601\" type=\"number\" min=\"0\" step=\"1\" value=\"1\"></label><label>Product image (WebP/JPG/PNG)<input id=\"msProductImageV601\" type=\"file\" accept=\"image/webp,image/jpeg,image/png\"></label></div><label>Description<textarea id=\"msProductDescriptionV601\" rows=\"5\"></textarea></label><label class=\"orbit-checkbox-line\"><input id=\"msProductPhysicalV601\" type=\"checkbox\" checked> Physical item requiring fulfilment</label><div class=\"orbit-action-row\"><button type=\"submit\">Save product</button><button type=\"button\" class=\"secondary\" id=\"msProductResetV601\">Clear form</button></div><div id=\"msProductResultV601\" class=\"orbit-action-result\"></div></form></section>\n      <section data-member-store-pane-v601=\"orders\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">MEMBERS STORE FULFILMENT</p><h2>Orders</h2><p>Member Credit orders are listed here. Physical items continue through Orbit's canonical Fulfilment queue, so tracking and dispatch state stay in one source of truth.</p></div></div><div class=\"orbit-panel\">${orderRows}</div></section>\n      <section data-member-store-pane-v601=\"draws\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">ORBIT CHASE \\xB7 PRIVATE TEST MEMBER</p><h2>Orbit Chase</h2><p>Create premium member Chases with rich descriptions. Paid entries are uncapped, every Chase closes only at its published fixed time, and the draw time is calculated automatically for the same UK local clock time on the following calendar day.</p></div><button type=\"button\" class=\"secondary\" id=\"msProcessDrawsV601\">Check lifecycle</button></div><div class=\"orbit-member-store-admin-list-v601\">${drawRows}</div><section id=\"msDrawEntriesPanelV601\" class=\"orbit-panel\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">ENTRY LEDGER</p><h3 id=\"msDrawEntriesTitleV601\">Prize draw entries</h3><p>Paid Member Credit and valid free postal entries share this same immutable draw pool.</p></div><button type=\"button\" class=\"secondary\" id=\"msDrawEntriesCloseV601\">Close</button></div><div id=\"msDrawEntriesMountV601\" class=\"orbit-empty-state\"><span>Choose Entries on a draw to inspect its ledger.</span></div><form id=\"msPostalEntryFormV601\" class=\"orbit-form-grid\" ${launch.drawEntriesEnabled||launch.sandboxCommerceEnabled?\"\":\"hidden\"}><input type=\"hidden\" id=\"msPostalDrawIdV601\"><label>Member lookup<input id=\"msPostalMemberV601\" list=\"msTestMembersListV601\" placeholder=\"Member number, subscription ID or email\"></label><label>Postal reference<input id=\"msPostalReferenceV601\" placeholder=\"Envelope / postmark reference\"></label><div class=\"orbit-form-action\"><button type=\"submit\">Record valid postal entry</button></div></form><div id=\"msPostalEntryResultV601\" class=\"orbit-action-result\"></div></section><form id=\"memberStoreDrawFormV601\" class=\"orbit-panel orbit-member-store-form-v601\"><input type=\"hidden\" id=\"msDrawIdV601\"><input type=\"hidden\" id=\"msDrawMediaIdV601\"><input type=\"hidden\" id=\"msDrawImageUrlV601\"><h3 id=\"msDrawFormTitleV601\">Add Orbit Chase</h3><div class=\"orbit-form-grid\"><label>Prize title<input id=\"msDrawTitleV601\" required maxlength=\"180\"></label><label>Status<select id=\"msDrawStatusV601\">${memberStoreFormStatusOptionsV601(\"coming_soon\")}</select></label><label>Estimated prize value (\\xA3)<input id=\"msDrawValueV601\" type=\"number\" min=\"0.01\" step=\"0.01\" required></label><label>Member Credit per entry (\\xA3)<input id=\"msDrawEntryPriceV601\" type=\"number\" min=\"0.01\" step=\"0.01\" value=\"1.00\" required></label><label>Internal performance target<input id=\"msDrawTargetV601\" type=\"number\" min=\"1\" step=\"1\" value=\"180\" required><small>Admin analytics only \\xB7 never shown to members and never closes a Chase early.</small></label><label>Slab image (WebP/JPG/PNG)<input id=\"msDrawImageV601\" type=\"file\" accept=\"image/webp,image/jpeg,image/png\"></label><label>Opens<input id=\"msDrawOpenV601\" type=\"datetime-local\"></label><label>Fixed entry close<input id=\"msDrawCloseV601\" type=\"datetime-local\" required></label><label>Automatic draw time<input id=\"msDrawAtV602\" type=\"datetime-local\" readonly><small>Always the same UK local time on the next calendar day after entries close.</small></label><label>Terms version<input id=\"msDrawTermsV601\" value=\"v1\"></label></div><label class=\"orbit-span-2\">Rich Chase description<div class=\"orbit-v605-rich-toolbar\" role=\"toolbar\" aria-label=\"Orbit Chase description formatting\"><button type=\"button\" data-ms-draw-format=\"bold\"><b>B</b></button><button type=\"button\" data-ms-draw-format=\"italic\"><i>I</i></button><button type=\"button\" data-ms-draw-format=\"formatBlock\" data-format-value=\"h3\">Heading</button><button type=\"button\" data-ms-draw-format=\"insertUnorderedList\">Bullets</button><button type=\"button\" data-ms-draw-format=\"insertOrderedList\">Numbers</button><button type=\"button\" data-ms-draw-format=\"createLink\">Link</button><button type=\"button\" data-ms-draw-format=\"removeFormat\">Clear</button><button type=\"button\" id=\"msDrawHtmlToggleV605\">HTML source</button></div><div id=\"msDrawDescriptionEditorV605\" class=\"orbit-v605-admin-rich-editor\" contenteditable=\"true\" data-placeholder=\"Sell the Chase: prize story, key highlights and why members should want it...\"></div><textarea id=\"msDrawDescriptionV601\" rows=\"8\" hidden></textarea></label><label class=\"orbit-span-2\">Draw-specific free-entry note<textarea id=\"msDrawFreeInstructionsV601\" rows=\"4\" placeholder=\"Optional draw-specific note. The standard free-entry-by-post rules and postal address come from the shared Orbit Chase policy/settings.\"></textarea></label><div class=\"orbit-action-row\"><button type=\"submit\">Save Orbit Chase</button><button type=\"button\" class=\"secondary\" id=\"msDrawResetV601\">Clear form</button></div><div id=\"msDrawResultV601\" class=\"orbit-action-result\"></div></form></section>\n      <section data-member-store-pane-v601=\"poke-alerts\" hidden><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">POK\\xC9 ALERTS \\xB7 LIVE STOCK INTELLIGENCE</p><h2>Pok\\xE9 Alerts</h2><p>Review the retailer monitors and their recorded status. Use the tabs above for evidence, products, source tools and recent events. An enabled monitor is not proof of verified stock or member delivery.</p></div><div class=\"orbit-action-row\"><span class=\"orbit-pill\">Private test-member preview</span><button type=\"button\" id=\"paRunAllV603\">Run all monitors now</button></div></div><div class=\"orbit-member-store-kpis-v601\"><article><small>Configured monitors</small><strong>${(poke.sources||[]).filter(source=>source.liveAdapter).length}</strong></article><article><small>Tracked products</small><strong>${poke.stats?.trackedProducts||0}</strong></article><article><small>Stock events</small><strong>${poke.stats?.stockEvents||0}</strong></article><article><small>Delivered alerts</small><strong>${poke.stats?.delivered||0}</strong></article></div><div id=\"paMonitorResultV603\" class=\"orbit-action-result\"></div><section id=\"paOpsV614\" class=\"orbit-panel pa614-operations\" aria-label=\"Pok\\xE9 Alerts source operations\"></section><div class=\"orbit-panel\"><div class=\"orbit-panel-header\"><div><h3>Retailer monitors</h3><p class=\"orbit-muted\">One central monitor per retailer serves every member. Orbit reads public retailer pages only. It does not bypass CAPTCHAs and never buys products automatically.</p></div></div><div class=\"orbit-pa-admin-sources-v602\">${pokeSourceRows}</div></div>${stockScoutPanelV609}${pokeGuardianPanel}<div class=\"orbit-panel orbit-pa-provider-v603\"><p class=\"orbit-kicker\">SMS PROVIDER</p><h3>Twilio connection</h3><p>Save Twilio securely inside Orbit. The Auth Token is encrypted server-side and is never returned to the browser, logs, diagnostics or AI export.</p><div class=\"orbit-info-banner ${pokeProvider.configured?\"success\":\"warning\"}\"><strong>${pokeProvider.configured?\"Twilio configured\":\"Twilio not configured\"}</strong><span>${pokeProvider.configured?`Saved Account SID ${esc(pokeProvider.accountSid||\"\")} \\xB7 sender ${esc(pokeProvider.senderMode||\"configured\")}`:\"Enter your Twilio details below. Saving credentials alone cannot enable member messaging.\"}</span></div><form id=\"paTwilioFormV603\" class=\"orbit-form-grid\"><label>Account SID<input id=\"paTwilioSidV603\" autocomplete=\"off\" placeholder=\"${pokeProvider.authTokenConfigured?\"Leave blank to keep saved SID\":\"AC...\"}\"></label><label>Auth Token<input id=\"paTwilioTokenV603\" type=\"password\" autocomplete=\"new-password\" placeholder=\"${pokeProvider.authTokenConfigured?\"Saved securely \\xB7 enter only to replace\":\"Enter Auth Token\"}\"></label><label>Sender type<select id=\"paTwilioSenderModeV603\"><option value=\"number\"${pokeProvider.senderMode!==\"messaging_service\"?\" selected\":\"\"}>Twilio phone number</option><option value=\"messaging_service\"${pokeProvider.senderMode===\"messaging_service\"?\" selected\":\"\"}>Messaging Service SID</option></select></label><label>Twilio number<input id=\"paTwilioFromV603\" placeholder=\"+44\\u2026 \\xB7 leave blank to keep saved\"></label><label>Messaging Service SID<input id=\"paTwilioMessagingV603\" placeholder=\"MG\\u2026 \\xB7 leave blank to keep saved\"></label><div class=\"orbit-form-action\"><button type=\"submit\">Save Twilio securely</button><button type=\"button\" class=\"secondary\" id=\"paTwilioTestConnectionV603\">Test connection</button></div></form><div id=\"paTwilioResultV603\" class=\"orbit-action-result\"></div><hr><h3>Send an Admin test SMS</h3><p>This sends one real SMS through Twilio but never charges a member wallet.</p><div class=\"orbit-form-grid\"><label>Test mobile number<input id=\"paTwilioTestPhoneV603\" placeholder=\"07123 456789\"></label><label>Test message<input id=\"paTwilioTestBodyV603\" value=\"Orbit Pok\\xE9 Alerts test: Twilio is connected.\"></label><div class=\"orbit-form-action\"><button type=\"button\" id=\"paTwilioSendTestV603\" ${pokeProvider.configured?\"\":\"disabled\"}>Send test SMS</button></div></div></div><div class=\"orbit-panel\"><p class=\"orbit-kicker\">MEMBER DELIVERY</p><h3>Email, SMS & Member Credit</h3><p><strong>Email alerts are free.</strong> Optional SMS alerts use Member Credit and are charged only after Twilio confirms delivery. Failed or undelivered SMS messages are not charged.</p><form id=\"pokeAlertSettingsFormV602\" class=\"orbit-form-grid\"><label>SMS member price (pence)<input id=\"paAdminSmsPriceV602\" type=\"number\" min=\"1\" max=\"100\" value=\"${esc(String(pokeSettings.sms_price_pence||8))}\"></label><label>Event cooldown (minutes)<input id=\"paAdminCooldownV602\" type=\"number\" min=\"1\" max=\"1440\" value=\"${esc(String(pokeSettings.event_cooldown_minutes||10))}\"></label><label>Daily SMS cap (pence)<input id=\"paAdminDailyCapV602\" type=\"number\" min=\"0\" value=\"${esc(String(pokeSettings.sms_daily_cap_pence||100))}\"></label><label>Weekly SMS cap (pence)<input id=\"paAdminWeeklyCapV602\" type=\"number\" min=\"0\" value=\"${esc(String(pokeSettings.sms_weekly_cap_pence||500))}\"></label><label class=\"orbit-checkbox-line\"><input id=\"paEmailDeliveryV603\" type=\"checkbox\" ${pokeSettings.email_delivery_enabled?\"checked\":\"\"}> Allow free email delivery</label><label class=\"orbit-checkbox-line\"><input id=\"paSmsDeliveryV603\" type=\"checkbox\" ${pokeSettings.sms_delivery_enabled?\"checked\":\"\"}> Allow optional SMS delivery</label><label class=\"orbit-checkbox-line\"><input id=\"paTestDeliveryV603\" type=\"checkbox\" ${pokeSettings.test_member_delivery_enabled?\"checked\":\"\"}> Enable real delivery to private test member only</label><label>Test-member activation phrase<input id=\"paTestConfirmV603\" placeholder=\"ENABLE TEST POKE ALERTS\"></label><div class=\"orbit-form-action\"><button type=\"submit\">Save delivery settings</button></div></form><div id=\"paAdminSettingsResultV602\" class=\"orbit-action-result\"></div><div class=\"orbit-info-banner warning\"><strong>Ordinary members remain protected.</strong><span>The private test-member switch cannot expose Pok\\xE9 Alerts to normal members. Full member delivery still requires the separate server launch approval gate.</span></div></div><details class=\"orbit-panel\"><summary><strong>Diagnostics \\xB7 synthetic transition test</strong></summary><p>Use this only to test state transition/deduplication logic without waiting for a retailer change.</p><form id=\"pokeAlertObservationFormV602\" class=\"orbit-form-grid\"><label>Source<select id=\"paObsSourceV602\">${(poke.sources||[]).map(source=>`<option value=\"${esc(source.id)}\">${esc(source.name||source.id)}</option>`).join(\"\")}</select></label><label>Product key<input id=\"paObsProductKeyV602\" value=\"preview-product\"></label><label>Product title<input id=\"paObsTitleV602\" value=\"Preview Pok\\xE9mon TCG product\"></label><label>Stock state<select id=\"paObsStateV602\"><option value=\"out_of_stock\">Out of stock</option><option value=\"in_stock\">In stock</option><option value=\"preorder\">Preorder</option><option value=\"queue_live\">Queue live</option></select></label><label>Product URL<input id=\"paObsUrlV602\" placeholder=\"https://retailer.example/product\"></label><label>Store postcode<input id=\"paObsPostcodeV602\" placeholder=\"optional\"></label><label>Set<input id=\"paObsSetV602\" placeholder=\"optional set\"></label><label>Category<input id=\"paObsCategoryV602\" value=\"Pok\\xE9mon TCG\"></label><div class=\"orbit-form-action\"><button type=\"submit\">Record test observation</button></div></form><div id=\"paObsResultV602\" class=\"orbit-action-result\"></div></details><div class=\"orbit-panel\"><h3>Recent stock events</h3><div id=\"paEventTableV602\">${pokeEventRows}</div><div id=\"paFanoutResultV602\" class=\"orbit-action-result\"></div></div></section>\n      <section data-member-store-pane-v601=\"settings\" hidden><div class=\"orbit-panel\"><p class=\"orbit-kicker\">LAUNCH &amp; COMPLIANCE</p><h2>${launch.publicLive?\"Live Members commerce\":\"Private launch sandbox\"}</h2><p>V715 makes Orbit Chase and the Members Shop silently live for eligible members after protected certification. Use this page to review compliance gates while the launch email, Member Area broadcast and \\xA32 launch gift remain held until explicit announcement preparation.</p><div class=\"orbit-info-banner ${launch.publicLive?\"success\":\"warning\"}\"><strong>${launch.publicLive?\"Orbit Chase and Members Shop are live\":\"Ordinary members still see the stable Members Area\"}</strong><span>${launch.publicLive?\"The live state is persisted and audited.\":\"Before V715 silent-live activation completes, only the protected review member can use the commerce paths.\"}</span></div><form id=\"msStoreSettingsFormV601\" class=\"orbit-member-store-form-v601\"><div class=\"orbit-form-grid\"><label>Current visibility<input value=\"${esc(launch.publicLive?\"All eligible members, live\":\"Active Review Member only\")}\" disabled></label><label>24 hour verification window<input id=\"msStoreVerificationHoursV601\" type=\"number\" min=\"24\" max=\"168\" step=\"1\" value=\"${esc(String(settings.verification_hours||24))}\"></label><label>Payment provider<input id=\"msStorePaymentProviderV601\" value=\"shopify\" readonly></label><label>Legal approval<select id=\"msStoreLegalApprovalV601\"><option value=\"pending\"${settings.legal_approval_status!==\"approved\"&&settings.legal_approval_status!==\"rejected\"?\" selected\":\"\"}>Pending</option><option value=\"approved\"${settings.legal_approval_status===\"approved\"?\" selected\":\"\"}>Approved</option><option value=\"rejected\"${settings.legal_approval_status===\"rejected\"?\" selected\":\"\"}>Rejected</option></select></label><label>Payment approval<select id=\"msStorePaymentApprovalV601\"><option value=\"pending\"${settings.payment_approval_status!==\"approved\"&&settings.payment_approval_status!==\"rejected\"?\" selected\":\"\"}>Pending</option><option value=\"approved\"${settings.payment_approval_status===\"approved\"?\" selected\":\"\"}>Approved</option><option value=\"rejected\"${settings.payment_approval_status===\"rejected\"?\" selected\":\"\"}>Rejected</option></select></label></div><label>Protected free postal entry address<textarea id=\"msStorePostalAddressV601\" rows=\"4\" readonly>${esc(settings.free_entry_postal_address||\"\")}</textarea></label><label>Responsible play URL<input id=\"msStoreResponsiblePlayV601\" value=\"${esc(settings.responsible_play_url||\"\")}\" readonly><small>Managed by Orbit OS and published at the canonical Responsible Play page.</small></label><div class=\"orbit-action-row\"><button type=\"submit\">Save compliance settings</button></div><div id=\"msStoreSettingsResultV601\" class=\"orbit-action-result\"></div></form><div class=\"orbit-info-banner warning\"><strong>Silent live and announcement are separate.</strong><span>Complete the genuine-member smoke tests first. Then use Prepare announcement to grant the \\xA32 launch credit and refresh the held drafts. Publish/send only with the explicit Announce launch action after the legal and payment gates are approved.</span></div></div></section>\n      <section data-member-store-pane-v601=\"wallets\" hidden><div class=\"orbit-panel\"><p class=\"orbit-kicker\">TEST MEMBER TOOLS</p><h2>Member Credit wallets</h2><p>Issue test-only Member Credit to the existing Orbit test member. This never takes a real payment.</p><form id=\"msTestCreditFormV601\" class=\"orbit-form-grid\"><label>Test member lookup<input id=\"msTestMemberLookupV601\" list=\"msTestMembersListV601\" value=\"${esc(defaultTestLookup)}\" placeholder=\"Member number, subscription ID or email\" required><datalist id=\"msTestMembersListV601\">${testMembers.map(m=>`<option value=\"${esc(m.memberNumber||m.subscriptionId||m.email||\"\")}\">${esc((m.name||\"Orbit test member\")+(m.email?` \\xB7 ${m.email}`:\"\"))}</option>`).join(\"\")}</datalist></label><label>Test credit (\\xA3)<input id=\"msTestCreditAmountV601\" type=\"number\" min=\"1\" step=\"1\" value=\"500\"></label><label>Note<input id=\"msTestCreditNoteV601\" value=\"Members Store preview test credit\"></label><div class=\"orbit-form-action\"><button type=\"submit\">Add test credit</button></div></form><div id=\"msWalletResultV601\" class=\"orbit-action-result\"></div></div><div class=\"orbit-panel\"><h3>Recent wallets</h3>${walletRows}</div></section>\n    </div>`;const launchHost=$2(\"msLaunchPaneV712\"),launchPanel=mount.querySelector(\".orbit-v709-launch-readiness\");launchHost&&launchPanel&&launchHost.appendChild(launchPanel),bindMemberStoreTopUpsV712(),organisePokeAdminV618(),bindMemberStoreAdminV601(),memberStorePaneV601(state.currentMemberStorePaneV601||\"overview\")}function resetMemberStoreProductFormV601(){[\"msProductIdV601\",\"msProductMediaIdV601\",\"msProductImageUrlV601\",\"msProductTitleV601\",\"msProductValueV601\",\"msProductDescriptionV601\"].forEach(id=>{const n=$2(id);n&&(n.value=\"\")}),$2(\"msProductPriceV601\")&&($2(\"msProductPriceV601\").value=\"1.00\"),$2(\"msProductStockV601\")&&($2(\"msProductStockV601\").value=\"1\"),$2(\"msProductStatusV601\")&&($2(\"msProductStatusV601\").value=\"coming_soon\"),$2(\"msProductPhysicalV601\")&&($2(\"msProductPhysicalV601\").checked=!0),$2(\"msProductImageV601\")&&($2(\"msProductImageV601\").value=\"\"),$2(\"msProductFormTitleV601\")&&($2(\"msProductFormTitleV601\").textContent=\"Add product\")}function resetMemberStoreDrawFormV601(){[\"msDrawIdV601\",\"msDrawMediaIdV601\",\"msDrawImageUrlV601\",\"msDrawTitleV601\",\"msDrawValueV601\",\"msDrawDescriptionV601\",\"msDrawOpenV601\",\"msDrawCloseV601\",\"msDrawAtV602\",\"msDrawFreeInstructionsV601\"].forEach(id=>{const n=$2(id);n&&(n.value=\"\")}),$2(\"msDrawEntryPriceV601\")&&($2(\"msDrawEntryPriceV601\").value=\"1.00\"),$2(\"msDrawTargetV601\")&&($2(\"msDrawTargetV601\").value=\"180\"),$2(\"msDrawTermsV601\")&&($2(\"msDrawTermsV601\").value=\"v1\"),$2(\"msDrawStatusV601\")&&($2(\"msDrawStatusV601\").value=\"coming_soon\"),$2(\"msDrawImageV601\")&&($2(\"msDrawImageV601\").value=\"\"),$2(\"msDrawFormTitleV601\")&&($2(\"msDrawFormTitleV601\").textContent=\"Add Orbit Chase\"),$2(\"msDrawDescriptionEditorV605\")&&($2(\"msDrawDescriptionEditorV605\").innerHTML=\"\")}function localDatetimeV601(value){if(!value)return\"\";const d=new Date(value);return Number.isNaN(d.getTime())?\"\":new Date(d.getTime()-d.getTimezoneOffset()*6e4).toISOString().slice(0,16)}function renderPokeDeliveryV613(poke={}){const d=poke.deliveryDiagnostics||{},cfg=d.configuration||{},workers=d.workers||[],blocks=d.blockers||[],members=(poke.testMembers||[]).filter(m=>m.benefitsActive),products=(poke.products||[]).filter(p=>p.url&&p.productKey&&!p.productKey.endsWith(\":queue-live\"));return`<section class=\"orbit-panel orbit-v613-delivery\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">DELIVERY EVIDENCE</p><h3>Find the blocker. Prove one real notification.</h3><p>Stock observations, provider acceptance and confirmed delivery are different steps. Ordinary members remain locked out.</p></div><button type=\"button\" class=\"secondary\" id=\"paDeliveryExportV613\">Export delivery diagnostics</button></div><div class=\"orbit-v607-source-meta\"><span>Monitoring: ${cfg.monitoringEnabled?\"enabled\":\"paused\"}</span><span>Test delivery: ${cfg.testMemberDeliveryEnabled?\"approved\":\"off\"}</span><span>Email: ${cfg.emailDeliveryEnabled?\"enabled\":\"off\"} / provider ${cfg.emailProviderConfigured?\"configured\":\"not configured\"}</span><span>SMS: ${cfg.smsDeliveryEnabled?\"enabled\":\"off\"}</span><span>SMS charge: 8p after confirmed delivery only</span></div><p><strong>Recent delivery outcomes</strong> <small>Bounded history, not lifetime totals.</small></p><div class=\"orbit-v613-delivery-outcomes\">${blocks.length?blocks.map(b=>`<p><strong>${esc(b.code)} (${esc(b.count)})</strong> ${esc(b.detail)}</p>`).join(\"\"):\"<p>No dispatch outcomes recorded yet. This is not proof of working delivery.</p>\"}</div><details><summary>Independent worker heartbeats (${workers.length})</summary>${workers.length?workers.map(w=>`<p><strong>${esc(w.lane)}</strong>: ${esc(w.state)}${w.stale?\" \\xB7 stale / needs investigation\":\"\"}<small>Last start: ${esc(memberStoreDateV601(w.lastStartedAt))}. Last finish: ${esc(memberStoreDateV601(w.lastFinishedAt))}. ${esc(w.lastErrorCode||\"\")}</small></p>`).join(\"\"):\"<p>No V613 heartbeat yet. Check again after the deployed server starts its workers.</p>\"}</details><form id=\"paFreshTestFormV613\" class=\"orbit-form-grid\"><h4 class=\"orbit-form-span-2\">Controlled fresh-stock test</h4><p class=\"orbit-form-span-2\">This performs a fresh exact-product check, then sends to the existing approved test member only when their saved preferences and all delivery gates allow it. It does not invent a restock or certify natural monitoring. SMS can cost 8p if delivered. No settings are enabled automatically.</p><label>Approved test membership<select id=\"paFreshMemberV613\" required><option value=\"\">Choose the test member</option>${members.map(m=>`<option value=\"${esc(m.subscriptionId)}\">${esc(m.memberNumber||m.subscriptionId)}</option>`).join(\"\")}</select></label><label>Delivery channel<select id=\"paFreshChannelV613\"><option value=\"email\">Email (provider acceptance only)</option><option value=\"sms\">SMS (8p only if delivered)</option></select></label><label class=\"orbit-form-span-2\">Exact registered product<select id=\"paFreshProductV613\" required><option value=\"\">Choose a product, or load another retailer's product list below</option>${products.map(p=>`<option value=\"${esc(p.productKey)}\">${esc(p.title)} \\xB7 ${esc(p.sku||p.sourceId)}</option>`).join(\"\")}</select><small>This selector uses loaded registry records. Inspect another retailer's products below to add its next page here. The server rechecks exact identity and current availability.</small></label><label class=\"orbit-form-span-2\">Authorise one real test<input id=\"paFreshConfirmV613\" autocomplete=\"off\" placeholder=\"Type SEND FRESH STOCK TEST\" required></label><div class=\"orbit-form-span-2\"><button type=\"submit\">Check fresh stock &amp; send test</button> <button type=\"button\" class=\"secondary\" id=\"paFreshResetV613\">Start another test</button></div><pre id=\"paFreshResultV613\" class=\"orbit-form-span-2\" aria-live=\"polite\"></pre></form></section>`}function bindPokeDeliveryV613(){let attemptKey=null,context=null;$2(\"paDeliveryExportV613\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget;setLoading(button2,!0);try{const result=await api(\"/api/admin/poke-alerts/delivery-diagnostics\",{cacheMs:0,timeoutMs:2e4}),blob=new Blob([JSON.stringify(result,null,2)],{type:\"application/json\"}),url=URL.createObjectURL(blob),a=document.createElement(\"a\");a.href=url,a.download=\"Orbit_Poke_Delivery_Diagnostics_\"+new Date().toISOString().slice(0,10)+\".json\",a.click(),setTimeout(()=>URL.revokeObjectURL(url),1e3)}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}),$2(\"paFreshResetV613\")?.addEventListener(\"click\",()=>{attemptKey=null,context=null,$2(\"paFreshConfirmV613\").value=\"\",$2(\"paFreshResultV613\").textContent=\"New test prepared. Review the destination, channel and product, then explicitly authorise it.\"}),$2(\"paFreshTestFormV613\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter,node=$2(\"paFreshResultV613\"),payload={subscriptionId:$2(\"paFreshMemberV613\").value,productKey:$2(\"paFreshProductV613\").value,channel:$2(\"paFreshChannelV613\").value,confirmation:$2(\"paFreshConfirmV613\").value},selection=JSON.stringify([payload.subscriptionId,payload.productKey,payload.channel]);if(context&&context!==selection){node.textContent=\"Use Start another test before changing a submitted test. This prevents an accidental second notification.\";return}attemptKey||(attemptKey=crypto.randomUUID(),context=selection),payload.idempotencyKey=attemptKey,setLoading(button2,!0),node.textContent=\"Checking exact identity, freshness, preferences and delivery gates\\u2026\";try{const result=await api(\"/api/admin/poke-alerts/controlled-test\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:65e3});node.textContent=JSON.stringify(result,null,2)}catch(error){node.textContent=String(error.message||error)+`\nThis request key is retained. Retrying the same test cannot create a duplicate send. Do not start a new test merely because the response timed out.`}finally{setLoading(button2,!1)}})}function bindMemberStoreAdminV601(){bindPokeDeliveryV613(),document.querySelectorAll(\"[data-member-store-view]\").forEach(button2=>{button2.dataset.boundMsV601||(button2.dataset.boundMsV601=\"1\",button2.addEventListener(\"click\",()=>{state.currentMemberStorePaneV601=button2.dataset.memberStoreView||\"overview\",window.setTimeout(()=>memberStorePaneV601(state.currentMemberStorePaneV601),0)}))}),$2(\"msTopUpsRefreshV712\")?.addEventListener(\"click\",event=>loadMemberStoreTopUpsV712({button:event.currentTarget}).catch(error=>setNotice2(error.message||String(error),!0))),$2(\"msTopUpsSearchV712\")?.addEventListener(\"click\",event=>loadMemberStoreTopUpsV712({button:event.currentTarget}).catch(error=>setNotice2(error.message||String(error),!0))),$2(\"msProductResetV601\")?.addEventListener(\"click\",resetMemberStoreProductFormV601),$2(\"msDrawResetV601\")?.addEventListener(\"click\",resetMemberStoreDrawFormV601),document.querySelectorAll(\"[data-ms-draw-format]\").forEach(button2=>button2.addEventListener(\"click\",()=>{const editor=$2(\"msDrawDescriptionEditorV605\");if(!editor||editor.hidden)return;editor.focus();const command=button2.dataset.msDrawFormat;if(command===\"createLink\"){const url=prompt(\"Link URL\");url&&document.execCommand(\"createLink\",!1,url)}else command===\"formatBlock\"?document.execCommand(command,!1,button2.dataset.formatValue||\"p\"):document.execCommand(command,!1,null)})),$2(\"msDrawHtmlToggleV605\")?.addEventListener(\"click\",()=>{const editor=$2(\"msDrawDescriptionEditorV605\"),source=$2(\"msDrawDescriptionV601\"),button2=$2(\"msDrawHtmlToggleV605\");!editor||!source||(source.hidden?(source.value=editor.innerHTML,source.hidden=!1,editor.hidden=!0,button2&&(button2.textContent=\"Visual editor\")):(editor.innerHTML=source.value,source.hidden=!0,editor.hidden=!1,button2&&(button2.textContent=\"HTML source\")))}),$2(\"msDrawCloseV601\")?.addEventListener(\"change\",()=>{const close=$2(\"msDrawCloseV601\")?.value,target=$2(\"msDrawAtV602\");if(!close||!target)return;const d=new Date(close);if(Number.isNaN(d.getTime()))return;d.setDate(d.getDate()+1);const local=new Date(d.getTime()-d.getTimezoneOffset()*6e4);target.value=local.toISOString().slice(0,16)}),$2(\"memberStoreProductFormV601\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter||event.currentTarget.querySelector(\"button[type=submit]\");setLoading(button2,!0);try{let media={mediaId:$2(\"msProductMediaIdV601\")?.value||\"\",imageUrl:$2(\"msProductImageUrlV601\")?.value||\"\"};const file=$2(\"msProductImageV601\")?.files?.[0];file&&(media=await memberStoreUploadImageV601(file,$2(\"msProductTitleV601\")?.value||file.name,\"product\"));const payload={id:$2(\"msProductIdV601\")?.value||void 0,title:$2(\"msProductTitleV601\")?.value,description:$2(\"msProductDescriptionV601\")?.value,status:$2(\"msProductStatusV601\")?.value,creditPricePence:Math.round(Number($2(\"msProductPriceV601\")?.value||0)*100),estimatedValuePence:Math.round(Number($2(\"msProductValueV601\")?.value||0)*100),stock:Number($2(\"msProductStockV601\")?.value||0),physical:$2(\"msProductPhysicalV601\")?.checked!==!1,mediaId:media.mediaId,imageUrl:media.imageUrl};await api(\"/api/admin/member-store/products\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:3e4}),setNotice2(\"Members Store product saved.\"),resetMemberStoreProductFormV601(),await loadMemberStoreAdminV601(!0)}catch(error){$2(\"msProductResultV601\")&&($2(\"msProductResultV601\").textContent=error.message||String(error)),setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}),$2(\"memberStoreDrawFormV601\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter||event.currentTarget.querySelector(\"button[type=submit]\");setLoading(button2,!0);try{let media={mediaId:$2(\"msDrawMediaIdV601\")?.value||\"\",imageUrl:$2(\"msDrawImageUrlV601\")?.value||\"\"};const file=$2(\"msDrawImageV601\")?.files?.[0];file&&(media=await memberStoreUploadImageV601(file,$2(\"msDrawTitleV601\")?.value||file.name,\"prize-draw\")),$2(\"msDrawDescriptionV601\")&&!$2(\"msDrawDescriptionV601\").hidden&&$2(\"msDrawDescriptionEditorV605\")&&($2(\"msDrawDescriptionEditorV605\").innerHTML=$2(\"msDrawDescriptionV601\").value);const payload={id:$2(\"msDrawIdV601\")?.value||void 0,title:$2(\"msDrawTitleV601\")?.value,description:$2(\"msDrawDescriptionEditorV605\")?.innerText||$2(\"msDrawDescriptionV601\")?.value,descriptionHtml:$2(\"msDrawDescriptionEditorV605\")?.innerHTML||$2(\"msDrawDescriptionV601\")?.value,status:$2(\"msDrawStatusV601\")?.value,estimatedValuePence:Math.round(Number($2(\"msDrawValueV601\")?.value||0)*100),entryCreditPence:Math.round(Number($2(\"msDrawEntryPriceV601\")?.value||0)*100),paidEntryTarget:Number($2(\"msDrawTargetV601\")?.value||0),openAt:$2(\"msDrawOpenV601\")?.value?new Date($2(\"msDrawOpenV601\").value).toISOString():null,closeAt:$2(\"msDrawCloseV601\")?.value?new Date($2(\"msDrawCloseV601\").value).toISOString():null,termsVersion:$2(\"msDrawTermsV601\")?.value||\"v1\",freeEntryInstructions:$2(\"msDrawFreeInstructionsV601\")?.value,mediaId:media.mediaId,imageUrl:media.imageUrl};await api(\"/api/admin/member-store/draws\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:3e4}),setNotice2(\"Orbit Chase saved in private preview.\"),resetMemberStoreDrawFormV601(),await loadMemberStoreAdminV601(!0)}catch(error){$2(\"msDrawResultV601\")&&($2(\"msDrawResultV601\").textContent=error.message||String(error)),setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}),document.querySelectorAll(\"[data-ms-product-edit-v601]\").forEach(button2=>button2.addEventListener(\"click\",()=>{const row=(memberStoreAdminDataV601?.products||[]).find(x=>x.id===button2.dataset.msProductEditV601);row&&(memberStorePaneV601(\"products\"),$2(\"msProductIdV601\").value=row.id,$2(\"msProductMediaIdV601\").value=row.mediaId||\"\",$2(\"msProductImageUrlV601\").value=row.imageUrl||\"\",$2(\"msProductTitleV601\").value=row.title||\"\",$2(\"msProductDescriptionV601\").value=row.description||\"\",$2(\"msProductStatusV601\").value=row.status||\"draft\",$2(\"msProductPriceV601\").value=(Number(row.creditPricePence||0)/100).toFixed(2),$2(\"msProductValueV601\").value=(Number(row.estimatedValuePence||0)/100).toFixed(2),$2(\"msProductStockV601\").value=row.stock||0,$2(\"msProductPhysicalV601\").checked=row.physical!==!1,$2(\"msProductFormTitleV601\").textContent=\"Edit product\",$2(\"memberStoreProductFormV601\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"}))})),document.querySelectorAll(\"[data-ms-draw-edit-v601]\").forEach(button2=>button2.addEventListener(\"click\",()=>{const row=(memberStoreAdminDataV601?.draws||[]).find(x=>x.id===button2.dataset.msDrawEditV601);row&&(memberStorePaneV601(\"draws\"),$2(\"msDrawIdV601\").value=row.id,$2(\"msDrawMediaIdV601\").value=row.mediaId||\"\",$2(\"msDrawImageUrlV601\").value=row.imageUrl||\"\",$2(\"msDrawTitleV601\").value=row.title||\"\",$2(\"msDrawDescriptionV601\").value=row.description||\"\",$2(\"msDrawDescriptionEditorV605\")&&($2(\"msDrawDescriptionEditorV605\").innerHTML=row.descriptionHtml||row.description||\"\"),$2(\"msDrawStatusV601\").value=row.status||\"draft\",$2(\"msDrawValueV601\").value=(Number(row.estimatedValuePence||0)/100).toFixed(2),$2(\"msDrawEntryPriceV601\").value=(Number(row.entryCreditPence||100)/100).toFixed(2),$2(\"msDrawTargetV601\").value=row.paidEntryTarget||180,$2(\"msDrawOpenV601\").value=localDatetimeV601(row.openAt),$2(\"msDrawCloseV601\").value=localDatetimeV601(row.closeAt),$2(\"msDrawAtV602\").value=localDatetimeV601(row.drawAt),$2(\"msDrawTermsV601\").value=row.termsVersion||\"v1\",$2(\"msDrawFreeInstructionsV601\").value=row.freeEntryInstructions||\"\",$2(\"msDrawFormTitleV601\").textContent=\"Edit Orbit Chase\",$2(\"memberStoreDrawFormV601\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"}))})),$2(\"msDrawEntriesCloseV601\")?.addEventListener(\"click\",()=>{$2(\"msDrawEntriesPanelV601\")&&($2(\"msDrawEntriesPanelV601\").hidden=!0)}),document.querySelectorAll(\"[data-ms-draw-entries-v601]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const id=button2.dataset.msDrawEntriesV601,panel=$2(\"msDrawEntriesPanelV601\"),mount=$2(\"msDrawEntriesMountV601\");panel&&(panel.hidden=!1),mount&&(mount.innerHTML=\"<strong>Loading entry ledger\\u2026</strong>\"),$2(\"msPostalDrawIdV601\")&&($2(\"msPostalDrawIdV601\").value=id),setLoading(button2,!0);try{const data=await api(`/api/admin/member-store/draws/${encodeURIComponent(id)}/entries`,{cacheMs:0,timeoutMs:15e3}),row=data.draw||{},entries=data.entries||[];$2(\"msDrawEntriesTitleV601\")&&($2(\"msDrawEntriesTitleV601\").textContent=(row.title||\"Prize draw\")+\" \\xB7 Entry ledger\"),mount&&(mount.innerHTML=entries.length?table([\"Entry\",\"Route\",\"Member\",\"Email\",\"Reference\",\"Created\"],entries.map(entry=>`<tr><td><strong>#${esc(String(entry.entryNumber||\"\\u2014\"))}</strong></td><td>${esc(String(entry.source||\"\").replaceAll(\"_\",\" \"))}</td><td>${esc(entry.memberNumber||entry.subscriptionId||\"\\u2014\")}</td><td>${esc(entry.email||\"\\u2014\")}</td><td>${esc(entry.adminReference||\"\\u2014\")}</td><td>${esc(memberStoreDateV601(entry.createdAt))}</td></tr>`),\"No entries yet.\"):\"<div class='orbit-empty-state'><strong>No entries yet</strong><span>The draw is still empty.</span></div>\"),panel?.scrollIntoView({behavior:\"smooth\",block:\"start\"})}catch(error){mount&&(mount.innerHTML=\"<div class='orbit-info-banner error'><strong>Entry ledger unavailable</strong><span>\"+esc(error.message||String(error))+\"</span></div>\")}finally{setLoading(button2,!1)}})),$2(\"msPostalEntryFormV601\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter,setResult=$2(\"msPostalEntryResultV601\");setLoading(button2,!0);try{const drawId=$2(\"msPostalDrawIdV601\")?.value,data=await api(`/api/admin/member-store/draws/${encodeURIComponent(drawId)}/postal-entry`,{method:\"POST\",body:JSON.stringify({lookup:$2(\"msPostalMemberV601\")?.value,adminReference:$2(\"msPostalReferenceV601\")?.value}),cacheMs:0});setResult&&(setResult.textContent=\"Postal entry recorded as #\"+String(data.entryNumber||\"\\u2014\")+\".\"),$2(\"msPostalReferenceV601\").value=\"\",document.querySelector(`[data-ms-draw-entries-v601=\"${CSS.escape(drawId)}\"]`)?.click()}catch(error){setResult&&(setResult.textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),document.querySelectorAll(\"[data-ms-status-v601]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const[kind,id,status]=String(button2.dataset.msStatusV601||\"\").split(\":\");if(!(!kind||!id||!status||!confirm(kind===\"draw\"?\"Open this Orbit Chase for real entries?\":\"Activate this product for real Member Credit purchases?\"))){setLoading(button2,!0);try{await api(`/api/admin/member-store/${encodeURIComponent(kind)}/${encodeURIComponent(id)}/status`,{method:\"POST\",body:JSON.stringify({status}),cacheMs:0}),await loadMemberStoreAdminV601(!0)}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}})),document.querySelectorAll(\"[data-ms-archive-v601]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const[kind,id]=String(button2.dataset.msArchiveV601||\"\").split(\":\");if(!(!kind||!id||!confirm(\"Archive this \"+(kind===\"draw\"?\"prize draw\":\"Members Store product\")+\"?\"))){setLoading(button2,!0);try{await api(`/api/admin/member-store/${encodeURIComponent(kind)}/${encodeURIComponent(id)}/archive`,{method:\"POST\",body:\"{}\",cacheMs:0}),await loadMemberStoreAdminV601(!0)}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}})),$2(\"msStoreSettingsFormV601\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter;setLoading(button2,!0);try{const payload={verificationHours:Number($2(\"msStoreVerificationHoursV601\")?.value||24),paymentProvider:\"shopify\",legalApprovalStatus:$2(\"msStoreLegalApprovalV601\")?.value,paymentApprovalStatus:$2(\"msStorePaymentApprovalV601\")?.value,freeEntryPostalAddress:$2(\"msStorePostalAddressV601\")?.value,responsiblePlayUrl:$2(\"msStoreResponsiblePlayV601\")?.value},data=await api(\"/api/admin/member-store/settings\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:15e3});$2(\"msStoreSettingsResultV601\")&&($2(\"msStoreSettingsResultV601\").textContent=data.launch?.publicLive?\"Live compliance settings saved.\":\"Launch compliance settings saved. The public switch remains off.\"),await loadMemberStoreAdminV601(!0)}catch(error){$2(\"msStoreSettingsResultV601\")&&($2(\"msStoreSettingsResultV601\").textContent=error.message||String(error)),setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}),$2(\"msTestCreditFormV601\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter;setLoading(button2,!0);try{const data=await api(\"/api/admin/member-store/test-credit\",{method:\"POST\",body:JSON.stringify({lookup:$2(\"msTestMemberLookupV601\")?.value,amountPence:Math.round(Number($2(\"msTestCreditAmountV601\")?.value||0)*100),note:$2(\"msTestCreditNoteV601\")?.value}),cacheMs:0});$2(\"msWalletResultV601\")&&($2(\"msWalletResultV601\").textContent=\"Test credit added. Balance: \"+memberStoreMoneyV601(data.wallet?.balancePence||0)),await loadMemberStoreAdminV601(!0)}catch(error){$2(\"msWalletResultV601\")&&($2(\"msWalletResultV601\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),$2(\"msPrepareLaunchV714\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget,node=$2(\"msLaunchPublicResultV709\"),confirmation=window.prompt(`Orbit Chase and the Members Shop are already live silently. This step grants the one-time \\xA32 Member Credit to eligible genuine members and refreshes the personalised launch email and Member Area broadcast drafts. It does not send or publish either communication.\n\nType PREPARE ORBIT CHASE ANNOUNCEMENT to continue.`);if(confirmation!==\"PREPARE ORBIT CHASE ANNOUNCEMENT\"){node&&(node.textContent=\"Announcement preparation was not started.\");return}setLoading(button2,!0);try{const result=await api(\"/api/admin/member-store/launch/prepare\",{method:\"POST\",body:JSON.stringify({confirmation}),cacheMs:0,timeoutMs:18e4});node&&(node.textContent=`Announcement prepared \\xB7 \\xA32 Member Credit ${Number(result.launchCredit?.pending||0)===0?\"complete\":\"still pending\"} \\xB7 email and broadcast remain held.`),setNotice2(result.readiness?.announcementReady?\"Announcement package prepared. Final approval gates are green.\":\"Announcement package prepared. Review the remaining approval gates.\"),await loadMemberStoreAdminV601(!0)}catch(error){node&&(node.textContent=error.message||String(error)),setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}),$2(\"msGrantLaunchCreditV708\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget,node=$2(\"msLaunchCreditResultV708\"),confirmation=window.prompt(`This will add \\xA32 real promotional Member Credit to every eligible genuine active member and email them after the ledger posts. It is idempotent, but should only be run after launch testing is approved.\n\nType GRANT \\xA32 ORBIT CHASE LAUNCH CREDIT to continue.`);if(confirmation!==\"GRANT \\xA32 ORBIT CHASE LAUNCH CREDIT\"){node&&(node.textContent=\"Launch credit was not granted.\");return}setLoading(button2,!0);try{const result=await api(\"/api/admin/member-store/launch-credit/grant\",{method:\"POST\",body:JSON.stringify({confirmation}),cacheMs:0,timeoutMs:12e4});node&&(node.textContent=`Launch credit complete \\xB7 ${Number(result.status?.granted||0)} eligible accounts now carry the audited \\xA32 grant.`),await loadMemberStoreAdminV601(!0)}catch(error){node&&(node.textContent=error.message||String(error)),setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}),$2(\"msLaunchPublicV709\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget,node=$2(\"msLaunchPublicResultV709\"),confirmation=window.prompt(`Orbit Chase and the Members Shop are already live. This final communication action publishes the prepared Member Area broadcast and sends the personalised launch email campaign once.\n\nType ANNOUNCE ORBIT CHASE AND MEMBERS SHOP to continue.`);if(confirmation!==\"ANNOUNCE ORBIT CHASE AND MEMBERS SHOP\"){node&&(node.textContent=\"Launch announcement was not started.\");return}if(window.confirm(\"Final check: announce Orbit Chase and the Members Shop to all eligible members now?\")){setLoading(button2,!0);try{const comms=(await api(\"/api/admin/member-store/launch\",{method:\"POST\",body:JSON.stringify({confirmation}),cacheMs:0,timeoutMs:6e4})).communications||{};node&&(node.textContent=\"Announcement complete. Orbit Chase and the Members Shop remain live.\"),setNotice2(`Launch announced. Broadcast ${comms.broadcast?\"published\":\"check required\"}; launch email ${comms.email?\"sent\":\"check required\"}.`),await loadMemberStoreAdminV601(!0)}catch(error){node&&(node.textContent=error.message||String(error)),setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}}),$2(\"msOpenLaunchCampaignV709\")?.addEventListener(\"click\",async()=>{activateModule(\"engagement\",\"newsletters\",{historyMode:\"push\"}),setEngagementPaneV73(\"newsletters\"),await loadEngagementV73(),launchCampaign.id&&openNewsletterV731(launchCampaign.id)}),$2(\"msOpenLaunchBroadcastV709\")?.addEventListener(\"click\",async()=>{activateModule(\"engagement\",\"broadcasts\",{historyMode:\"push\"}),setEngagementPaneV73(\"broadcasts\"),await loadEngagementV73(),document.querySelector('[data-open-broadcast-v731=\"'+CSS.escape(launchBroadcast.id||\"\")+'\"]')?.click()}),document.querySelectorAll(\"[data-ms-draw-reset-sandbox-v606]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const drawId=button2.dataset.msDrawResetSandboxV606;if(!drawId)return;const draw=(memberStoreAdminDataV601?.draws||[]).find(row=>String(row.id)===String(drawId)),confirmation=window.prompt(`Reset all sandbox test entries for ${draw?.title||\"this Orbit Chase\"}?\n\nThis refunds test Member Credit, clears the sandbox entry ledger and returns the Chase to a clean pre-entry state. Type RESET CHASE TEST DATA to continue.`);if(confirmation!==\"RESET CHASE TEST DATA\")return;const reason=window.prompt(\"Optional audit reason:\",\"Pre-launch sandbox test reset\")||\"Pre-launch sandbox test reset\";setLoading(button2,!0);try{const result=await api(`/api/admin/member-store/draws/${encodeURIComponent(drawId)}/reset-sandbox`,{method:\"POST\",body:JSON.stringify({confirmation,reason}),cacheMs:0,timeoutMs:3e4});setNotice2(`Sandbox Chase reset complete \\xB7 ${result.entriesRemoved||0} test entr${Number(result.entriesRemoved||0)===1?\"y\":\"ies\"} cleared.`),await loadMemberStoreAdminV601(!0),memberStorePaneV601(\"draws\")}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}})),$2(\"msSandboxGenerateV606\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget,resultNode=$2(\"msSandboxMobileResultV606\");setLoading(button2,!0);try{const result=await api(\"/api/admin/member-sandbox/mobile-link\",{method:\"POST\",body:JSON.stringify({returnUrl:\"https://orbitcollectorsclub.com/pages/members-area#home\"}),cacheMs:0,timeoutMs:2e4});resultNode&&(resultNode.hidden=!1,resultNode.innerHTML=`<div class=\"orbit-v606-sandbox-qr\"><img src=\"${esc(result.qrDataUrl||\"\")}\" alt=\"QR code to open the Orbit test-member sandbox on mobile\"><div><strong>Scan this with your phone</strong><span>One-time link \\xB7 expires ${esc(memberStoreDateV601(result.expiresAt))}</span><a href=\"${esc(result.loginUrl||\"#\")}\" target=\"_blank\" rel=\"noopener\">Open sandbox \\u2192</a><button type=\"button\" class=\"secondary\" data-v606-copy-sandbox>Copy secure link</button><small>${esc(result.member?.memberNumber||result.member?.email||\"Approved test member\")}</small></div></div>`,resultNode.querySelector(\"[data-v606-copy-sandbox]\")?.addEventListener(\"click\",async function(){try{await navigator.clipboard.writeText(result.loginUrl||\"\"),this.textContent=\"Copied \\u2713\"}catch{window.prompt(\"Copy secure sandbox link:\",result.loginUrl||\"\")}})),setNotice2(\"Mobile sandbox QR created. The one-time link expires automatically.\")}catch(error){resultNode&&(resultNode.hidden=!1,resultNode.textContent=error.message||String(error)),setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}});const sourceProviderConfigV609=sourceId=>(memberStoreAdminDataV601?.pokeAlerts?.sources||[]).find(row=>row.id===sourceId)?.sourceBroker?.configuredProvider||{sourceId,enabled:!1,providerLabel:\"\",format:\"normalized_json\",endpointUrl:\"\",authMode:\"none\",authHeader:\"\",secretConfigured:!1,fieldMap:{}},populateSourceProviderV609=()=>{const sourceId=$2(\"paSourceProviderRetailerV609\")?.value||\"\",cfg=sourceProviderConfigV609(sourceId);$2(\"paSourceNetworkV613\")&&($2(\"paSourceNetworkV613\").value=cfg.networkId||\"\"),$2(\"paMerchantAccessV613\")&&($2(\"paMerchantAccessV613\").checked=cfg.merchantAccessConfirmed===!0),$2(\"paFeedAccessV613\")&&($2(\"paFeedAccessV613\").checked=cfg.feedAccessConfirmed===!0),$2(\"paSourceProviderEnabledV609\")&&($2(\"paSourceProviderEnabledV609\").checked=cfg.enabled===!0),$2(\"paSourceProviderLabelV609\")&&($2(\"paSourceProviderLabelV609\").value=cfg.providerLabel||\"\"),$2(\"paSourceProviderFormatV609\")&&($2(\"paSourceProviderFormatV609\").value=cfg.format||\"normalized_json\"),$2(\"paSourceProviderEndpointV609\")&&($2(\"paSourceProviderEndpointV609\").value=\"\",$2(\"paSourceProviderEndpointV609\").placeholder=cfg.endpointConfigured?\"Saved securely \\xB7 leave blank to keep\":\"https://\\u2026\"),$2(\"paSourceProviderCapabilityV610\")&&($2(\"paSourceProviderCapabilityV610\").value=cfg.capabilityMode||\"discovery\"),$2(\"paSourceProviderMaxAgeV610\")&&($2(\"paSourceProviderMaxAgeV610\").value=cfg.maxAgeSeconds||900),$2(\"paSourceProviderCompleteV610\")&&($2(\"paSourceProviderCompleteV610\").checked=cfg.completeCatalogue===!0),$2(\"paSourceProviderAuthModeV609\")&&($2(\"paSourceProviderAuthModeV609\").value=cfg.authMode||\"none\"),$2(\"paSourceProviderAuthHeaderV609\")&&($2(\"paSourceProviderAuthHeaderV609\").value=cfg.authHeader||\"\"),$2(\"paSourceProviderSecretV609\")&&($2(\"paSourceProviderSecretV609\").value=\"\",$2(\"paSourceProviderSecretV609\").placeholder=cfg.secretConfigured?\"Saved securely \\xB7 leave blank to keep\":\"Enter token/password if required\"),$2(\"paSourceProviderFieldMapV609\")&&($2(\"paSourceProviderFieldMapV609\").value=Object.keys(cfg.fieldMap||{}).length?JSON.stringify(cfg.fieldMap,null,2):\"\");const node=$2(\"paSourceProviderResultV609\");node&&(node.textContent=cfg.enabled?`${cfg.providerLabel||\"Partner source\"} configured${cfg.lastTestOk?\" \\xB7 last test passed\":\"\"}. Secret ${cfg.secretConfigured?\"saved securely\":\"not required/not saved\"}.`:\"No partner/commercial source enabled for this retailer yet.\")};$2(\"paSourceProviderRetailerV609\")?.addEventListener(\"change\",populateSourceProviderV609),populateSourceProviderV609();let productEvidenceOffsetV610=null,productEvidenceSourceV610=\"\";const inspectProductsV610=async(append=!1)=>{const sourceId=$2(\"paProductsRetailerV618\")?.value||\"\",node=$2(\"paProductEvidenceV610\"),more=$2(\"paProductsMoreV610\");if(!node||!sourceId)return;(!append||sourceId!==productEvidenceSourceV610)&&(productEvidenceOffsetV610=0,productEvidenceSourceV610=sourceId,node.textContent=\"Reading stored product evidence\\u2026\");const offset=productEvidenceOffsetV610||0;more.hidden=!0;try{const result=await api(\"/api/admin/poke-alerts/products?sourceId=\"+encodeURIComponent(sourceId)+\"&offset=\"+offset+\"&limit=50\");if(sourceId!==$2(\"paProductsRetailerV618\")?.value)return;const select=$2(\"paFreshProductV613\");if(select){const keys=new Set(Array.from(select.options).map(o=>o.value));for(const p of result.products||[])if(p.productKey&&p.url&&!p.productKey.endsWith(\":queue-live\")&&!keys.has(p.productKey)){const option=document.createElement(\"option\");option.value=p.productKey,option.textContent=(p.title||\"Product\")+\" \\xB7 \"+(p.sku||sourceId),select.appendChild(option),keys.add(p.productKey)}}const source=(memberStoreAdminDataV601?.pokeAlerts?.sources||[]).find(row=>row.id===sourceId),failedSource=source?.health?.status&&source.health.status!==\"healthy\",rows=(result.products||[]).map(row=>`<tr><td><strong>${esc(row.title||\"Product\")}</strong><small>SKU: ${esc(row.sku||\"Not verified\")}</small><small>${esc(row.canonicalProductId||row.productKey||\"\")}</small>${row.gtin?`<small>EAN / GTIN: ${esc(row.gtin)}</small>`:\"\"}<small>${esc(row.region||\"UK\")} \\xB7 ${esc(row.category||\"Unclassified\")}${row.setName?` \\xB7 ${esc(row.setName)}`:\"\"}</small></td><td><strong>${esc(failedSource?\"UNKNOWN / degraded source\":row.currentAvailability||row.observedState||\"unknown\")}</strong><small>Last confirmed: ${esc(row.stockState||\"unknown\")}</small><small>${esc(row.rawState||\"No underlying stock state\")}</small><small>${esc(row.fulfilmentChannel||\"online\")}${row.storeName?` \\xB7 ${esc(row.storeName)}`:\"\"}${row.sellerType?` \\xB7 ${esc(row.sellerType)}`:\"\"}</small></td><td>${esc(memberStoreDateV601(row.lastSuccessfulObservationAt||row.stockLastConfirmedAt))}<small>Change: ${esc(memberStoreDateV601(row.lastStateTransitionAt))}</small><small>Checked: ${esc(memberStoreDateV601(row.lastProbeAt))}</small><small>${esc(row.freshness||\"Never confirmed\")} \\xB7 ${esc(row.executionEnvironment||\"Not checked\")}</small>${row.lastProbeErrorCode?`<small>${esc(row.lastProbeErrorCode)}</small>`:\"\"}</td><td>${esc(row.parseConfidence||\"Unverified\")}<small>${esc(row.stockEvidence||\"No stock evidence\")}</small><small>Alert eligible: ${!failedSource&&row.alertEligible?\"Yes, subject to member preferences\":\"No\"}</small><details><summary>Discovery &amp; proof</summary><p>${esc(row.discoverySource||\"Not recorded\")}</p><small>First seen: ${esc(memberStoreDateV601(row.firstSeenAt))}</small><small>${esc(row.evidenceFingerprint||\"\")}</small></details></td><td>${row.pricePence?esc(memberStoreMoneyV601(row.pricePence)):\"Price unverified\"}${row.url?`<small><a href=\"${esc(row.url)}\" target=\"_blank\" rel=\"noopener noreferrer\">Exact UK product \\u2197</a></small><small class=\"orbit-v612-product-url\">${esc(row.url)}</small>`:\"No URL\"}</td></tr>`).join(\"\");(!append||offset===0)&&(node.innerHTML=`<p>${esc(String(result.total||0))} stored products. Source health is not stock. This view does not certify delivery.</p>`+table([\"Product identity\",\"Current / last confirmed\",\"Freshness & checks\",\"Confidence & eligibility\",\"Price & exact product\"],[rows||'<tr><td colspan=\"5\">No products stored for this retailer.</td></tr>'],\"No products stored for this retailer.\"));const body=node.querySelector(\"tbody\");body&&(offset===0?body.innerHTML=rows||'<tr><td colspan=\"5\">No products stored.</td></tr>':body.insertAdjacentHTML(\"beforeend\",rows)),productEvidenceOffsetV610=result.nextOffset,more.hidden=result.nextOffset==null}catch(error){node.textContent=\"Product evidence could not be loaded: \"+String(error.message||error)}};$2(\"paPcRegistryOpenV612\")?.addEventListener(\"click\",()=>{$2(\"paProductsRetailerV618\").value=\"pokemon-center-uk\",activateModule(\"member-store\",\"poke-products\",{historyMode:\"push\"}),inspectProductsV610(!1),$2(\"paProductEvidenceV610\").scrollIntoView({block:\"start\"})}),$2(\"paPcDiscoveryV612\")?.addEventListener(\"submit\",async event=>{event.preventDefault(),setLoading(event.submitter,!0);const node=$2(\"paPcActionResultV612\");node.textContent=\"Checking Pok\\xE9mon Center's own search. This is discovery, not a stock alert\\u2026\";try{const result=await api(\"/api/admin/poke-alerts/discovery/run\",{method:\"POST\",body:JSON.stringify({query:$2(\"paPcSearchV612\").value}),cacheMs:0,timeoutMs:5e4});node.textContent=result.skipped?\"Discovery was not run: \"+(result.reason||\"another run is active\"):\"Discovery: \"+(result.status||\"finished\")+\". \"+(result.error||result.message||\"Open the SKU registry to inspect saved products.\")}catch(error){node.textContent=\"Search unavailable. Stock remains unconfirmed. \"+String(error.message||error)}finally{setLoading(event.submitter,!1)}}),$2(\"paPcSeedV612\")?.addEventListener(\"submit\",async event=>{event.preventDefault(),setLoading(event.submitter,!0);try{await api(\"/api/admin/poke-alerts/sku-registry\",{method:\"POST\",body:JSON.stringify({url:$2(\"paPcUrlV612\").value,sku:$2(\"paPcSkuV612\").value,title:$2(\"paPcTitleV612\").value}),cacheMs:0}),$2(\"paPcActionResultV612\").textContent=\"UK product added. Stock is UNKNOWN until the exact product can be read.\"}catch(error){$2(\"paPcActionResultV612\").textContent=String(error.message||error)}finally{setLoading(event.submitter,!1)}}),$2(\"paPcPairV612\")?.addEventListener(\"click\",async event=>{if(window.confirm(\"Pair your read-only Pok\\xE9mon Center browser probe? Server checks pause until this connection is revoked. Keep the downloaded connection file private.\")){setLoading(event.currentTarget,!0);try{const result=await api(\"/api/admin/poke-alerts/probe/pair\",{method:\"POST\",body:JSON.stringify({confirmation:\"ENABLE READ-ONLY POKEMON CENTER PROBE\"}),cacheMs:0}),blob=new Blob([JSON.stringify({...result.connection,apiBase:new URL(API_BASE).origin},null,2)],{type:\"application/json\"}),href=URL.createObjectURL(blob),link=document.createElement(\"a\");link.href=href,link.download=\"orbit-probe-connection.json\",link.click(),setTimeout(()=>URL.revokeObjectURL(href),1e3),delete result.connection,$2(\"paPcProbeResultV612\").textContent=\"Paired. Save orbit-probe-connection.json beside the separate probe program, then start it. No observations have been proven by pairing alone.\",$2(\"paPcPairV612\").disabled=!0,$2(\"paPcRevokeV612\").disabled=!1}catch(error){$2(\"paPcProbeResultV612\").textContent=String(error.message||error),setLoading(event.currentTarget,!1)}}}),$2(\"paPcRevokeV612\")?.addEventListener(\"click\",async event=>{if(window.confirm(\"Revoke this Pok\\xE9mon Center browser connection and restore server checks?\")){setLoading(event.currentTarget,!0);try{await api(\"/api/admin/poke-alerts/probe/revoke\",{method:\"POST\",body:JSON.stringify({confirmation:\"REVOKE POKEMON CENTER PROBE\"}),cacheMs:0}),$2(\"paPcProbeResultV612\").textContent=\"Connection revoked. The old connection file no longer works.\",$2(\"paPcPairV612\").disabled=!1}catch(error){$2(\"paPcProbeResultV612\").textContent=String(error.message||error)}finally{setLoading(button,!1)}}}),$2(\"paInspectProductsV610\")?.addEventListener(\"click\",()=>inspectProductsV610(!1)),$2(\"paProductsMoreV610\")?.addEventListener(\"click\",()=>inspectProductsV610(!0)),$2(\"paProductsRetailerV618\")?.addEventListener(\"change\",()=>{productEvidenceSourceV610=\"\",productEvidenceOffsetV610=null,$2(\"paProductEvidenceV610\").textContent=\"Select View products Orbit sees to read this retailer.\",$2(\"paProductsMoreV610\").hidden=!0}),$2(\"paSaveAutoScoutV610\")?.addEventListener(\"click\",async()=>{try{await api(\"/api/admin/poke-alerts/settings\",{method:\"POST\",body:JSON.stringify({stockScoutAutomaticEnabled:$2(\"paAutoScoutV610\")?.checked===!0})}),$2(\"paScoutQueueV610\").insertAdjacentHTML(\"afterbegin\",\"<p>Automatic research policy saved. Stock polling is unchanged.</p>\")}catch(error){$2(\"paScoutQueueV610\").textContent=String(error.message||error)}}),$2(\"paSourceProviderFormV609\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter;setLoading(button2,!0);try{let fieldMap={};const raw=($2(\"paSourceProviderFieldMapV609\")?.value||\"\").trim();if(raw)try{fieldMap=JSON.parse(raw)}catch{throw new Error(\"Field map must be valid JSON.\")}const sourceId=$2(\"paSourceProviderRetailerV609\")?.value,result=await api(`/api/admin/poke-alerts/source-providers/${encodeURIComponent(sourceId)}`,{method:\"POST\",body:JSON.stringify({enabled:$2(\"paSourceProviderEnabledV609\")?.checked===!0,providerLabel:$2(\"paSourceProviderLabelV609\")?.value||\"\",format:$2(\"paSourceProviderFormatV609\")?.value||\"normalized_json\",endpointUrl:$2(\"paSourceProviderEndpointV609\")?.value||\"\",networkId:$2(\"paSourceNetworkV613\")?.value||\"\",merchantAccessConfirmed:$2(\"paMerchantAccessV613\")?.checked===!0,feedAccessConfirmed:$2(\"paFeedAccessV613\")?.checked===!0,capabilityMode:$2(\"paSourceProviderCapabilityV610\")?.value||\"discovery\",maxAgeSeconds:Number($2(\"paSourceProviderMaxAgeV610\")?.value||900),completeCatalogue:$2(\"paSourceProviderCompleteV610\")?.checked===!0,authMode:$2(\"paSourceProviderAuthModeV609\")?.value||\"none\",authHeader:$2(\"paSourceProviderAuthHeaderV609\")?.value||\"\",authSecret:$2(\"paSourceProviderSecretV609\")?.value||\"\",fieldMap}),cacheMs:0,timeoutMs:2e4});$2(\"paSourceProviderResultV609\")&&($2(\"paSourceProviderResultV609\").textContent=`Saved ${result.configuration?.providerLabel||\"source\"} securely. ${result.configuration?.secretConfigured?\"Secret is encrypted and masked.\":\"No secret stored.\"}`),await loadMemberStoreAdminV601(!0),memberStorePaneV601(\"poke-sources\")}catch(error){$2(\"paSourceProviderResultV609\")&&($2(\"paSourceProviderResultV609\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),$2(\"paSourceProviderTestV609\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget;setLoading(button2,!0);try{const sourceId=$2(\"paSourceProviderRetailerV609\")?.value,result=await api(`/api/admin/poke-alerts/source-providers/${encodeURIComponent(sourceId)}/test`,{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:3e4});$2(\"paSourceProviderResultV609\")&&($2(\"paSourceProviderResultV609\").textContent=`Read-only source check returned \\xB7 ${result.products||0} Pok\\xE9mon TCG products \\xB7 ${result.stockKnownProducts||0} with readable stock \\xB7 ${result.queueLive?\"queue live detected \\xB7 \":\"\"}${result.acquisitionMode||\"source broker\"}.`),await loadMemberStoreAdminV601(!0),memberStorePaneV601(\"poke-sources\")}catch(error){$2(\"paSourceProviderResultV609\")&&($2(\"paSourceProviderResultV609\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),$2(\"paStockScoutRunV609\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget,node=$2(\"paStockScoutResultV609\"),sourceId=$2(\"paStockScoutRetailerV609\")?.value;setLoading(button2,!0),node&&(node.textContent=\"Stock Scout is researching legitimate discovery, stock and queue sources. This can take up to 90 seconds\\u2026\");try{const result=await api(\"/api/admin/poke-alerts/stock-scout/run\",{method:\"POST\",body:JSON.stringify({sourceIds:[sourceId],depth:\"routine\"}),cacheMs:0,timeoutMs:1e5}),row=(result.results||[])[0];node&&(node.innerHTML=row?`<strong>${esc(row.diagnosis||\"Research complete\")}</strong><br>${esc(row.recommendedNextTest||\"\")}<br><small>${esc(result.overall||result.summary||\"\")}</small>`:esc(result.error||result.summary||\"Stock Scout finished without a retailer result.\"))}catch(error){node&&(node.textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),$2(\"paGuardianRunV605\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget;setLoading(button2,!0);try{const result=await api(\"/api/admin/poke-alerts/guardian/run\",{method:\"POST\",body:JSON.stringify({useAi:!0}),cacheMs:0,timeoutMs:45e3}),node=$2(\"paGuardianResultV605\");node&&(node.textContent=result.aiUsed?`Guardian used ${result.ai?.model||\"the routine AI lane\"}: ${result.ai?.analysis||result.summary}`:result.aiDeferred?`${result.summary} AI deferred: ${result.aiReason}`:result.summary),await loadMemberStoreAdminV601(!0),memberStorePaneV601(\"poke-guardian\")}catch(error){$2(\"paGuardianResultV605\")&&($2(\"paGuardianResultV605\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),$2(\"pokeAlertSettingsFormV602\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter;setLoading(button2,!0);try{const testEnabled=$2(\"paTestDeliveryV603\")?.checked===!0,result=await api(\"/api/admin/poke-alerts/settings\",{method:\"POST\",body:JSON.stringify({smsPricePence:Number($2(\"paAdminSmsPriceV602\")?.value||8),eventCooldownMinutes:Number($2(\"paAdminCooldownV602\")?.value||10),smsDailyCapPence:Number($2(\"paAdminDailyCapV602\")?.value||100),smsWeeklyCapPence:Number($2(\"paAdminWeeklyCapV602\")?.value||500),emailDeliveryEnabled:$2(\"paEmailDeliveryV603\")?.checked===!0,smsDeliveryEnabled:$2(\"paSmsDeliveryV603\")?.checked===!0,testMemberDeliveryEnabled:testEnabled,testConfirmation:testEnabled&&$2(\"paTestConfirmV603\")?.value||\"\"}),cacheMs:0});$2(\"paAdminSettingsResultV602\")&&($2(\"paAdminSettingsResultV602\").textContent=`Saved. Private test-member delivery is ${result.launch?.testMemberDeliveryEnabled?\"enabled\":\"paused\"}. SMS costs ${memberStoreMoneyV601(result.settings?.sms_price_pence||8)} only after confirmed delivery.`),await loadMemberStoreAdminV601(!0),memberStorePaneV601(\"sms\")}catch(error){$2(\"paAdminSettingsResultV602\")&&($2(\"paAdminSettingsResultV602\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),$2(\"paTwilioFormV603\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter;setLoading(button2,!0);try{const result=await api(\"/api/admin/poke-alerts/provider/twilio\",{method:\"POST\",body:JSON.stringify({accountSid:$2(\"paTwilioSidV603\")?.value||\"\",authToken:$2(\"paTwilioTokenV603\")?.value||\"\",senderMode:$2(\"paTwilioSenderModeV603\")?.value||\"number\",fromNumber:$2(\"paTwilioFromV603\")?.value||\"\",messagingServiceSid:$2(\"paTwilioMessagingV603\")?.value||\"\"}),cacheMs:0,timeoutMs:2e4});$2(\"paTwilioResultV603\")&&($2(\"paTwilioResultV603\").textContent=result.configuration?.configured?\"Twilio credentials saved securely. Use Test connection before enabling private test-member SMS.\":\"Twilio details saved but the provider is not complete.\"),await loadMemberStoreAdminV601(!0),memberStorePaneV601(\"sms\")}catch(error){$2(\"paTwilioResultV603\")&&($2(\"paTwilioResultV603\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),$2(\"paTwilioTestConnectionV603\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget;setLoading(button2,!0);try{const result=await api(\"/api/admin/poke-alerts/provider/twilio/test\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:2e4});$2(\"paTwilioResultV603\")&&($2(\"paTwilioResultV603\").textContent=result.connected?`Twilio connected successfully \\xB7 account ${result.accountStatus||\"active\"}.`:\"Twilio did not confirm the account.\")}catch(error){$2(\"paTwilioResultV603\")&&($2(\"paTwilioResultV603\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),$2(\"paTwilioSendTestV603\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget;setLoading(button2,!0);try{const result=await api(\"/api/admin/poke-alerts/provider/twilio/test-sms\",{method:\"POST\",body:JSON.stringify({to:$2(\"paTwilioTestPhoneV603\")?.value||\"\",body:$2(\"paTwilioTestBodyV603\")?.value||\"\"}),cacheMs:0,timeoutMs:2e4});$2(\"paTwilioResultV603\")&&($2(\"paTwilioResultV603\").textContent=`Test SMS submitted to Twilio \\xB7 ${result.status||\"queued\"}. No Member Credit was charged.`)}catch(error){$2(\"paTwilioResultV603\")&&($2(\"paTwilioResultV603\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}});const runPokeMonitorV603=async(sourceIds,button2)=>{setLoading(button2,!0);try{const result=await api(\"/api/admin/poke-alerts/monitor/run\",{method:\"POST\",body:JSON.stringify({sourceIds:sourceIds||[]}),cacheMs:0,timeoutMs:12e4}),healthy=(result.sources||[]).filter(row=>row.status===\"healthy\").length,degraded=(result.sources||[]).filter(row=>row.status===\"degraded\").length,checking=(result.sources||[]).filter(row=>row.status===\"checking\"||row.status===\"backoff\").length,attention=(result.sources||[]).filter(row=>row.status===\"attention\").length,products=(result.sources||[]).reduce((sum,row)=>sum+Number(row.products||0),0);$2(\"paMonitorResultV603\")&&($2(\"paMonitorResultV603\").textContent=`Monitor run finished \\xB7 ${healthy} healthy \\xB7 ${degraded} degraded \\xB7 ${checking} retrying/checking \\xB7 ${attention} attention \\xB7 ${products} products observed.`),await loadMemberStoreAdminV601(!0),memberStorePaneV601(\"poke-alerts\")}catch(error){$2(\"paMonitorResultV603\")&&($2(\"paMonitorResultV603\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}};$2(\"paRunAllV603\")?.addEventListener(\"click\",event=>runPokeMonitorV603([],event.currentTarget)),document.querySelectorAll(\"[data-pa-run-source-v603]\").forEach(button2=>button2.addEventListener(\"click\",()=>runPokeMonitorV603([button2.dataset.paRunSourceV603],button2))),$2(\"pokeAlertObservationFormV602\")?.addEventListener(\"submit\",async event=>{event.preventDefault();const button2=event.submitter;setLoading(button2,!0);try{const result=await api(\"/api/admin/poke-alerts/observation\",{method:\"POST\",body:JSON.stringify({sourceId:$2(\"paObsSourceV602\")?.value,retailerId:$2(\"paObsSourceV602\")?.value,productKey:$2(\"paObsProductKeyV602\")?.value,title:$2(\"paObsTitleV602\")?.value,stockState:$2(\"paObsStateV602\")?.value,url:$2(\"paObsUrlV602\")?.value,postcode:$2(\"paObsPostcodeV602\")?.value,setName:$2(\"paObsSetV602\")?.value,category:$2(\"paObsCategoryV602\")?.value}),cacheMs:0});$2(\"paObsResultV602\")&&($2(\"paObsResultV602\").textContent=result.event?`Created ${memberStoreStatusV601(result.event.type)} stock event.`:result.deduped?\"Transition deduped by cooldown.\":\"Observation stored; no alert-worthy transition.\"),await loadMemberStoreAdminV601(!0),memberStorePaneV601(\"poke-diagnostics\")}catch(error){$2(\"paObsResultV602\")&&($2(\"paObsResultV602\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}}),document.querySelectorAll(\"[data-pa-fanout-v602]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{setLoading(button2,!0);try{const result=await api(`/api/admin/poke-alerts/events/${encodeURIComponent(button2.dataset.paFanoutV602)}/fanout-preview`,{cacheMs:0});$2(\"paFanoutResultV602\")&&($2(\"paFanoutResultV602\").textContent=`Preview match: ${result.matchedMembers||0} member(s), ${result.emailCandidates||0} email candidate(s), ${result.smsCandidates||0} SMS candidate(s). No messages sent.`)}catch(error){$2(\"paFanoutResultV602\")&&($2(\"paFanoutResultV602\").textContent=error.message||String(error))}finally{setLoading(button2,!1)}})),$2(\"msProcessDrawsV601\")?.addEventListener(\"click\",async event=>{const button2=event.currentTarget;setLoading(button2,!0);try{const data=await api(\"/api/admin/member-store/process\",{method:\"POST\",body:\"{}\",cacheMs:0});setNotice2(data.paused?\"Orbit Chase lifecycle is paused by the production gate.\":\"Orbit Chase lifecycle checked for the test-member sandbox.\")}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}})}let memberStoreReadV618=0;async function loadMemberStoreAdminV601(force=!1){const read=++memberStoreReadV618,mount=$2(\"memberStoreAdminMountV601\");mount&&force&&(mount.innerHTML=\"<div class='orbit-empty-state' role='status'><strong>Loading Members tools\\u2026</strong><span>Reading saved settings and evidence.</span></div>\");try{const data=await api(\"/api/admin/member-store\",{cacheMs:force?0:5e3,timeoutMs:15e3});if(data.success===!1)throw new Error(data.error||\"Saved settings are unavailable.\");return read===memberStoreReadV618&&renderMemberStoreAdminV601(data),data}catch(error){throw read===memberStoreReadV618&&mount&&(mount.innerHTML=\"<div class='orbit-empty-state' role='alert'><strong>Members tools could not load</strong><span>\"+esc(error.message||error)+\"</span><button type='button' class='secondary' data-member-tools-retry-v618>Retry</button></div>\",mount.querySelector(\"[data-member-tools-retry-v618]\").onclick=()=>loadMemberStoreAdminV601(!0).catch(()=>{})),error}}document.addEventListener(\"click\",event=>{event.target.closest(\"[data-poke-settings-v618]\")&&activateModule(\"member-store\",\"poke-agents\",{historyMode:\"push\"})});function ensureScannerModuleV6001(){if($2(\"orbitScannerAdminV6001\"))return;const shell=document.querySelector(\".orbit-admin-shell\");if(!shell)return;const url=API_BASE+\"/scanner?secret=\"+encodeURIComponent(secret),section=document.createElement(\"section\");section.id=\"orbitScannerAdminV6001\",section.className=\"orbit-module orbit-scanner-admin-v6001\",section.dataset.module=\"scanner-admin\",section.innerHTML=`<div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">CARD SHOWS \\xB7 DOOR ENTRY</p><h2>Scanner</h2><p>Scan tickets without leaving the Card Shows workspace. Use Full Screen when operating the door on a dedicated device.</p></div><a class=\"orbit-button-link\" href=\"${esc(url)}\" target=\"_blank\" rel=\"noopener\">Open Full Screen</a></div><div class=\"orbit-scanner-frame-wrap-v6001\"><iframe id=\"orbitScannerFrameV6001\" title=\"Orbit Card Show scanner\" allow=\"camera *\" loading=\"lazy\"></iframe></div>`,shell.appendChild(section)}function loadScannerModuleV6001(){ensureScannerModuleV6001();const frame=$2(\"orbitScannerFrameV6001\");frame&&!frame.src&&(frame.src=API_BASE+\"/scanner?secret=\"+encodeURIComponent(secret))}let orbitDirectorySourcesV651=[];function renderDirectorySourcesV651(payload={}){orbitDirectorySourcesV651=Array.isArray(payload.sources)?payload.sources:[];const c=payload.counts||{},summary=$2(\"directorySourceSummaryV651\"),box=$2(\"directorySourcesV651\"),proposals=$2(\"directorySourceProposalsV651\");summary&&(summary.innerHTML=`<article><small>Approved</small><strong>${Number(c.approved||0)}</strong></article><article><small>Enabled automation</small><strong>${Number(c.enabled||0)}</strong></article><article><small>Disabled</small><strong>${Number(c.disabled||0)}</strong></article><article><small>Awaiting approval</small><strong>${Number(c.proposed||0)}</strong></article>`),box&&(box.innerHTML=orbitDirectorySourcesV651.length?`<table><thead><tr><th>Source</th><th>Role</th><th>Coverage</th><th>Reliability</th><th>Status</th><th></th></tr></thead><tbody>${orbitDirectorySourcesV651.map(x=>`<tr><td><strong>${esc(x.label||x.host||\"Source\")}</strong><small>${esc(x.url||\"\")}</small>${x.notes?`<small>${esc(x.notes)}</small>`:\"\"}</td><td>${esc(String(x.trustRole||x.role||\"discovery_only\").replace(/_/g,\" \"))}<small>${esc(x.kind||\"\")}</small></td><td>${esc(x.geography||\"United Kingdom\")}</td><td>${esc(x.reliability||\"unknown\")}</td><td><span class=\"orbit-status-pill ${x.enabled!==!1&&x.approvalStatus===\"approved\"?\"success\":\"muted\"}\">${x.enabled!==!1&&x.approvalStatus===\"approved\"?\"Enabled\":\"Disabled\"}</span></td><td><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-csi-source-action=\"edit\" data-csi-source-id=\"${esc(x.id)}\">Edit</button><button type=\"button\" class=\"secondary\" data-csi-source-action=\"toggle\" data-csi-source-id=\"${esc(x.id)}\">${x.enabled!==!1?\"Disable\":\"Enable\"}</button><button type=\"button\" class=\"secondary danger\" data-csi-source-action=\"remove\" data-csi-source-id=\"${esc(x.id)}\">Remove</button></div></td></tr>`).join(\"\")}</tbody></table>`:'<div class=\"orbit-empty-state\"><strong>No approved sources</strong><span>Add the first human-approved Discovery source.</span></div>');const rows=Array.isArray(payload.proposals)?payload.proposals:[];proposals&&(proposals.innerHTML=rows.length?`<table><thead><tr><th>Proposed source</th><th>Evidence</th><th></th></tr></thead><tbody>${rows.map(x=>`<tr><td><strong>${esc(x.label||x.host||\"Proposed source\")}</strong><small>${esc(x.url||\"\")}</small></td><td>${esc(x.reason||x.evidenceSummary||\"Agent-discovered recurring source\")}</td><td><div class=\"orbit-action-row\"><button type=\"button\" data-csi-source-proposal=\"approve\" data-csi-proposal-id=\"${esc(x.id)}\">Approve</button><button type=\"button\" class=\"secondary danger\" data-csi-source-proposal=\"reject\" data-csi-proposal-id=\"${esc(x.id)}\">Reject</button></div></td></tr>`).join(\"\")}</tbody></table>`:'<div class=\"orbit-empty-state\"><strong>No source proposals waiting</strong><span>Agents cannot self-approve new recurring feeds.</span></div>')}async function loadDirectorySourcesV651(force=!1){const payload=await api(\"/api/admin/directory/sources\",{cacheMs:force?0:5e3,timeoutMs:15e3});return renderDirectorySourcesV651(payload),payload}async function addDirectorySourceV651(){const label=window.prompt(\"Source name\");if(!label)return;const url=window.prompt(\"Source URL\");if(!url)return;const trustRole=window.prompt(\"Trust role: discovery_only, corroboration, or first_party_evidence\",\"discovery_only\")||\"discovery_only\",kind=window.prompt(\"Source type (organiser, ticket_platform, specialist_directory, etc.)\",\"specialist_directory\")||\"specialist_directory\",payload=await api(\"/api/admin/directory/sources\",{method:\"POST\",body:JSON.stringify({label,url,trustRole,kind,geography:\"United Kingdom\",enabled:!0,automationAllowed:!0}),cacheMs:0});renderDirectorySourcesV651(payload)}async function handleDirectorySourceActionV651(event){const b=event.target.closest(\"[data-csi-source-action]\");if(!b)return;const id=b.dataset.csiSourceId,row=orbitDirectorySourcesV651.find(x=>x.id===id);if(row){if(b.dataset.csiSourceAction===\"remove\"){if(!window.confirm(`Remove ${row.label||row.host} from the approved Source Registry? Discovery will stop using it.`))return;renderDirectorySourcesV651(await api(`/api/admin/directory/sources/${encodeURIComponent(id)}`,{method:\"DELETE\",cacheMs:0}));return}if(b.dataset.csiSourceAction===\"toggle\"){renderDirectorySourcesV651(await api(`/api/admin/directory/sources/${encodeURIComponent(id)}`,{method:\"PATCH\",body:JSON.stringify({enabled:row.enabled===!1}),cacheMs:0}));return}if(b.dataset.csiSourceAction===\"edit\"){const label=window.prompt(\"Source name\",row.label||\"\");if(label===null)return;const url=window.prompt(\"Source URL\",row.url||\"\");if(url===null)return;const trustRole=window.prompt(\"Trust role: discovery_only, corroboration, or first_party_evidence\",row.trustRole||\"discovery_only\");if(trustRole===null)return;const notes=window.prompt(\"Notes\",row.notes||\"\");if(notes===null)return;renderDirectorySourcesV651(await api(`/api/admin/directory/sources/${encodeURIComponent(id)}`,{method:\"PATCH\",body:JSON.stringify({label,url,trustRole,notes}),cacheMs:0}))}}}async function handleDirectorySourceProposalV651(event){const b=event.target.closest(\"[data-csi-source-proposal]\");if(!b)return;const decision=b.dataset.csiSourceProposal,id=b.dataset.csiProposalId;decision===\"approve\"&&!window.confirm(\"Approve this source for automated Discovery?\")||renderDirectorySourcesV651(await api(`/api/admin/directory/source-proposals/${encodeURIComponent(id)}/${encodeURIComponent(decision)}`,{method:\"POST\",body:\"{}\",cacheMs:0}))}function setDirectoryPaneV6001(tab=\"events\"){ensureDirectoryModuleV560();const wanted=[\"events\",\"control\",\"sources\",\"analytics\",\"sponsors\",\"organisers\"].includes(tab)?tab:\"events\";document.querySelectorAll(\"[data-directory-pane-v594]\").forEach(pane=>pane.hidden=pane.dataset.directoryPaneV594!==wanted),wanted===\"sponsors\"&&Promise.all([loadDirectorySponsorsV589(!1),loadDirectorySponsorSettingsV593(!1)]).catch(err=>setNotice2(\"Directory sponsorship unavailable: \"+(err.message||err),!0)),wanted===\"organisers\"&&loadDirectoryOrganiserAccessV594(!1).catch(err=>setNotice2(\"Organiser access unavailable: \"+(err.message||err),!0)),wanted===\"sources\"&&loadDirectorySourcesV651(!1).catch(err=>setNotice2(\"Directory sources unavailable: \"+(err.message||err),!0)),wanted===\"analytics\"&&loadDirectoryAnalyticsV628(!1,null).catch(err=>setNotice2(\"Directory analytics unavailable: \"+(err.message||err),!0)),wanted===\"control\"&&(loadDirectoryControlCentreV625(!1).catch(err=>setNotice2(\"Directory Control Centre unavailable: \"+(err.message||err),!0)),loadDirectorySplitV648(!1).catch(()=>{}),loadDirectoryExclusionsV654(!1).catch(()=>{})),wanted===\"events\"&&window.setTimeout(()=>loadDirectoryV560(!1,{viewChanged:!0}).catch(err=>renderDirectoryLocalErrorV6001(err)),0)}const gmailHubV734={threadId:\"\",draftId:\"\",suggestedDraft:\"\",query:\"in:inbox\",pageToken:\"\",viewName:\"Inbox\",loading:!1,mailLoaded:!1,scanLoop:!1,scanCancel:!1};function gmailHubStatusV734(message,error=!1){const node=$2(\"gmailHubNoticeV734\");node&&(node.textContent=message,node.classList.toggle(\"error\",!!error))}function gmailHubDateV735(v){const d=new Date(v);return Number.isNaN(d.getTime())?String(v||\"\"):d.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"short\"})}async function gmailHubLabelsV735(){const box=$2(\"gmailHubLabelsV735\");if(box)try{const custom=((await api(\"/api/admin/communications/mailbox/labels\",{cacheMs:0})).labels||[]).filter(l=>l.type===\"user\").sort((a,b)=>a.name.localeCompare(b.name));box.innerHTML=custom.map(l=>'<button type=\"button\" title=\"'+esc(l.name)+'\" data-gmail-label-query-v735=\"'+esc(\"label:\"+JSON.stringify(l.name))+'\">\\u25B0 '+esc(l.name)+(l.unreadCount?\" <small>(\"+Number(l.unreadCount)+\")</small>\":\"\")+\"</button>\").join(\"\")||\"<small>No custom Gmail labels</small>\"}catch(err){box.textContent=\"Labels unavailable: \"+(err.message||\"try refresh\")}}function gmailHubScanRenderV737(data){const set=(id,value)=>{const n=$2(id);n&&(n.textContent=value)},stateLabel={complete:\"Complete\",running:\"Index running\",paused:\"Paused\",failed:\"Paused after error\",not_started:\"Not started\"}[data.state]||\"Unknown\",blocked=Number(data.nextEligibleAt?new Date(data.nextEligibleAt).getTime():0)>Date.now();set(\"gmailHubScanHeadlineV737\",blocked?\"Rate-controlled: waiting for next safe Gmail request\":stateLabel),set(\"gmailHubScanIndexedV737\",String(data.indexed||0)),set(\"gmailHubScanLastV737\",data.lastBatchSize==null?\"\\u2014\":String(data.lastBatchSize)+\" messages\"),set(\"gmailHubScanNextV737\",data.state===\"complete\"?\"Finished\":blocked?new Date(data.nextEligibleAt).toLocaleTimeString(\"en-GB\"):data.state===\"running\"?\"Ready\":\"\\u2014\"),set(\"gmailHubScanActivityV737\",data.lastSuccessAt?new Date(data.lastSuccessAt).toLocaleTimeString(\"en-GB\"):\"Not yet\"),set(\"gmailHubScanStatusV735\",stateLabel+\" \\xB7 \"+(data.scanned||0)+\" discovered \\xB7 \"+(data.indexed||0)+\" indexed \\xB7 \"+(data.skipped||0)+\" skipped\"+(data.error?\" \\xB7 \"+data.error:\"\")),set(\"gmailHubScanHelpV737\",data.state===\"complete\"?\"Gmail has no more pages. Full message bodies are still read on demand; AI review is separate.\":blocked?\"Waiting for Gmail quota safely. The saved cursor and \"+(data.indexed||0)+\" indexed messages will be preserved.\":\"Total mailbox size is unknown until enumeration finishes. Metadata only; Gmail has not been modified.\")}async function gmailHubScanStatusV735(){try{const data=await api(\"/api/admin/communications/mailbox/scan\",{cacheMs:0,timeoutMs:2e4});return gmailHubScanRenderV737(data),data}catch(err){const n=$2(\"gmailHubScanStatusV735\");return n&&(n.textContent=\"Index status unavailable: \"+err.message),null}}async function loadGmailHubV734(){const status=await api(\"/api/admin/communications/status\",{cacheMs:0}),connect=$2(\"gmailHubConnectV734\"),setup=$2(\"gmailHubSetupV734\"),connected=$2(\"gmailHubConnectedV734\");connect&&(connect.hidden=!status.configured||status.connected),setup&&(setup.hidden=!!status.configured,setup.textContent=status.configured?\"\":\"Google configuration required on Render: \"+status.missing.join(\", \")+(status.redirectUri?\" \\xB7 Google OAuth redirect URI: \"+status.redirectUri:\"\")),connected&&(connected.textContent=status.connected?\"\\u25CF Connected to \"+status.email:\"No Gmail account connected yet\"),!(!status.connected&&(gmailHubV734.mailLoaded=!1,gmailHubStatusV734(\"Connect your first business Gmail mailbox.\"),$2(\"gmailHubListV734\")&&($2(\"gmailHubListV734\").innerHTML=\"\"),![\"cases\",\"calendar\"].includes(commsViewV736)))&&(status.connected&&(await gmailHubScanStatusV735(),commsViewV736===\"mail\"&&!gmailHubV734.mailLoaded&&(await Promise.all([gmailHubLabelsV735(),gmailHubListV734()]),gmailHubV734.mailLoaded=!0)),commsSetViewV736(commsViewV736))}let commsViewV736=\"home\";function commsSetViewV736(view){[\"home\",\"mail\",\"cases\",\"tasks\",\"calendar\",\"accounts\"].includes(view)&&(commsViewV736=view,document.querySelectorAll(\"[data-gmail-pane-v736]\").forEach(node=>{node.hidden=node.dataset.gmailPaneV736!==view}),document.querySelectorAll(\"[data-gmail-top-view-v737]\").forEach(node=>{const a=node.dataset.gmailTopViewV737===view;node.classList.toggle(\"active\",a),node.setAttribute(\"aria-selected\",String(a)),a?node.setAttribute(\"aria-current\",\"page\"):node.removeAttribute(\"aria-current\")}),view===\"mail\"&&!gmailHubV734.mailLoaded&&(gmailHubV734.mailLoaded=!0,Promise.all([gmailHubLabelsV735(),gmailHubListV734()]).catch(e=>gmailHubStatusV734(e.message,!0))),(view===\"home\"||view===\"tasks\"||view===\"accounts\")&&commsRefreshV736().catch(e=>{const n=$2(\"commsHomeProcessStatusV736\");n&&(n.textContent=\"Unable to refresh: \"+e.message)}),window.dispatchEvent(new CustomEvent(\"orbit-pa-view-v802\",{detail:{view}})))}let paTasksFilterV743=\"all\",paTasksCacheV743=[];function commsRenderActionsV736(actions,target,short=!1){const el=$2(target);el&&(target===\"commsTasksListV736\"&&(paTasksCacheV743=Array.isArray(actions)?actions:[],actions=paTasksCacheV743.filter(a=>paTasksFilterV743===\"all\"||paTasksFilterV743===\"reply\"&&[\"reply\",\"follow_up\"].includes(a.kind)||paTasksFilterV743===\"form\"&&[\"form\",\"deadline\"].includes(a.kind)||a.kind===paTasksFilterV743)),el.innerHTML=actions.length?actions.slice(0,short?5:60).map(a=>'<article class=\"orbit-comms-action-v736\"><div><span class=\"orbit-comms-priority-v736 '+esc(a.priority)+'\">'+esc(a.priority||\"review\")+\"</span><strong>\"+esc(a.subject||\"(No subject)\")+\"</strong><small>\"+esc(a.from||\"\")+\"</small><p>\"+esc(a.suggestedAction||a.reason||\"Review this message\")+\"</p><small>\"+esc(a.reason||\"\")+\"</small>\"+(a.draftSuggestion?'<details class=\"orbit-pa-prepared-v739\"><summary>AI prepared a suggested reply</summary><p class=\"orbit-pa-draft-copy-v739\">'+esc(a.draftSuggestion)+\"</p><small>Suggestion only \\u2014 not saved or sent. Open &amp; handle to refine.</small></details>\":\"\")+'</div><div class=\"orbit-comms-action-controls-v736\"><button type=\"button\" data-gmail-action-v736=\"open\" data-comms-thread-v736=\"'+esc(a.threadId)+'\">Open &amp; handle</button>'+(short?\"\":'<button type=\"button\" class=\"secondary\" data-gmail-action-v736=\"confirm\" data-comms-thread-v736=\"'+esc(a.threadId)+'\">Keep on my list</button><button type=\"button\" class=\"secondary\" data-gmail-action-v736=\"dismiss\" data-comms-thread-v736=\"'+esc(a.threadId)+'\">Dismiss</button><label class=\"orbit-comms-note-v738\">My note / what needs doing<textarea rows=\"2\" maxlength=\"2000\" data-comms-task-note-v738=\"'+esc(a.threadId)+'\">'+esc(a.ownerNote||\"\")+'</textarea></label><button type=\"button\" class=\"secondary\" data-gmail-action-v736=\"note\" data-comms-thread-v736=\"'+esc(a.threadId)+'\">Save my note</button>')+\"</div></article>\").join(\"\"):\"<p>No AI-suggested actions awaiting review. This does not certify your mailbox is clear.</p>\")}document.addEventListener(\"click\",event=>{const b=event.target.closest(\"[data-pa-task-filter-v743]\");!b||state.currentModule!==\"gmail-hub\"||(paTasksFilterV743=b.dataset.paTaskFilterV743||\"all\",document.querySelectorAll(\"[data-pa-task-filter-v743]\").forEach(x=>{x.classList.toggle(\"active\",x===b),x.setAttribute(\"aria-pressed\",String(x===b))}),commsRenderActionsV736(paTasksCacheV743,\"commsTasksListV736\"))});let paProgressBusyV741=!1;function renderPaProgressV741(overview){if(!overview)return;const progress=overview.reviewProgress||{},set=(id,value)=>{const n=$2(id);n&&(n.textContent=value)},total=Number(progress.eligibleMessages||0),done=Number(progress.reviewedMessages||0),remaining=Number(progress.remainingEligible||0);set(\"paAiRatioV741\",done.toLocaleString(\"en-GB\")+\" / \"+total.toLocaleString(\"en-GB\")),set(\"paAiReviewedV741\",done.toLocaleString(\"en-GB\")),set(\"paAiRemainingV741\",remaining.toLocaleString(\"en-GB\")),set(\"paAiExcludedV741\",Number(progress.excludedMessages||0).toLocaleString(\"en-GB\")),set(\"paAiSpamV741\",Number(progress.suspectedJunk||0).toLocaleString(\"en-GB\")+\" AI flagged \\xB7 \"+Number(progress.spamFolderCount||0).toLocaleString(\"en-GB\")+\" already in Spam\");const bar=$2(\"paAiBarV741\");bar&&(bar.max=Math.max(1,total),bar.value=Math.min(total,done),bar.setAttribute(\"aria-valuetext\",done+\" of \"+total+\" eligible indexed emails reviewed successfully\"));const a=overview.automation||{},b=overview.budget||{},probe=a.providerProbe||null;set(\"commsProviderProbeV742\",probe?(probe.state===\"ready\"?\"OpenAI connection verified\":\"OpenAI blocked: \"+(probe.reason||\"unknown\")+(probe.httpStatus?\" \\xB7 HTTP \"+probe.httpStatus:\"\")+(probe.providerCode?\" \\xB7 \"+probe.providerCode:\"\")+\" \\xB7 \"+(probe.help||\"\"))+\" \\xB7 Checked \"+new Date(probe.checkedAt).toLocaleString(\"en-GB\"):\"No successful OpenAI provider check recorded. Click Test OpenAI connection in Settings.\");const blocked=a.pausedUntil&&new Date(a.pausedUntil).getTime()>Date.now();set(\"paAiActivityV741\",a.enabled?blocked?\"AI waiting after provider error\":b.totalAvailableUsd<.03?\"AI budgets exhausted\":progress.complete?\"Indexed backlog reviewed\":a.lastRunAt?\"Automatic review enabled \\xB7 Last batch \"+new Date(a.lastRunAt).toLocaleTimeString(\"en-GB\"):\"Automatic review waiting to start\":\"AI paused by owner\"),set(\"paAiNoteV741\",\"Indexed \"+Number(progress.totalMessages||0).toLocaleString(\"en-GB\")+\" Gmail messages \\xB7 \"+Number(overview.analysedThreads||0)+\" completed conversation reviews \\xB7 \"+Number(overview.invoicesIdentified||0)+\" invoice candidates \\xB7 \"+Number(overview.preparedSuggestions||0)+\" draft suggestions \\xB7 \"+Number(progress.excludedMessages||0)+\" messages originally in Spam / Trash / Drafts (also queued for review). \"+(progress.scanComplete?\"History indexing finished.\":\"History indexing is still running.\")),set(\"paAiBudgetV743\",\"Historical one-off: $\"+Number(b.history?.estimatedSpentUsd||0).toFixed(3)+\" / $100 \\xB7 Monthly: $\"+Number(b.estimatedSpentUsd||0).toFixed(3)+\" / $50 \\xB7 Combined remaining $\"+Number(b.totalAvailableUsd||0).toFixed(2));const error=(overview.recentErrors||[])[0],previousResolved=error&&a.lastSuccessfulAiAt&&error.errorAt&&new Date(a.lastSuccessfulAiAt).getTime()>new Date(error.errorAt).getTime();set(\"paAiErrorV741\",error?(previousResolved?\"Previous failure (later AI successes recorded): \":\"Latest issue: \")+(error.source||\"provider\")+\" / \"+error.type+(error.providerCode?\" (\"+error.providerCode+\")\":\"\")+(error.stage?\" at \"+error.stage:\"\")+(error.message?\" \\u2014 \"+error.message:\"\")+(error.nextTryAt?\" \\xB7 Retry after \"+new Date(error.nextTryAt).toLocaleString(\"en-GB\"):\"\"):\"No recent failed reviews recorded.\")}async function paProgressPollV741(){if(!(paProgressBusyV741||document.hidden||!state.adminAuthenticated||state.currentModule!==\"gmail-hub\")){paProgressBusyV741=!0;try{const overview=await api(\"/api/admin/communications/intelligence/overview\",{cacheMs:0,timeoutMs:12e3});if(renderPaProgressV741(overview),[\"home\",\"tasks\"].includes(commsViewV736)){const now=Date.now();if(now-(paProgressPollV741.lastActionsAt||0)>=3e4){paProgressPollV741.lastActionsAt=now;const actions=await api(\"/api/admin/communications/intelligence/tasks?status=pending&limit=60\",{cacheMs:0,timeoutMs:1e4});commsRenderActionsV736(actions.actions||[],\"commsHomePrioritiesV736\",!0),commsRenderActionsV736(actions.actions||[],\"commsTasksListV736\");const n=$2(\"commsHomePendingV736\");n&&(n.textContent=String(overview.pending||0))}}}catch(e){const n=$2(\"paAiErrorV741\");n&&(n.textContent=\"Live status unavailable; will retry automatically: \"+(e.message||\"network error\"))}finally{paProgressBusyV741=!1}}}document.addEventListener(\"click\",async event=>{const btn=event.target.closest(\"[data-comms-provider-probe-v742]\");if(!btn||state.currentModule!==\"gmail-hub\")return;const output=$2(\"commsProviderProbeV742\");btn.disabled=!0,output&&(output.textContent=\"Testing OpenAI model access securely\\u2026\");try{const result=await api(\"/api/admin/communications/intelligence/provider-check\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:3e4}),d=result.providerProbe||{};output&&(output.textContent=(result.success?\"OpenAI connection verified. \":\"OpenAI not ready. \")+(d.httpStatus?\"HTTP \"+d.httpStatus+\". \":\"\")+(d.reason?d.reason+\". \":\"\")+(d.providerCode?\"Code \"+d.providerCode+\". \":\"\")+(d.help||\"\")),await commsRefreshV736()}catch(e){output&&(output.textContent=\"Provider check could not complete: \"+(e.message||\"unknown error\"))}finally{btn.disabled=!1}}),window.setInterval(paProgressPollV741,8e3);async function commsRefreshV736(){if(state.currentModule!==\"gmail-hub\")return;const[overview,tasks]=await Promise.all([api(\"/api/admin/communications/intelligence/overview\",{cacheMs:0,timeoutMs:2e4}),api(\"/api/admin/communications/intelligence/tasks?status=pending&limit=60\",{cacheMs:0,timeoutMs:2e4})]),set=(id,val)=>{const n=$2(id);n&&(n.textContent=val)};renderPaProgressV741(overview),set(\"commsHomeConnectionV736\",overview.connected?\"Connected\":\"Not connected\"),set(\"commsHomeMailboxV736\",overview.email||\"Connect Business Gmail\"),set(\"commsAccountsStatusV736\",overview.connected?\"Connected: \"+overview.email:\"Not connected\"),set(\"gmailHubTopTaskBadgeV737\",String(overview.pending)),set(\"commsHomeIndexedV736\",String(overview.indexed)),set(\"commsHomeAnalysedV736\",String(overview.analysedThreads)),set(\"commsHomePendingV736\",String(overview.pending)),set(\"commsPaCoverageV739\",overview.scan.state===\"complete\"?\"Full history indexed; AI review \"+overview.analysedThreads+\" conversations so far.\":\"Still examining your mailbox. These are findings so far, not a clean bill of health.\"),set(\"gmailHubTaskBadgeV736\",String(overview.pending)),set(\"commsHomeScanV736\",\"History index: \"+overview.scan.state+\" \\xB7 \"+overview.scan.scanned+\" scanned\"+(overview.scan.lastSuccessAt?\" \\xB7 last success \"+new Date(overview.scan.lastSuccessAt).toLocaleTimeString(\"en-GB\"):\"\")),set(\"commsHomeDailyV736\",overview.dailyCompleted+\" completed reviews \\xB7 \"+overview.dailyFailures+\" failed \\xB7 \"+overview.dailyAnalysed+\" attempted today\"+(overview.failedConversations?\" \\xB7 \"+overview.failedConversations+\" scheduled for retry\":\"\"));const b=overview.budget||overview.automation?.budget||{};set(\"commsAutomationStatusV738\",(overview.automation?.enabled?\"Background AI ON\":\"Background AI paused\")+\" \\xB7 Estimated month: $\"+Number(b.estimatedSpentUsd||0).toFixed(3)+\" / $\"+Number(b.limitUsd||50).toFixed(2)+\" \\xB7 Remaining: $\"+Number(b.remainingUsd||0).toFixed(2)+(b.warningThreshold?\" \\xB7 \"+b.warningThreshold+\"% budget warning\":\"\")+(overview.automation?.lastRunAt?\" \\xB7 Last batch: \"+new Date(overview.automation.lastRunAt).toLocaleString(\"en-GB\"):\" \\xB7 Waiting for batch\")+(overview.automation?.pausedReason?\" \\xB7 \"+overview.automation.pausedReason:\"\")+(overview.automation?.lastError?\" \\xB7 Error: \"+overview.automation.lastError:\"\")+(overview.recentErrors?.length?\" \\xB7 Latest retry issue: \"+overview.recentErrors[0].type:\"\")),commsRenderActionsV736(tasks.actions||[],\"commsHomePrioritiesV736\",!0),commsRenderActionsV736(tasks.actions||[],\"commsTasksListV736\")}document.addEventListener(\"click\",async event=>{if(state.currentModule!==\"gmail-hub\")return;const b=event.target.closest(\"[data-gmail-view-v736],[data-gmail-home-action-v736],[data-gmail-action-v736]\");if(b){if(b.dataset.gmailViewV736){activateModule(\"gmail-hub\",b.dataset.gmailViewV736,{historyMode:\"push\"});return}try{if(b.dataset.gmailHomeActionV736===\"refresh\"){await commsRefreshV736();return}if(b.dataset.gmailHomeActionV736===\"process\"){if(!confirm(\"Analyse up to five indexed real Gmail conversations using paid AI? No message will be changed or sent.\"))return;b.disabled=!0;const n=$2(\"commsHomeProcessStatusV736\");n&&(n.textContent=\"AI reviewing indexed conversations\\u2026\");try{const d=await api(\"/api/admin/communications/intelligence/process\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:12e4});n&&(n.textContent=\"Successfully reviewed \"+d.analysed+\" conversations; \"+d.suggestions+\" suggestions; \"+d.errors.length+\" errors. No Gmail messages changed.\"),await commsRefreshV736()}finally{b.disabled=!1}return}if(b.dataset.gmailActionV736===\"open\"){activateModule(\"gmail-hub\",\"mail\",{historyMode:\"push\"}),await gmailHubOpenV734(b.dataset.commsThreadV736);return}if([\"confirm\",\"dismiss\",\"note\"].includes(b.dataset.gmailActionV736)){const status=b.dataset.gmailActionV736===\"confirm\"?\"confirmed\":b.dataset.gmailActionV736===\"dismiss\"?\"dismissed\":\"pending\",note=b.dataset.gmailActionV736===\"note\"?document.querySelector('[data-comms-task-note-v738=\"'+b.dataset.commsThreadV736+'\"]')?.value||\"\":void 0;await api(\"/api/admin/communications/intelligence/tasks/review\",{method:\"POST\",body:JSON.stringify({threadId:b.dataset.commsThreadV736,status,...note!==void 0?{note}:{}}),cacheMs:0}),await commsRefreshV736();return}}catch(e){const n=$2(\"commsHomeProcessStatusV736\");n&&(n.textContent=\"Communications action failed: \"+e.message)}}}),document.addEventListener(\"click\",async event=>{const button2=event.target.closest(\"[data-pa-cleanup-v739]\");if(!button2||state.currentModule!==\"gmail-hub\")return;const out=$2(\"commsCleanupPreviewV739\");button2.disabled=!0,out&&(out.textContent=\"Examining indexed message metadata; nothing will be deleted\\u2026\");try{const data=await api(\"/api/admin/communications/intelligence/cleanup-preview\",{cacheMs:0,timeoutMs:35e3});if(out){const senders=(data.provisionalClutterSenders||[]).slice(0,18),cities=(data.proposedShowLabels||[]).slice(0,15);out.innerHTML=\"<p><strong>\"+Number(data.sampledMessages||0)+\" of \"+Number(data.totalIndexed||0)+\" indexed messages sampled.</strong> \"+Number(data.protectedCandidates||0)+\" messages contain possible important business/financial keywords and were excluded from clutter suggestions.</p><h4>Potential newsletter senders \\u2014 check before unsubscribing</h4>\"+(senders.length?\"<ul>\"+senders.map(x=>\"<li><strong>\"+esc(x.sender)+\"</strong> \\xB7 \"+Number(x.count||0)+\" sampled messages <small>\"+esc((x.examples||[]).join(\" \\xB7 \"))+'</small><div class=\"orbit-pa-cleanup-controls-v741\"><button type=\"button\" class=\"secondary\" data-pa-cleanup-decision-v741=\"review_unsubscribe\" data-pa-cleanup-sender-v741=\"'+esc(x.sender)+'\">Add to unsubscribe review</button><button type=\"button\" class=\"secondary\" data-pa-cleanup-decision-v741=\"keep\" data-pa-cleanup-sender-v741=\"'+esc(x.sender)+'\">Not junk \\xB7 Keep</button></div></li>').join(\"\")+\"</ul>\":\"<p>No obvious newsletter candidates in this sample.</p>\")+\"<h4>Possible show folders</h4>\"+(cities.length?\"<p>\"+cities.map(x=>'<span class=\"orbit-pa-label-preview-v739\">'+esc(x.name)+\" (\"+Number(x.matchingSampleCount||0)+\")</span>\").join(\" \")+\"</p>\":\"<p>No show-location suggestions in this sample.</p>\")+\"<small>Review only. No messages, filters, subscriptions or labels were changed. Classification needs verification before applying rules.</small>\"}}catch(e){out&&(out.textContent=\"Cleanup preview unavailable: \"+e.message)}finally{button2.disabled=!1}});async function loadPaCleanupRegisterV741(){const box=$2(\"paCleanupRegisterV741\");if(!box)return;const data=await api(\"/api/admin/communications/intelligence/cleanup-register\",{cacheMs:0,timeoutMs:15e3}),rows=data.entries||[];box.innerHTML=\"<p><strong>\"+Number(data.confirmedUnsubscribed||0)+\" verified unsubscribed lists</strong> \\xB7 \"+Number(data.awaitingReview||0)+\" awaiting owner review. No unsubscribe calls have been sent by Orbit.</p>\"+(rows.length?\"<ul>\"+rows.map(r=>\"<li><strong>\"+esc(r.sender)+\"</strong> \\xB7 \"+esc(r.decision===\"keep\"?\"Keep \\u2014 not junk\":r.decision===\"review_unsubscribe\"?\"Review unsubscribe request\":\"Ignore suggestion\")+\" \\xB7 \"+esc(r.unsubscribeState||\"not_requested\")+\"</li>\").join(\"\")+\"</ul>\":\"<p>No cleanup decisions recorded yet.</p>\")}document.addEventListener(\"click\",async e=>{if(state.currentModule!==\"gmail-hub\")return;const btn=e.target.closest(\"[data-pa-cleanup-register-v741],[data-pa-cleanup-decision-v741]\");if(btn){btn.disabled=!0;try{if(btn.hasAttribute(\"data-pa-cleanup-decision-v741\")){const decision=btn.dataset.paCleanupDecisionV741,sender=btn.dataset.paCleanupSenderV741;let label=\"\";decision===\"keep\"&&(label=window.prompt(\"Optional suggested Gmail folder/label for \"+sender+\" (nothing will be moved yet):\",\"\")||\"\"),await api(\"/api/admin/communications/intelligence/cleanup-decision\",{method:\"POST\",body:JSON.stringify({sender,decision,label}),cacheMs:0})}await loadPaCleanupRegisterV741()}catch(err){const n=$2(\"paCleanupRegisterV741\");n&&(n.textContent=\"Cleanup decision could not be saved: \"+err.message)}finally{btn.disabled=!1}}}),document.addEventListener(\"click\",async event=>{if(state.currentModule!==\"gmail-hub\")return;const btn=event.target.closest(\"[data-comms-automation-v738],[data-comms-audit-v738]\");if(btn){btn.disabled=!0;try{if(btn.hasAttribute(\"data-comms-automation-v738\")){const enabled=btn.dataset.commsAutomationV738===\"enable\";if(enabled&&!confirm(\"Allow Orbit to review indexed conversations automatically under its separate US$50/month AI budget? Orbit will NOT send, delete, unsubscribe or move Gmail messages.\"))return;await api(\"/api/admin/communications/intelligence/automation\",{method:\"POST\",body:JSON.stringify({enabled}),cacheMs:0}),await commsRefreshV736()}else{const node=$2(\"commsAuditOutputV738\");node&&(node.textContent=\"Reading existing Gmail labels and filters (read only)\\u2026\");const r=await api(\"/api/admin/communications/mailbox/rules-audit\",{cacheMs:0,timeoutMs:3e4});if(node){node.textContent=\"\";const labels=document.createElement(\"p\");if(labels.textContent=\"Existing labels: \"+r.labels.length+\" \\xB7 Existing filters: \"+(r.filtersAccessible?r.filters.length:\"permission required\")+\" \\xB7 No changes applied.\",node.append(labels),r.requiresReauthorisation){const p=document.createElement(\"p\");p.textContent=\"To read existing Gmail filter rules, re-authorise the Gmail connection in Accounts with the additional Gmail settings permission. Existing rules have not changed.\",node.append(p)}const sub=document.createElement(\"pre\");sub.className=\"orbit-comms-audit-list-v738\",sub.textContent=JSON.stringify({labels:r.labels.filter(x=>x.type===\"user\").map(x=>x.name),filters:r.filters,proposedFolders:r.proposedLabelCategories},null,2),node.append(sub)}}}catch(e){const n=$2(btn.hasAttribute(\"data-comms-audit-v738\")?\"commsAuditOutputV738\":\"commsAutomationStatusV738\");n&&(n.textContent=\"Operation failed: \"+e.message)}finally{btn.disabled=!1}}});async function gmailHubListV734(q,{append=!1,viewName}={}){if(gmailHubV734.loading)return;q!==void 0&&(gmailHubV734.query=q,gmailHubV734.pageToken=\"\"),viewName&&(gmailHubV734.viewName=viewName);const query=gmailHubV734.query;gmailHubV734.loading=!0;const dest=$2(\"gmailHubListV734\"),more=$2(\"gmailHubMoreV735\");!append&&dest&&(dest.innerHTML='<div class=\"orbit-gmail-pane-heading-v735\">Loading Gmail messages\\u2026</div>'),gmailHubStatusV734(\"Reading \"+gmailHubV734.viewName+\" from Gmail\\u2026\");try{const data=await api(\"/api/admin/communications/messages?q=\"+encodeURIComponent(query)+\"&max=50\"+(append&&gmailHubV734.pageToken?\"&pageToken=\"+encodeURIComponent(gmailHubV734.pageToken):\"\"),{cacheMs:0,timeoutMs:6e4}),rows=(data.messages||[]).map(m=>'<button type=\"button\" class=\"orbit-gmail-message-v734 '+((m.labels||[]).includes(\"UNREAD\")?\"unread \":\"\")+(gmailHubV734.threadId===m.threadId?\"selected\":\"\")+'\" data-gmail-thread-v734=\"'+esc(m.threadId)+'\" aria-label=\"Open '+esc(m.subject)+'\"><span><strong>'+esc(m.from||\"(Unknown sender)\")+\"</strong><small>\"+esc(m.subject||\"(No subject)\")+'</small><span class=\"orbit-gmail-snippet-v735\">'+esc(m.snippet||\"\")+\"</span></span><b>\"+esc(gmailHubDateV735(m.date))+\"</b></button>\").join(\"\");dest&&(dest.innerHTML=(append?dest.innerHTML:\"\")+(rows||(append?\"\":'<p class=\"orbit-muted\" style=\"padding:18px\">No messages in this view. Gmail has not been changed.</p>'))),gmailHubV734.pageToken=data.nextPageToken||\"\",more&&(more.hidden=!gmailHubV734.pageToken);const view=$2(\"gmailHubViewNameV735\");view&&(view.textContent=gmailHubV734.viewName),$2(\"gmailHubListCountV735\")&&($2(\"gmailHubListCountV735\").textContent=(data.resultSizeEstimate||0)+\" estimated matching\"),gmailHubStatusV734(\"Showing Gmail \"+gmailHubV734.viewName+\". \"+(data.nextPageToken?\"More pages available.\":\"End of this view.\")+\" Full mailbox coverage requires the history index below.\")}catch(error){gmailHubStatusV734(\"Could not load \"+gmailHubV734.viewName+\": \"+error.message,!0),dest&&!append&&(dest.textContent=\"Gmail list failed. Use Refresh to retry.\")}finally{gmailHubV734.loading=!1}}async function gmailHubOpenV734(id){gmailHubV734.threadId=id,gmailHubV734.draftId=\"\",gmailHubV734.suggestedDraft=\"\",document.querySelectorAll(\"[data-gmail-thread-v734]\").forEach(el=>el.classList.toggle(\"selected\",el.dataset.gmailThreadV734===id));const wrap=$2(\"gmailHubThreadV734\"),content=$2(\"gmailHubThreadContentV735\"),empty=$2(\"gmailHubEmptyV735\");if(!wrap||!content)throw Error(\"The Gmail reading pane is not available. Refresh Orbit OS.\");content.hidden=!1,empty&&(empty.hidden=!0),content.querySelector(\"[data-gmail-thread-body]\").textContent=\"Opening full conversation from Gmail\\u2026\",$2(\"gmailHubThreadSubjectV735\")&&($2(\"gmailHubThreadSubjectV735\").textContent=\"Loading conversation\\u2026\"),window.matchMedia(\"(max-width:820px)\").matches&&wrap.scrollIntoView({behavior:\"smooth\",block:\"start\"});try{const messages=(await api(\"/api/admin/communications/threads/\"+encodeURIComponent(id),{cacheMs:0,timeoutMs:45e3})).messages||[];if(!messages.length)throw Error(\"Gmail returned no messages for this conversation.\");$2(\"gmailHubThreadSubjectV735\")&&($2(\"gmailHubThreadSubjectV735\").textContent=messages[messages.length-1].subject||\"(No subject)\");const card=m=>'<article class=\"orbit-gmail-thread-message-v734\"><strong>'+esc(m.from||\"(Unknown sender)\")+\"</strong><small>To: \"+esc(m.to||\"\")+\" \\xB7 \"+esc(m.date||\"\")+\"</small><p>\"+esc(m.text||m.snippet||\"(This message has no plain-text body; HTML-only messages are not rendered in this pilot.)\")+\"</p></article>\",earlier=messages.slice(0,-1),history2=content.querySelector(\"[data-gmail-thread-body]\");history2.innerHTML=\"<h4>Latest message</h4>\"+card(messages[messages.length-1])+(earlier.length?'<details id=\"gmailHubOlderV737\"><summary>'+earlier.length+\" earlier message\"+(earlier.length===1?\"\":\"s\")+\" \\u2014 expand conversation</summary>\"+earlier.map(card).join(\"\")+\"</details>\":\"\"),wrap.scrollTop=0,$2(\"gmailHubDraftV734\")&&($2(\"gmailHubDraftV734\").value=\"\"),$2(\"gmailHubInstructionV734\")&&($2(\"gmailHubInstructionV734\").value=\"\"),$2(\"gmailHubDraftStatusV734\")&&($2(\"gmailHubDraftStatusV734\").textContent=\"No reply has been sent. Ask AI to draft, review, and save to Gmail Drafts.\"),$2(\"gmailHubReadSyncV735\")&&($2(\"gmailHubReadSyncV735\").textContent=\"Conversation read from Gmail \\xB7 No state changed\"),gmailHubStatusV734(\"Conversation opened successfully. Gmail is the source of truth.\")}catch(error){content.querySelector(\"[data-gmail-thread-body]\").textContent=\"Could not open conversation: \"+error.message,gmailHubStatusV734(\"Opening failed: \"+error.message,!0)}}async function gmailHubDraftV734(){if(!gmailHubV734.threadId)throw Error(\"Choose a conversation first.\");const instruction=$2(\"gmailHubInstructionV734\")?.value||\"\";gmailHubStatusV734(\"Preparing AI reply for your approval\\u2026\");const result=await api(\"/api/admin/communications/drafts/generate\",{method:\"POST\",body:JSON.stringify({threadId:gmailHubV734.threadId,currentDraft:$2(\"gmailHubDraftV734\")?.value||\"\",instruction}),timeoutMs:6e4});$2(\"gmailHubDraftV734\").value=result.body,gmailHubV734.suggestedDraft=result.body,$2(\"gmailHubDraftStatusV734\").textContent=\"Draft prepared by \"+result.model+\". Review and edit. Not yet saved to Gmail.\",gmailHubStatusV734(\"AI draft ready. Ask for changes or save it to Gmail Drafts. Nothing has been sent.\")}async function gmailHubSaveV734(){if(!gmailHubV734.threadId)throw Error(\"Choose a conversation first.\");const body=$2(\"gmailHubDraftV734\")?.value||\"\";if(!body.trim())throw Error(\"Reply cannot be empty.\");const result=await api(\"/api/admin/communications/drafts/save\",{method:\"POST\",body:JSON.stringify({threadId:gmailHubV734.threadId,draftId:gmailHubV734.draftId,body}),timeoutMs:45e3});gmailHubV734.draftId=result.draftId,$2(\"gmailHubDraftStatusV734\").textContent=\"Confirmed saved in Gmail Drafts. Review/send from Gmail. Orbit OS has NOT sent this email.\",gmailHubStatusV734(\"Gmail confirmed the draft was saved. No message was sent.\")}async function gmailHubRunScanV735(){if(!gmailHubV734.scanLoop){gmailHubV734.scanLoop=!0,gmailHubV734.scanCancel=!1;try{for(;!gmailHubV734.scanCancel;){const result=await gmailHubScanStatusV735();if(!result||result.state!==\"running\")break;await new Promise(resolve=>window.setTimeout(resolve,12e3))}}finally{gmailHubV734.scanLoop=!1}}}document.addEventListener(\"keydown\",e=>{e.key===\"Enter\"&&e.target?.id===\"gmailHubSearchV735\"&&(e.preventDefault(),gmailHubListV734(e.target.value||\"\",{viewName:\"Search\"}))}),document.addEventListener(\"click\",async e=>{const el=e.target.closest(\"[data-gmail-action-v734],[data-gmail-thread-v734],[data-gmail-folder-v735],[data-gmail-label-query-v735]\");if(el&&state.currentModule===\"gmail-hub\"){e.preventDefault();try{if(el.hasAttribute(\"data-gmail-thread-v734\")){await gmailHubOpenV734(el.dataset.gmailThreadV734);return}if(el.hasAttribute(\"data-gmail-folder-v735\")||el.hasAttribute(\"data-gmail-label-query-v735\")){const q=el.dataset.gmailFolderV735||el.dataset.gmailLabelQueryV735;document.querySelectorAll(\"[data-gmail-folder-v735],[data-gmail-label-query-v735]\").forEach(node=>node.classList.toggle(\"active\",node===el)),await gmailHubListV734(q,{viewName:el.textContent.trim()});return}const action=el.dataset.gmailActionV734;if(action===\"focus-draft\"||action===\"generate-draft\"){$2(\"gmailHubEditorV737\")?.scrollIntoView({behavior:\"smooth\",block:\"nearest\"}),action===\"generate-draft\"?await gmailHubDraftV734():$2(\"gmailHubInstructionV734\")?.focus();return}if(action===\"show-history\"){$2(\"gmailHubOlderV737\")?.setAttribute(\"open\",\"\"),$2(\"gmailHubHistoryV737\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"});return}if(action===\"refresh\")await loadGmailHubV734();else if(action===\"connect\"){const data=await api(\"/api/admin/communications/connect\",{method:\"POST\",body:\"{}\"});window.location.assign(data.url)}else if(action===\"unanswered\")await gmailHubListV734(\"in:inbox -from:me\",{viewName:\"Reply candidates (not confirmed)\"});else if(action===\"inbox\")await gmailHubListV734(\"in:inbox\",{viewName:\"Inbox\"});else if(action===\"finance\")await gmailHubListV734(\"in:anywhere -in:trash {invoice billing payment receipt}\",{viewName:\"Finance candidates\"});else if(action===\"search\")await gmailHubListV734($2(\"gmailHubSearchV735\")?.value||\"\",{viewName:\"Search\"});else if(action===\"more\")await gmailHubListV734(void 0,{append:!0});else if(action===\"back\")$2(\"gmailHubEmptyV735\").hidden=!1,$2(\"gmailHubThreadContentV735\").hidden=!0,gmailHubV734.threadId=\"\";else if(action===\"triage\"){gmailHubStatusV734(\"Finding unverified action candidates in recent inbox messages\\u2026\");const result=await api(\"/api/admin/communications/triage?q=\"+encodeURIComponent(\"in:inbox -from:me\")+\"&max=50\",{cacheMs:0,timeoutMs:6e4});$2(\"gmailHubTriageV734\").innerHTML=(result.suggestions||[]).map(m=>'<button type=\"button\" class=\"orbit-gmail-message-v734\" data-gmail-thread-v734=\"'+esc(m.threadId)+'\"><span><strong>'+esc(m.category)+\" \\xB7 \"+esc(m.subject)+\"</strong><small>\"+esc(m.task)+\" \\xB7 \"+esc(m.confidence)+\" \\xB7 \"+esc(m.from)+\"</small></span><b>Review</b></button>\").join(\"\")||\"<p>No candidates found.</p>\",gmailHubStatusV734(\"These are heuristic suggestions, not verified tasks or debts. No mailbox changes made.\")}else if(action===\"ai-triage\"){if(!confirm(\"Use your configured AI model to review up to 15 recent inbox messages? This incurs a small AI API charge and creates only suggestions, no Gmail changes.\"))return;gmailHubStatusV734(\"AI is reviewing recent Gmail messages. No actions are being taken\\u2026\");const result=await api(\"/api/admin/communications/triage/ai\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:12e4});$2(\"gmailHubTriageV734\").innerHTML=(result.suggestions||[]).map(m=>'<button type=\"button\" class=\"orbit-gmail-message-v734\" data-gmail-thread-v734=\"'+esc(m.threadId)+'\"><span><strong>'+esc(m.priority.toUpperCase()+\" \\xB7 \"+m.subject)+\"</strong><small>\"+esc(m.kind+\" \\xB7 \"+m.suggestedAction)+'</small><span class=\"orbit-gmail-snippet-v735\">'+esc(m.reason)+\"</span></span><b>Review</b></button>\").join(\"\")||\"<p>No priorities identified in this small sample.</p>\",gmailHubStatusV734(\"AI analysed \"+result.analysed+\" recent messages using \"+result.model+\". These are suggestions, not confirmed obligations. Zero Gmail changes.\")}else if(action===\"labels\"){if(!confirm(\"Create eleven Orbit labels inside Gmail? Existing Gmail labels and messages stay unchanged.\"))return;const result=await api(\"/api/admin/communications/labels/setup\",{method:\"POST\",body:\"{}\"});gmailHubStatusV734(\"Gmail confirmed labels. \"+result.created.length+\" created; \"+result.existing+\" already existed.\"),await gmailHubLabelsV735()}else if(action===\"label\"){const label=$2(\"gmailHubLabelV734\")?.value;if(!gmailHubV734.threadId)throw Error(\"Choose a conversation first.\");if(!confirm(\"Apply \"+label+\" to this Gmail conversation?\"))return;await api(\"/api/admin/communications/labels/apply\",{method:\"POST\",body:JSON.stringify({id:gmailHubV734.threadId,label})}),gmailHubStatusV734(\"Gmail confirmed category label \"+label+\" was applied.\")}else if(action===\"mark-read\"||action===\"mark-unread\"){if(!gmailHubV734.threadId)throw Error(\"Choose an email first.\");const read=action===\"mark-read\";await api(\"/api/admin/communications/threads/read\",{method:\"POST\",body:JSON.stringify({threadId:gmailHubV734.threadId,read})}),$2(\"gmailHubReadSyncV735\").textContent=read?\"Confirmed read in Gmail\":\"Confirmed unread in Gmail\",await gmailHubListV734()}else if(action===\"draft\")await gmailHubDraftV734();else if(action===\"save\")await gmailHubSaveV734();else if(action===\"scan-start\"){if(!confirm(\"Index all folders, including Spam and Trash? This stores message metadata in Orbit OS; it will not change Gmail or send messages.\"))return;await api(\"/api/admin/communications/mailbox/scan/start\",{method:\"POST\",body:\"{}\"}),gmailHubRunScanV735()}else action===\"scan-pause\"?(gmailHubV734.scanCancel=!0,await api(\"/api/admin/communications/mailbox/scan/pause\",{method:\"POST\",body:\"{}\"}),await gmailHubScanStatusV735()):action===\"scan-resume\"&&(await api(\"/api/admin/communications/mailbox/scan/resume\",{method:\"POST\",body:\"{}\"}),gmailHubRunScanV735())}catch(error){gmailHubStatusV734(error.message||\"Gmail action failed.\",!0)}}});function activateModule(module,preferredTab,options={}){const previousModuleV618=state.currentModule;if(ensureDirectoryModuleV560(),ensureScannerModuleV6001(),module===\"content\"&&(module=\"golden-schedule\",preferredTab=\"golden-schedule\"),module===\"reports\"&&(module=\"finance\",preferredTab=\"\"),module===\"golden-schedule\"&&(module=\"automation\",preferredTab=\"golden-schedule\"),(module||\"dashboard\")!==\"vendors\"&&closeVendorEventToolV562(!0),state.currentModule=module||\"dashboard\",state.currentModule===\"directory\"&&[\"review_queue\",\"enriching\",\"approved\",\"past\",\"duplicate\",\"all\"].includes(String(preferredTab||\"\"))){orbitDirectoryFilterV560=String(preferredTab),orbitDirectoryPageV6001=1;try{localStorage.setItem(\"orbitDirectoryFilterV581\",orbitDirectoryFilterV560)}catch{}preferredTab=\"events\"}preferredTab=canonicalOrbitSubtab(state.currentModule,preferredTab||savedOrbitSubtab(state.currentModule)||\"\"),state.currentModule===\"events\"&&preferredTab===\"eventbrite-drafts\"||window.OrbitEventbriteDrafts?.deactivate(),state.currentModule===\"events\"&&rememberOrbitSubtab(\"events\",preferredTab||\"eventbrite\"),document.querySelectorAll(\"[data-ebd-nav]\").forEach(button2=>{const active=state.currentModule===\"events\"&&button2.dataset.ebdNav===(preferredTab||\"eventbrite\");button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")});const routeKey=primaryRouteForModuleV5991(state.currentModule,preferredTab,options.routeKey===\"gmail-hub\"?\"\":options.routeKey||\"\");setPerformanceWorkspaceSiteV628(routeKey),state.currentModule===\"directory\"&&setDirectoryPaneV6001(preferredTab||\"events\"),state.currentModule===\"scanner-admin\"&&loadScannerModuleV6001();try{localStorage.setItem(\"orbitAdminLastModule\",state.currentModule),localStorage.setItem(\"orbitAdminLastRouteV5991\",routeKey)}catch{}syncWorkspaceNavigation(state.currentModule,preferredTab,routeKey),updateAdminRouteLocationV5991(routeKey,state.currentModule,preferredTab,options.historyMode||\"replace\");const shell=document.querySelector(\".orbit-admin-shell\");shell&&(shell.dataset.currentModule=state.currentModule,shell.classList.toggle(\"orbit-admin-dashboard\",state.currentModule===\"dashboard\"));const contextNav=document.querySelector(\".orbit-v76-context-nav\");contextNav&&contextNav.classList.remove(\"orbit-context-nav-hidden\"),document.querySelectorAll(\"[data-module-nav]\").forEach(button2=>{let active=button2.dataset.moduleNav===state.currentModule;active&&button2.dataset.gmailTopViewV737&&(active=button2.dataset.gmailTopViewV737===([\"home\",\"mail\",\"cases\",\"tasks\",\"calendar\",\"accounts\"].includes(preferredTab)?preferredTab:\"home\")),active&&button2.dataset.commsOpen&&(active=button2.dataset.commsOpen===(preferredTab||state.currentCommsViewV540||\"inbox\")),active&&button2.dataset.engagementOpen&&(active=button2.dataset.engagementOpen===(preferredTab||state.currentEngagementPane||\"broadcasts\")),active&&button2.dataset.advertisingOpen&&(active=button2.dataset.advertisingOpen===(sessionStorage.getItem(\"orbitAdvertisingView\")||\"overview\")),active&&button2.dataset.drawOpen&&(active=button2.dataset.drawOpen===(preferredTab||state.currentDrawPane||\"current\")),active&&button2.dataset.prizeArea&&(active=button2.dataset.prizeArea===(state.currentPrizeArea||\"monthly\")),active&&button2.dataset.loyaltyOpen&&(active=button2.dataset.loyaltyOpen===(preferredTab||state.currentLoyaltyPane||\"live\")),active&&state.currentModule===\"events\"&&(active=button2.dataset.tab?button2.dataset.tab===(preferredTab||\"eventbrite\"):(preferredTab||\"eventbrite\")===\"eventbrite\"),active&&button2.dataset.ticketOpen&&(active=button2.dataset.ticketOpen===(preferredTab||state.currentTicketPane||\"tickets\")),active&&state.currentModule===\"vendors\"&&button2.dataset.vendorOpen&&(active=button2.dataset.vendorOpen===(preferredTab||state.currentVendorPane||\"customers\")),active&&state.currentModule===\"shipping\"&&button2.dataset.shippingTab&&(active=button2.dataset.shippingTab===(preferredTab||state.currentShippingPane||\"monthly\")),active&&state.currentModule===\"intelligence\"&&button2.dataset.intelligenceOpen&&(active=button2.dataset.intelligenceOpen===(preferredTab||sessionStorage.getItem(\"orbit-intelligence-tab\")||\"assistant\")),active&&state.currentModule===\"members\"&&button2.dataset.memberView&&(active=button2.dataset.memberView===(state.currentMemberView||\"active\")),active&&state.currentModule===\"directory\"&&button2.dataset.directoryTopFilterV570&&(active=button2.dataset.directoryTopFilterV570===orbitDirectoryFilterV560),active&&state.currentModule===\"influencer-engine\"&&button2.dataset.influencerOpen&&(active=button2.dataset.influencerOpen===(preferredTab||state.currentInfluencerPaneV824||\"home\")),active&&state.currentModule===\"member-store\"&&button2.dataset.memberStoreView&&(active=button2.dataset.memberStoreView===(preferredTab||state.currentMemberStorePaneV601||\"overview\")),button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")}),document.querySelectorAll(\".orbit-module\").forEach(section=>{section.classList.toggle(\"active\",section.dataset.module===state.currentModule)}),state.currentModule===\"gmail-hub\"&&commsSetViewV736([\"home\",\"mail\",\"cases\",\"tasks\",\"calendar\",\"accounts\"].includes(preferredTab)?preferredTab:\"home\"),state.currentModule===\"gmail-hub\"&&state.adminAuthenticated&&preferredTab===\"accounts\"&&loadGmailHubV734().catch(error=>gmailHubStatusV734(error.message,!0)),state.currentModule===\"dashboard\"&&(restoreHomeOverviewCards(),restoreHomeNotice(),bindBusinessWorkspaceV599(),state.adminAuthenticated&&(refreshOperationsWorkspaceV296().catch(()=>{}),loadSummary(null,!0).catch(error=>console.warn(\"Home summary refresh deferred\",error?.message||error)),refreshBusinessHomeV599(!0).catch(error=>console.warn(\"Workspace Home refresh deferred\",error?.message||error)),runHomeHealthChecksV554({announce:!1,forceFresh:!0}).catch(error=>console.warn(\"Home health checks deferred\",error?.message||error))));const sectionNames={dashboard:\"Dashboard\",members:\"Members\",events:\"Events\",shipping:\"Shipping\",\"box-inventory\":\"Box Accounting\",fulfilment:\"Shipping\",operations:\"Operations Inbox\",media:\"Media Library\",shopify:\"Tickets\",automation:\"Prizes\",loyalty:\"Loyalty\",\"member-store\":\"Store\",\"website-images\":\"Website Images\",content:\"Monthly Content Images\",\"golden-schedule\":\"Prize Schedules\",engagement:\"Broadcasts & Newsletters\",support:\"Messages\",comms:\"Email delivery & templates\",\"gmail-hub\":\"Personal Assistant\",testing:\"Testing\",settings:\"Settings\",storage:\"Storage & Cleanup\",intelligence:\"Orbit Intelligence\",development:\"Development Hub\",performance:\"Performance & Analytics\",\"ad-performance\":\"Ad Performance\",\"analytics-overview\":\"Overview\",\"analytics-sales\":\"Sales & Attribution\",\"analytics-google\":\"Google Analytics\",\"analytics-meta\":\"Meta Pixel\",activity:\"Business Activity\",reports:\"Event Attendance\",seo:\"SEO\",vendors:\"Vendors\",directory:\"Directory\",\"scanner-admin\":\"Scanner\",\"vendor-history\":\"Legacy Shopify History\",\"card-shopify\":\"Shopify\",finance:\"Finance\",\"influencer-engine\":\"Influencer Engine\"},sectionLabel=document.getElementById(\"orbitAdminSectionLabel\");sectionLabel&&(sectionLabel.textContent=sectionNames[state.currentModule]||\"Orbit OS\"),document.querySelectorAll(\"[data-subnav-group]\").forEach(group=>{group.classList.toggle(\"active\",group.dataset.subnavGroup===state.currentModule)}),document.querySelector(\".orbit-admin-app\")?.classList.remove(\"menu-open\"),document.getElementById(\"orbitAdminMenuToggle\")?.setAttribute(\"aria-expanded\",\"false\");const defaultTabs={fulfilment:\"fulfilled-archive\",shipping:\"fulfilment\",shopify:\"shopify\",events:\"eventbrite\",automation:\"current\",loyalty:null,\"website-images\":null,content:\"monthly-content\",support:\"support-inbox\",comms:\"communications\",settings:\"admin-settings\"};if(state.currentModule===\"influencer-engine\"){const pane=preferredTab||state.currentInfluencerPaneV824||\"home\";setInfluencerPaneV824(pane);loadInfluencerEngineV824().catch(err=>setNotice2(\"Influencer Engine unavailable: \"+(err.message||err),!0))}if(state.currentModule===\"automation\"){const drawPane=preferredTab||state.currentDrawPane||\"current\";state.currentDrawPane=drawPane,setDrawPane(drawPane)}if(state.currentModule===\"engagement\"){const engagementPane=preferredTab||state.currentEngagementPane||\"broadcasts\";state.currentEngagementPane=engagementPane,setEngagementPaneV73(engagementPane)}if(state.currentModule===\"shopify\"){const ticketPane=preferredTab||state.currentTicketPane||\"tickets\";setTicketPaneV305(ticketPane),ticketPane!==\"promo\"&&loadShopify().catch(err=>setNotice2(\"Tickets unavailable: \"+(err.message||err),!0))}const tab=[\"shopify\",\"comms\",\"shipping\"].includes(state.currentModule)?defaultTabs[state.currentModule]:preferredTab||defaultTabs[state.currentModule];if(state.currentModule===\"shipping\"&&setShippingPaneV540(preferredTab),state.currentModule===\"comms\"&&setCommsViewV462(preferredTab||\"inbox\"),tab&&(document.querySelectorAll(\"[data-tab]\").forEach(b=>b.classList.toggle(\"active\",b.dataset.tab===tab)),document.querySelectorAll(\".orbit-table-panel\").forEach(panel=>panel.classList.toggle(\"active\",panel.id===\"tab-\"+tab&&panel.dataset.module===state.currentModule))),!!state.adminAuthenticated){if([\"comms\",\"support\",\"engagement\"].includes(state.currentModule)&&refreshCommsBadgesV540().catch(()=>{}),state.currentModule===\"intelligence\"){const intelligencePaneV702=preferredTab||state.currentIntelligencePaneV618||\"overview\";[\"agents\",\"ondemand\"].includes(intelligencePaneV702)?loadAgentDirectoryV618().catch(()=>{}):intelligencePaneV702===\"incidents\"?loadOrbitIncidentsV702(!1).catch(err=>renderReferenceErrorV702(\"orbitIncidentListV702\",err)):intelligencePaneV702===\"protected-systems\"?loadProtectedSystemsV702(!1).catch(err=>renderReferenceErrorV702(\"orbitProtectedSystemListV702\",err)):intelligencePaneV702===\"knowledge\"?(loadOrbitIntelligence().catch(renderOrbitIntelligenceError),orbitKnowledgeViewV702===\"engineering-manual\"&&loadEngineeringManualV702(!1).catch(err=>renderReferenceErrorV702(\"orbitEngineeringManualArticleV702\",err))):(loadOrbitAiConfigurationV544(),loadOrbitIntelligenceCommandCentreV545().catch(renderIntelligenceCommandErrorV545),loadOrbitIntelligence().catch(renderOrbitIntelligenceError))}if(state.currentModule===\"development\"){const developmentTab=preferredTab||savedOrbitSubtab(\"development\")||\"home\";setDevelopmentTab(developmentTab),loadOrbitDevelopmentHub().catch(err=>setNotice2(\"Development Hub unavailable: \"+(err.message||err),!0)),resumePendingDeploymentPollV366()}if(state.currentModule===\"website-images\"&&loadWebsiteImagesV728().catch(err=>setNotice2(\"Website Images unavailable: \"+(err.message||err),!0)),state.currentModule===\"member-store\"&&(state.currentMemberStorePaneV601=preferredTab||state.currentMemberStorePaneV601||\"overview\",previousModuleV618===\"member-store\"&&$2(\"memberStoreAdminMountV601\")?.querySelector(\".orbit-member-store-admin-v601\")?memberStorePaneV601(state.currentMemberStorePaneV601):loadMemberStoreAdminV601(!0).catch(err=>setNotice2(\"Members tools unavailable: \"+(err.message||err),!0))),state.currentModule===\"storage\"&&loadStorageForensicsV353().catch(err=>setNotice2(\"Storage audit unavailable: \"+(err.message||err),!0)),state.currentModule===\"settings\"){loadAdminUsersV329().catch(err=>setNotice2(\"Admin users unavailable: \"+(err.message||err),!0));let saved=\"\";try{saved=localStorage.getItem(\"orbitAdminSettingsPane\")||\"\"}catch{}setSettingsPane(saved,{scroll:!1})}if(state.currentModule===\"box-inventory\"&&loadBoxAccountingV663(!0).catch(err=>setNotice2(\"Box Accounting unavailable: \"+(err.message||err),!0)),state.currentModule===\"shipping\"&&loadFulfilment(null,!0).catch(err=>{state.currentModule===\"shipping\"&&setNotice2(\"Fulfilment unavailable: \"+(err.message||err),!0)}),state.currentModule===\"directory\"&&loadDirectoryV560(!0,{keepPage:!0}).catch(()=>{}),state.currentModule===\"vendors\"){const vendorPane=preferredTab||savedOrbitSubtab(\"vendors\")||\"customers\";setVendorPaneV385(vendorPane),loadVendorWorkspaceV398(null,!1,!1,vendorPane,1).catch(err=>{state.currentModule===\"vendors\"&&setNotice2(\"Vendor data unavailable: \"+(err.message||err),!0)})}if(state.currentModule===\"card-shopify\"&&(setCardShowShopifyPaneV678(preferredTab||\"overview\"),loadCardShowShopifyPaneV678(preferredTab||\"overview\",!1).catch(err=>setNotice2(\"Shopify unavailable: \"+(err.message||err),!0))),state.currentModule===\"vendor-history\"&&(state.currentVendorPane=\"shopify\",loadVendorWorkspaceV398(null,!1,!1,\"shopify\",1).catch(err=>{state.currentModule===\"vendor-history\"&&setNotice2(\"Shopify history unavailable: \"+(err.message||err),!0)})),state.currentModule===\"finance\"&&loadFinanceWorkspaceV464(null,!1).catch(err=>{state.currentModule===\"finance\"&&setNotice2(\"Finance unavailable: \"+(err.message||err),!0)}),state.currentModule===\"performance\"&&(loadPerformanceOverview(null),loadAnalyticsOverviewV468(null).catch(err=>{state.currentModule===\"performance\"&&setNotice2(\"Website analytics unavailable: \"+(err.message||err),!0)}),loadPerformanceRankingsV496(null).catch(err=>{state.currentModule===\"performance\"&&setNotice2(\"Search rankings unavailable: \"+(err.message||err),!0)})),state.currentModule===\"ad-performance\"&&loadAdPerformanceV547(!1).catch(err=>{state.currentModule===\"ad-performance\"&&setNotice2(\"Ad Performance unavailable: \"+(err.message||err),!0)}),state.currentModule===\"reports\"&&openBusinessReport(\"attendance\",null),state.currentModule===\"analytics-overview\"&&loadAnalyticsOverviewV468(null).catch(err=>{state.currentModule===\"analytics-overview\"&&setNotice2(\"Analytics unavailable: \"+(err.message||err),!0)}),state.currentModule===\"analytics-sales\"&&loadAnalyticsCommercialV471(null).catch(err=>{state.currentModule===\"analytics-sales\"&&setNotice2(\"Sales analytics unavailable: \"+(err.message||err),!0)}),state.currentModule===\"advertising\"&&loadMetaAdsSettingsV449().then(()=>{const view=sessionStorage.getItem(\"orbitAdvertisingView\")||\"overview\";openAdvertisingViewV451(view)}).catch(err=>{state.currentModule===\"advertising\"&&setNotice2(\"Meta Advertising unavailable: \"+(err.message||err),!0)}),state.currentModule===\"seo\"&&Promise.allSettled([loadSeoKeyPagesV336(),loadSeoPagesV332()]).then(results=>{const rejected=results.find(x=>x.status===\"rejected\");rejected&&setNotice2(\"SEO unavailable: \"+(rejected.reason?.message||rejected.reason),!0)}),state.currentModule===\"activity\"&&loadBusinessActivity(null).catch(err=>setNotice2(\"Activity unavailable: \"+(err.message||err),!0)),state.currentModule===\"events\"){const eventsPane=preferredTab||savedOrbitSubtab(\"events\")||\"eventbrite\";eventsPane===\"eventbrite-drafts\"?window.OrbitEventbriteDrafts?Promise.resolve(window.OrbitEventbriteDrafts.activate({api,setNotice:setNotice2})).catch(err=>setNotice2(\"Eventbrite drafts unavailable: \"+(err.message||err),!0)):setNotice2(\"Eventbrite drafts could not load. Refresh this page to load the latest Admin assets.\",!0):eventsPane===\"calendar\"?loadEventPlanningV485().catch(err=>setNotice2(\"Event Calendar unavailable: \"+(err.message||err),!0)):eventsPane===\"attendance\"?loadAttendance().catch(err=>setNotice2(\"Attendance unavailable: \"+(err.message||err),!0)):loadEventbrite().catch(err=>setNotice2(\"Events unavailable: \"+(err.message||err),!0))}state.currentModule===\"operations\"&&refreshOperationsWorkspaceV296(null).catch(err=>setNotice2(\"Tasks unavailable: \"+(err.message||err),!0)),state.currentModule===\"content\"&&loadMonthlyContent(null),state.currentModule===\"golden-schedule\"&&loadPrizeSchedulesV536().catch(err=>setNotice2(\"Prize schedules unavailable: \"+(err.message||err),!0)),state.currentModule===\"members\"&&!state.memberInitialLoadStarted&&(state.memberInitialLoadStarted=!0,Promise.resolve().then(()=>loadMemberSummary()).catch(err=>{const target=$2(\"memberSummaryCards\");target&&(target.innerHTML=\"<div class='orbit-notice error'>Member summary unavailable: \"+esc(err.message||err)+\"</div>\")}),renderMemberSearchEmpty()),restoreOrbitSubtab(state.currentModule),shell&&!window.orbitRestoringAdminState&&shell.scrollTo({top:0,behavior:\"auto\"})}}let orbitTelemetryPreviewV71619=null,orbitTelemetryJobV71619=null,orbitTelemetryPollV71619=null;function telemetryStatusV71619(text2){const node=$2(\"orbitTelemetryResultV71619\");node&&(node.textContent=text2)}async function telemetryPollV71619(){if(!orbitTelemetryJobV71619)return;const data=await api(\"/api/admin/system/telemetry-reclamation/\"+encodeURIComponent(orbitTelemetryJobV71619),{cacheMs:0,timeoutMs:12e3}),j=data.job;if(!j){telemetryStatusV71619(\"Job not found. No further operation started.\");return}telemetryStatusV71619(\"Cleanup \"+j.status+\". Verified record deletions: Pok\\xE9 \"+Number(j.deleted?.poke_alert_observations||0).toLocaleString(\"en-GB\")+\", Meta \"+Number(j.deleted?.orbit_meta_ads_live_ad_overlay||0).toLocaleString(\"en-GB\")+\". \"+(j.lastErrorCode||\"Historical business and stock-event records remain protected.\")+\" This is not a measure of physical bytes freed.\");const ongoing=[\"queued\",\"running\",\"paused\"].includes(j.status),stop=$2(\"orbitTelemetryStopV71619\");stop&&(stop.disabled=!ongoing),orbitTelemetryPollV71619&&clearTimeout(orbitTelemetryPollV71619),[\"queued\",\"running\"].includes(j.status)&&(orbitTelemetryPollV71619=setTimeout(()=>telemetryPollV71619().catch(e=>telemetryStatusV71619(\"Status unavailable: \"+e.message)),6e4))}async function telemetryPreviewV71619(button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/system/obsolete-telemetry-cleanup/preview\",{cacheMs:0,timeoutMs:3e4}),p=data.preview;if(!p?.id||!p?.digest||p.mode!==\"dry-run\")throw Error(\"Verified preview missing. No deletion approved.\");orbitTelemetryPreviewV71619=p;const a=p.counts?.poke_alert_observations?.eligible||0,b=p.counts?.orbit_meta_ads_live_ad_overlay?.eligible||0,scanned=Number(p.counts?.poke_alert_observations?.scanned||0)+Number(p.counts?.orbit_meta_ads_live_ad_overlay?.scanned||0),progress=Number(p.counts?.poke_alert_observations?.scannedInRecentPreviews||0)+Number(p.counts?.orbit_meta_ads_live_ad_overlay?.scannedInRecentPreviews||0),more=!!(p.counts?.poke_alert_observations?.hasMore||p.counts?.orbit_meta_ads_live_ad_overlay?.hasMore);telemetryStatusV71619(\"Dry run only. Safe candidates in this bounded sample: Pok\\xE9 \"+a+\", Meta \"+b+\". Scanned \"+scanned.toLocaleString(\"en-GB\")+\" records this preview\"+(progress?\" (\"+progress.toLocaleString(\"en-GB\")+\" across recent previews)\":\"\")+\". \"+(!(a+b)&&more?\"No candidates in this sample. Press Preview again to continue the read-only indexed scan; this is NOT a complete database clearance. \":\"\")+\"The approved job may process up to 40,000 independently rechecked records. Protected business and stock evidence remains excluded.\");const start=$2(\"orbitTelemetryStartV71619\");start&&(start.disabled=!(a+b))}finally{setLoading(button2,!1)}}async function telemetryStartV71619(button2){const p=orbitTelemetryPreviewV71619;if(!p?.id||!p?.digest)return;const phrase=\"DELETE VERIFIED OBSOLETE TELEMETRY\";if(window.prompt(`Start a resumable cleanup of verified old, noncanonical telemetry only. This is destructive and cannot be undone. Original stock events, current Meta data, customers and protected evidence are excluded. Type exactly:\n`+phrase)===phrase){setLoading(button2,!0);try{orbitTelemetryJobV71619=(await api(\"/api/admin/system/telemetry-reclamation/start\",{method:\"POST\",body:JSON.stringify({previewId:p.id,digest:p.digest,confirm:phrase,maxRows:4e4}),timeoutMs:2e4,cacheMs:0})).job?.id,orbitTelemetryPreviewV71619=null,button2.disabled=!0,await telemetryPollV71619()}finally{setLoading(button2,!1)}}}async function telemetryStopV71619(button2){if(orbitTelemetryJobV71619){setLoading(button2,!0);try{await api(\"/api/admin/system/telemetry-reclamation/\"+encodeURIComponent(orbitTelemetryJobV71619)+\"/stop\",{method:\"POST\",body:\"{}\",cacheMs:0}),await telemetryPollV71619()}finally{setLoading(button2,!1)}}}let orbitEphemeralBuildPreviewV71604=null;async function loadEphemeralBuildPreviewV71604(){const node=$2(\"orbitEphemeralBuildPreviewV71604\"),button2=$2(\"orbitCleanEphemeralBuildsV71604\");try{const p=(await api(\"/api/admin/system/ephemeral-zip-build-cleanup/preview\",{cacheMs:0,timeoutMs:1e4})).preview||{};orbitEphemeralBuildPreviewV71604=p,node&&(node.innerHTML=\"<strong>Verified disposable candidates: \"+Number(p.eligibleCount||0).toLocaleString(\"en-GB\")+\" temporary build folder(s)</strong> \\xB7 \"+esc(formatStorageMbV353(Number(p.eligibleBytes||0)/1048576))+\". Canonical ZIPs, worker evidence, rollback and business data are excluded.\"),button2&&(button2.disabled=!Array.isArray(p.candidates)||!p.candidates.length)}catch(error){orbitEphemeralBuildPreviewV71604=null,button2&&(button2.disabled=!0),node&&(node.textContent=\"Temporary-build preview unavailable: \"+String(error.message||error))}}async function applyEphemeralBuildCleanupV71604(button2){await loadEphemeralBuildPreviewV71604();const p=orbitEphemeralBuildPreviewV71604;if(!p?.candidates?.length)return;const phrase=\"DELETE VERIFIED ABANDONED TEMP BUILDS\";if(window.prompt(\"Only the \"+p.candidates.length+` confirmed old temporary ZIP build folder(s) will be deleted. No history, evidence, source, rollback or verified ZIP will be removed.\n\nType exactly:\n`+phrase)!==phrase)return;const result=$2(\"orbitEphemeralBuildResultV71604\");result&&(result.hidden=!1,result.textContent=\"Rechecking fingerprints and deleting only still-eligible temporary build files\\u2026\"),setLoading(button2,!0);try{const data=await api(\"/api/admin/system/ephemeral-zip-build-cleanup/apply\",{method:\"POST\",body:JSON.stringify({confirm:phrase,expected:p.candidates.map(c=>({name:c.name,fingerprint:c.fingerprint}))}),timeoutMs:6e4,cacheMs:0});result&&(result.textContent=\"Removed \"+Number(data.removed?.length||0)+\" temporary folders \\xB7 \"+formatStorageMbV353(Number(data.freedBytes||0)/1048576)+\" of disposable workspaces. \"+Number(data.skipped?.length||0)+\" skipped safely.\"),await loadEphemeralBuildPreviewV71604()}finally{setLoading(button2,!1)}}function formatStorageMbV353(value){const n=Number(value||0);return(Math.round(n*100)/100).toLocaleString(\"en-GB\")+\" MB\"}let orbitStorageRetentionPreviewVerifiedV71605=!1,orbitStorageCollectionsV71605=[],orbitStorageNextOffsetV71605=0;const storageMetricV71605=value=>value==null?\"Not measured\":formatStorageMbV353(value),storageCountV71605=value=>value==null?\"Not measured\":Number(value).toLocaleString(\"en-GB\");let orbitObsoleteTelemetryPreviewV71613=null;function ensureObsoleteTelemetryPanelV71613(){const module=$2(\"orbitStorageForensicsModule\");if(!module||$2(\"orbitTelemetryPanelV71613\"))return;const panel=document.createElement(\"div\");panel.id=\"orbitTelemetryPanelV71613\",panel.className=\"orbit-panel\",panel.innerHTML='<h2>Obsolete telemetry \\u2014 guarded clean-up</h2><p>Only old unchanged Pok\\xE9 observations and old inactive zero-spend Meta rows. Event evidence, manual attribution, current data, member, booking and deployment records are protected. Never automatic.</p><div id=\"orbitTelemetryStatusV71613\" class=\"orbit-notice\">Run a bounded dry-run to see eligible records. No records are deleted by preview.</div><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" id=\"orbitTelemetryPreviewButtonV71613\">Preview eligible telemetry</button><button type=\"button\" class=\"danger\" id=\"orbitTelemetryApplyButtonV71613\" disabled>Delete verified candidates</button></div>',module.appendChild(panel),$2(\"orbitTelemetryPreviewButtonV71613\")?.addEventListener(\"click\",async e=>{const button2=e.currentTarget,status=$2(\"orbitTelemetryStatusV71613\"),apply=$2(\"orbitTelemetryApplyButtonV71613\");orbitObsoleteTelemetryPreviewV71613=null,apply&&(apply.disabled=!0),status&&(status.textContent=\"Checking at most 200 records per collection; no deletion\\u2026\"),setLoading(button2,!0);try{const result=await api(\"/api/admin/system/obsolete-telemetry-cleanup/preview\",{cacheMs:0,timeoutMs:18e3}),proof=result.preview||{},counts=proof.counts||{};if(!proof.id||!proof.digest||!proof.expiresAt)throw Error(\"Preview is incomplete. No deletion permitted.\");orbitObsoleteTelemetryPreviewV71613=proof;const poke=Number(counts.poke_alert_observations?.eligible||0),meta=Number(counts.orbit_meta_ads_live_ad_overlay?.eligible||0);status&&(status.textContent=`Dry run only \\xB7 ${poke} eligible old Pok\\xE9 observations \\xB7 ${meta} eligible old inactive Meta rows \\xB7 ${Number(counts.poke_alert_observations?.protectedReferences||0)} protected event references excluded. These are document counts, not storage or cost savings. Preview expires in ten minutes.`),apply&&(apply.disabled=poke+meta===0)}catch(error){status&&(status.textContent=\"Safe preview unavailable: \"+String(error.message||error)+\". Nothing deleted.\")}finally{setLoading(button2,!1)}}),$2(\"orbitTelemetryApplyButtonV71613\")?.addEventListener(\"click\",async e=>{const button2=e.currentTarget,status=$2(\"orbitTelemetryStatusV71613\"),proof=orbitObsoleteTelemetryPreviewV71613;if(!proof?.id||!proof?.digest)return;const phrase=\"DELETE VERIFIED OBSOLETE TELEMETRY\";if(window.prompt(`This removes ONLY the exact dry-run candidates, rechecking event references, unchanged state and published generations. Historical evidence cannot be recovered from this operation.\n\nType exactly:\n`+phrase)===phrase){setLoading(button2,!0),button2.disabled=!0;try{const result=await api(\"/api/admin/system/obsolete-telemetry-cleanup/apply\",{method:\"POST\",body:JSON.stringify({previewId:proof.id,digest:proof.digest,confirm:phrase}),cacheMs:0,timeoutMs:3e4});status&&(status.textContent=`Audited cleanup: ${Number(result.deleted?.poke_alert_observations||0)} obsolete observations and ${Number(result.deleted?.orbit_meta_ads_live_ad_overlay||0)} old zero-spend overlay rows removed; ${Number(result.held?.length||0)} group(s) held safely. Check MongoDB collection stats separately for actual allocated-byte savings.`),orbitObsoleteTelemetryPreviewV71613=null}catch(error){status&&(status.textContent=\"Cleanup held safely: \"+String(error.message||error)+\". Generate a new preview if required.\")}finally{setLoading(button2,!1)}}})}async function loadStorageForensicsV353(){ensureObsoleteTelemetryPanelV71613();const summary=$2(\"orbitStorageForensicsSummary\"),totals=$2(\"orbitStorageForensicsTotals\"),retention=$2(\"orbitStorageRetentionSummary\"),retentionCards=$2(\"orbitStorageRetentionCards\"),action=$2(\"applyStorageRetentionV354\");loadEphemeralBuildPreviewV71604().catch(()=>{}),summary&&(summary.textContent=\"Loading fast database summary (no historical collection scans)\\u2026\"),retention&&!orbitStorageRetentionPreviewVerifiedV71605&&(retention.textContent=\"Retention preview has not been calculated. Press Calculate retention preview to run an explicit dry run.\"),retentionCards&&!orbitStorageRetentionPreviewVerifiedV71605&&(retentionCards.innerHTML=\"\"),action&&!orbitStorageRetentionPreviewVerifiedV71605&&(action.disabled=!0);try{const audit=(await api(\"/api/admin/system/storage-forensics\",{cacheMs:0,timeoutMs:12e3})).audit||{},db=audit.database||{};summary&&(summary.textContent=db.statsAvailable?\"Fast MongoDB summary loaded. Run the optional bounded collection scan or retention preview only when needed.\":\"MongoDB summary unavailable: \"+String(db.error||\"Database stats could not be measured\")+\". No deletion is permitted without a verified preview.\"),totals&&(totals.innerHTML=[[\"Database allocated\",storageMetricV71605(db.totalMB)],[\"Document data\",storageMetricV71605(db.dataMB)],[\"Indexes\",storageMetricV71605(db.indexMB)],[\"Collections\",storageCountV71605(db.collections)]].map(x=>\"<article class='orbit-summary-card'><small>\"+esc(x[0])+\"</small><strong>\"+esc(x[1])+\"</strong></article>\").join(\"\"))}catch(error){summary&&(summary.textContent=\"Fast storage summary unavailable: \"+String(error.message||error)+\". ZIP temp preview works separately; no cleanup has run.\"),totals&&(totals.innerHTML=\"\")}}async function loadStorageRetentionPreviewV71605(button2){const result=$2(\"orbitStorageRetentionSummary\"),cards=$2(\"orbitStorageRetentionCards\"),apply=$2(\"applyStorageRetentionV354\");orbitStorageRetentionPreviewVerifiedV71605=!1,apply&&(apply.disabled=!0),result&&(result.textContent=\"Calculating retention dry-run (may involve historical records)\\u2026\"),setLoading(button2,!0);try{const preview=(await api(\"/api/admin/system/storage-retention-preview\",{cacheMs:0,timeoutMs:3e4})).preview||{},c=preview.candidates||{},policy=preview.policy||{};if(preview.mode!==\"dry-run\"||!preview.generatedAt||!preview.confirmPhrase)throw Error(\"Incomplete retention preview response.\");result&&(result.innerHTML=\"<strong>Dry run only; nothing deleted.</strong> Estimated eligible payload: \"+esc(storageMetricV71605(preview.reclaimable?.estimatedMB))+\". Historical note and deployment metadata must remain preserved.\"),cards&&(cards.innerHTML=[[\"Older completed notes\",c.completedNotes?.count],[\"Old evidence payload blobs\",c.evidence?.count],[\"Older deployment records\",c.deployments?.count],[\"Old release payloads\",c.deploymentFiles?.count],[\"Old theme snapshots\",c.themeSnapshots?.count]].map(x=>\"<article class='orbit-summary-card'><small>\"+esc(x[0])+\"</small><strong>\"+esc(storageCountV71605(x[1]))+\"</strong></article>\").join(\"\")),orbitStorageRetentionPreviewVerifiedV71605=!0,apply&&(apply.disabled=!1);const lastCleanupBox=$2(\"orbitStorageLastCleanupV529\"),lc=preview.lastCleanup;lastCleanupBox&&(lastCleanupBox.hidden=!lc,lc&&(lastCleanupBox.className=\"orbit-info-banner success\",lastCleanupBox.textContent=\"Last audited manual cleanup: \"+String(lc.completedAt||\"unknown date\")+\".\"))}catch(error){throw result&&(result.textContent=\"Preview unavailable: \"+String(error.message||error)+\". No cleanup authorised. Try later rather than waiting on an endless scan.\"),cards&&(cards.innerHTML=\"\"),error}finally{setLoading(button2,!1)}}async function loadStorageCollectionPageV71605(button2){const table2=$2(\"orbitStorageForensicsTable\"),status=$2(\"orbitStorageCollectionsStatusV71605\");if(orbitStorageNextOffsetV71605!=null){setLoading(button2,!0),status&&(status.textContent=\"Scanning up to six collections (bounded request)\\u2026\");try{const page=(await api(\"/api/admin/system/storage-forensics/collections?offset=\"+orbitStorageNextOffsetV71605,{cacheMs:0,timeoutMs:15e3})).page||{};if(!Array.isArray(page.rows)||page.offset!==orbitStorageNextOffsetV71605)throw Error(\"Collection scan page was incomplete.\");if(orbitStorageCollectionsV71605.push(...page.rows),orbitStorageNextOffsetV71605=page.nextOffset==null?null:page.nextOffset,table2){const rows=orbitStorageCollectionsV71605.map(row=>\"<tr><td><strong>\"+esc(row.name)+\"</strong>\"+(row.prunableByV354?\"<br><small>Engineering retention allowlist</small>\":row.engineering?\"<br><small>Engineering \\xB7 protected</small>\":\"<br><small>Business/system \\xB7 protected</small>\")+\"</td><td>\"+esc(storageCountV71605(row.count))+\"</td><td>\"+esc(storageMetricV71605(row.dataMB))+\"</td><td>\"+esc(storageMetricV71605(row.indexMB))+\"</td><td><strong>\"+esc(storageMetricV71605(row.totalMB))+\"</strong></td><td>\"+(row.statsAvailable?\"Measured\":\"Not available\")+\"</td></tr>\").join(\"\");table2.innerHTML=\"<table><thead><tr><th>Collection</th><th>Documents</th><th>Data</th><th>Indexes</th><th>Total</th><th>Audit</th></tr></thead><tbody>\"+rows+\"</tbody></table>\"}status&&(status.textContent=orbitStorageCollectionsV71605.length+\" of \"+Number(page.total||0)+\" collections checked. Alphabetical batches, not a database-wide size ranking.\"),button2&&(button2.disabled=orbitStorageNextOffsetV71605==null)}catch(error){throw status&&(status.textContent=\"Bounded scan unavailable: \"+String(error.message||error)+\". Already measured rows remain displayed.\"),error}finally{setLoading(button2,!1),button2&&orbitStorageNextOffsetV71605==null&&(button2.disabled=!0)}}}async function applyStorageRetentionV354(button2){if(!orbitStorageRetentionPreviewVerifiedV71605){setNotice2(\"Run a successful retention dry-run before cleanup.\",!0);return}const phrase=\"PRUNE OLD ENGINEERING HISTORY\",typed=window.prompt(`Orbit will remove only old screenshot/evidence blobs and old release payload/snapshot bytes. Development Notes, deployment history and business data stay.\n\nType exactly:\n`+phrase);if(typed===null)return;if(typed!==phrase){window.alert(\"Cleanup cancelled. Confirmation phrase did not match.\");return}const result=$2(\"orbitStorageRetentionResult\");result&&(result.hidden=!1,result.textContent=\"Running controlled cleanup\\u2026\"),setLoading(button2,!0);try{const data=await api(\"/api/admin/system/storage-retention-apply\",{method:\"POST\",body:JSON.stringify({confirm:phrase}),cacheMs:0,timeoutMs:6e4}),d=data.deleted||{};result&&(result.hidden=!1,result.classList.remove(\"error\"),result.textContent=\"Cleanup complete \\xB7 \"+Number(d.evidence||0)+\" old evidence blobs \\xB7 \"+Number(d.deploymentFiles||0)+\" release payload files \\xB7 \"+Number(d.themeSnapshots||0)+\" old theme snapshots removed. Development Notes and deployment history were retained. Audit \"+String(data.auditId||\"\")+\" recorded.\"),await loadStorageForensicsV353()}catch(error){throw result&&(result.hidden=!1,result.classList.add(\"error\"),result.textContent=\"Cleanup failed safely: \"+String(error.message||error)),error}finally{setLoading(button2,!1)}}function metaAdsMoneyV449(value,currency){const n=Number(value);if(!Number.isFinite(n))return\"\\u2014\";try{return new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency:currency||\"GBP\"}).format(n)}catch{return\"\\xA3\"+n.toFixed(2)}}function metaAdsNumberV449(value,decimals){const n=Number(value||0);return Number.isFinite(n)?n.toLocaleString(\"en-GB\",{minimumFractionDigits:decimals||0,maximumFractionDigits:decimals||0}):\"0\"}function metaAdsStatusPillV449(status){const s=String(status||\"UNKNOWN\");return\"<span class='orbit-status-pill \"+(s===\"ACTIVE\"?\"success\":\"waiting\")+\"'>\"+esc(s.replaceAll(\"_\",\" \"))+\"</span>\"}async function loadMetaAdsSettingsV449(){const s=(await api(\"/api/admin/meta-ads/settings\",{cacheMs:0})).settings||{};$2(\"metaAdsAccountIdV449\")&&($2(\"metaAdsAccountIdV449\").value=s.adAccountId||\"\"),$2(\"metaAdsEnabledV449\")&&($2(\"metaAdsEnabledV449\").checked=s.enabled===!0),$2(\"metaAdsTokenV449\")&&($2(\"metaAdsTokenV449\").value=\"\"),$2(\"metaAdsTokenHealthV449\")&&($2(\"metaAdsTokenHealthV449\").textContent=s.accessTokenConfigured?\"Dedicated token configured securely \\xB7 \"+esc(s.accessTokenSource||\"server-side\")+\" \\xB7 token value is never returned to Admin OS\":\"No dedicated Marketing API token saved.\");const target=$2(\"metaAdsConnectionStatusV449\");target&&(target.innerHTML=s.accessTokenConfigured?\"<strong>Configured</strong><span>Open Settings to run an explicit connection health check.</span>\":\"<strong>Not configured</strong><span>Add the Ad Account ID and dedicated ads_read token.</span>\")}async function loadMetaAdsHealthV449(){const target=$2(\"metaAdsConnectionStatusV449\"),diag=$2(\"metaAdsDiagnosticsV449\");target&&(target.textContent=\"Checking Meta connection\\u2026\");const data=await api(\"/api/admin/meta-ads/health\",{cacheMs:0,timeoutMs:25e3}),s=data.settings||{};return target&&(target.innerHTML=data.connected?\"<strong>Connected \\xB7 \"+esc(data.account?.name||data.account?.id||\"Meta Ad Account\")+\"</strong><span>Graph \"+esc(s.graphVersion||\"\")+\" \\xB7 \"+esc(data.account?.currency||\"\")+\" \\xB7 \"+esc(data.account?.timezone_name||\"\")+\"</span>\":\"<strong>\"+(data.status===\"not_configured\"?\"Not configured\":\"Connection error\")+\"</strong><span>\"+esc(data.error?.message||\"Add the Ad Account ID and dedicated ads_read token, then save.\")+\"</span>\"),diag&&(diag.textContent=data.connected?\"Connected safely to \"+String(data.account?.id||\"\")+\" \\xB7 account status \"+String(data.account?.account_status||\"unknown\")+\" \\xB7 write operations disabled.\":data.error?.message||\"No Marketing API call made until enabled and credentials are present.\"),data}async function saveMetaAdsSettingsV449(clearToken){const body={adAccountId:$2(\"metaAdsAccountIdV449\")?.value||\"\",enabled:!!$2(\"metaAdsEnabledV449\")?.checked};clearToken===!0?body.clearAccessToken=!0:$2(\"metaAdsTokenV449\")?.value&&(body.accessToken=$2(\"metaAdsTokenV449\").value),await api(\"/api/admin/meta-ads/settings\",{method:\"PUT\",body:JSON.stringify(body),cacheMs:0}),$2(\"metaAdsTokenV449\")&&($2(\"metaAdsTokenV449\").value=\"\"),await loadMetaAdsSettingsV449(),setNotice2(clearToken?\"Meta Ads read-only token cleared.\":\"Meta Ads read-only settings saved and connection checked.\")}let metaAdsHistoryV450=null;function metaAdsEventDateLabelV452(event){if(!event)return\"\";const start=String(event.date||\"\"),end=String(event.endDate||event.date||\"\");if(!start)return\"\";try{const a=new Date(start+\"T12:00:00Z\"),b=new Date(end+\"T12:00:00Z\");return start===end?new Intl.DateTimeFormat(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\",timeZone:\"UTC\"}).format(a):a.getUTCMonth()===b.getUTCMonth()&&a.getUTCFullYear()===b.getUTCFullYear()?a.getUTCDate()+\"\\u2013\"+b.getUTCDate()+\" \"+new Intl.DateTimeFormat(\"en-GB\",{month:\"short\",year:\"numeric\",timeZone:\"UTC\"}).format(b):new Intl.DateTimeFormat(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\",timeZone:\"UTC\"}).format(a)+\" \\u2013 \"+new Intl.DateTimeFormat(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\",timeZone:\"UTC\"}).format(b)}catch{return start===end?start:start+\" \\u2013 \"+end}}function metaAdsEventOptionV450(event){if(!event)return\"\";const date=metaAdsEventDateLabelV452(event),venue=String(event.venue||\"\").trim(),name=String(event.name||\"\").trim(),cleaned=name.replace(/\\s*[-\u2013\u2014]\\s*Reserve a Table\\s*[-\u2013\u2014].*$/i,\"\").replace(/\\s*[-\u2013\u2014]\\s*Tickets?.*$/i,\"\").trim(),label=venue||cleaned||name||event.eventId;return esc(date+\" \\xB7 \"+label)}function metaAdsReviewGroupsV452(rows){const map=new Map;for(const row of rows||[]){if(![\"review\",\"unmatched\"].includes(row.attribution?.status))continue;const key=String(row.ad_id||[row.campaign_id,row.adset_id,row.ad_name].join(\"|\"));let g=map.get(key);g||(g={key,adId:row.ad_id||\"\",campaignName:row.campaign_name||\"\",adsetName:row.adset_name||\"\",adName:row.ad_name||row.campaign_name||\"Meta advert\",rows:[],spend:0,firstDate:\"\",lastDate:\"\",suggestions:new Map,evidence:new Set},map.set(key,g)),g.rows.push(row),g.spend+=Number(row.metrics?.spend||0);const d=String(row.date_start||\"\");(!g.firstDate||d<g.firstDate)&&(g.firstDate=d),(!g.lastDate||d>g.lastDate)&&(g.lastDate=d);const a=row.attribution||{};if(a.suggestedEvent?.eventId){const old=g.suggestions.get(a.suggestedEvent.eventId)||{event:a.suggestedEvent,weight:0,confidence:0};old.weight+=Math.max(.01,Number(row.metrics?.spend||0)),old.confidence=Math.max(old.confidence,Number(a.confidence||0)),g.suggestions.set(a.suggestedEvent.eventId,old)}for(const e of a.evidence||[])g.evidence.add(e)}return[...map.values()].map(g=>{const ranked=[...g.suggestions.values()].sort((a,b)=>b.weight-a.weight||b.confidence-a.confidence);return g.suggested=ranked[0]||null,g.confidence=g.suggested?.confidence||0,g}).sort((a,b)=>b.spend-a.spend||a.firstDate.localeCompare(b.firstDate))}function renderMetaAdsEventDetailV452(eventId){const target=$2(\"metaAdsEventCostDetailV452\"),data=metaAdsHistoryV450;if(!target||!data)return;const event=(data.eventCatalog||[]).find(e=>e.eventId===eventId)||(data.events||[]).map(x=>x.event).find(e=>e?.eventId===eventId),rows=(data.rows||[]).filter(r=>[\"auto_matched\",\"manual\"].includes(r.attribution?.status)&&r.attribution?.suggestedEvent?.eventId===eventId),currency=data.account?.currency||\"GBP\",spend=rows.reduce((n,r)=>n+Number(r.metrics?.spend||0),0);target.hidden=!1,target.innerHTML=\"<div class='orbit-meta-event-detail-head-v452'><div><p class='orbit-kicker'>Matched advertising detail</p><h3>\"+esc(event?.name||\"Orbit event\")+\"</h3><p>\"+esc(metaAdsEventDateLabelV452(event))+\" \\xB7 \"+esc(event?.venue||\"\")+\"</p></div><div class='orbit-meta-detail-total-v452'><small>Attributed Meta spend</small><strong>\"+esc(metaAdsMoneyV449(spend,currency))+\"</strong><span>\"+rows.length+\" daily ad row\"+(rows.length===1?\"\":\"s\")+\"</span></div></div><div class='orbit-table-wrap'><table><thead><tr><th>Advert</th><th>Campaign / ad set</th><th>Date</th><th>Spend</th><th>Match</th><th></th></tr></thead><tbody>\"+rows.map((r,i)=>\"<tr><td><strong>\"+esc(r.ad_name||\"Meta advert\")+\"</strong><small>\"+esc(String(r.creative_text||\"\").slice(0,180))+\"</small></td><td>\"+esc(r.campaign_name||\"\")+\"<small>\"+esc(r.adset_name||\"\")+\"</small></td><td>\"+esc(r.date_start||\"\")+\"</td><td>\"+esc(metaAdsMoneyV449(r.metrics?.spend,currency))+\"</td><td><strong>\"+esc(r.attribution?.status===\"manual\"?\"Manual\":\"Auto\")+\" \\xB7 \"+esc(String(r.attribution?.confidence||0))+\"%</strong><small>\"+esc((r.attribution?.evidence||[]).slice(0,2).join(\" \\xB7 \"))+\"</small></td><td><button type='button' class='secondary metaAdsReassignV452' data-row='\"+i+\"'>Reassign</button></td></tr>\").join(\"\")+\"</tbody></table></div>\",target.scrollIntoView({behavior:\"smooth\",block:\"nearest\"}),target.querySelectorAll(\".metaAdsReassignV452\").forEach(btn=>btn.addEventListener(\"click\",async()=>{const row=rows[Number(btn.dataset.row)],events=data.eventCatalog||[],choice=window.prompt(`Enter the exact Orbit event name/date to reassign this advert, or leave blank to send it back to reconciliation.\n\n`+events.slice(0,40).map((e,n)=>n+1+\". \"+metaAdsEventDateLabelV452(e)+\" \\xB7 \"+(e.name||e.venue)).join(`\n`));if(choice===null)return;const q=String(choice||\"\").trim().toLowerCase();let selected=null;if(q&&(selected=events.find(e=>(metaAdsEventDateLabelV452(e)+\" \"+(e.name||\"\")+\" \"+(e.venue||\"\")).toLowerCase().includes(q)),!selected)){setNotice2(\"No matching Orbit event found for that text.\",!0);return}setLoading(btn,!0);try{await api(\"/api/admin/meta-ads/attribution\",{method:\"PUT\",body:JSON.stringify({adId:row.ad_id,dateStart:row.date_start,eventId:selected?.eventId||\"\",status:selected?\"manual\":\"unmatched\",scope:\"ad\"}),cacheMs:0}),await loadPersistedMetaAdsHistoryV451(),selected&&renderMetaAdsEventDetailV452(selected.eventId),setNotice2(selected?\"Advert family reassigned to \"+selected.name+\".\":\"Advert returned to reconciliation.\")}finally{setLoading(btn,!1)}}))}function renderMetaAdsHistoryV450(data){metaAdsHistoryV450=data;const summary=$2(\"metaAdsHistorySummaryV450\"),ledger=$2(\"metaAdsEventLedgerV450\"),queue=$2(\"metaAdsReviewQueueV450\"),diag=$2(\"metaAdsHistoryDiagnosticsV450\"),currency=data.account?.currency||\"GBP\",t=data.summary||{};summary&&(summary.innerHTML=[[\"Stored Meta spend\",metaAdsMoneyV449(t.totalSpend,currency)],[\"Attributed\",metaAdsMoneyV449(t.matchedSpend,currency)],[\"Needs review\",metaAdsMoneyV449(t.reviewSpend,currency)],[\"Unmatched\",metaAdsMoneyV449(t.unmatchedSpend,currency)],[\"Daily rows\",metaAdsNumberV449(t.rowCount)],[\"Coverage\",esc((data.period?.since||\"\\u2014\")+\" \\u2192 \"+(data.period?.until||\"\\u2014\"))]].map(x=>\"<article class='orbit-meta-kpi-v452'><small>\"+esc(x[0])+\"</small><strong>\"+x[1]+\"</strong></article>\").join(\"\"));const eventRows=(data.events||[]).filter(x=>Number(x.auto_matched||x.auto||0)+Number(x.manual||0)>0).map(x=>\"<tr class='orbit-meta-event-row-v452' data-event-id='\"+esc(x.event?.eventId||\"\")+\"' tabindex='0'><td><strong>\"+esc(x.event?.name||\"Event\")+\"</strong><small>\"+esc(metaAdsEventDateLabelV452(x.event)+\" \\xB7 \"+(x.event?.venue||\"\"))+\"</small></td><td><strong>\"+esc(metaAdsMoneyV449(Number(x.auto_matched||x.auto||0)+Number(x.manual||0),currency))+\"</strong></td><td>\"+esc(metaAdsMoneyV449(x.auto_matched||x.auto||0,currency))+\"</td><td>\"+esc(metaAdsMoneyV449(x.manual||0,currency))+\"</td><td><span class='orbit-meta-view-link-v452'>View matched ads \\u2192</span></td></tr>\").join(\"\");ledger&&(ledger.innerHTML=eventRows?\"<table><thead><tr><th>Canonical Vendor event</th><th>Attributed</th><th>Auto</th><th>Manual</th><th></th></tr></thead><tbody>\"+eventRows+\"</tbody></table>\":\"<div class='orbit-empty'>No confirmed event matches yet.</div>\",ledger.querySelectorAll(\"[data-event-id]\").forEach(row=>{const open=()=>renderMetaAdsEventDetailV452(row.dataset.eventId);row.addEventListener(\"click\",open),row.addEventListener(\"keydown\",e=>{(e.key===\"Enter\"||e.key===\" \")&&(e.preventDefault(),open())})}));const allEvents=(data.eventCatalog||[]).filter(Boolean),options=[...allEvents].sort((a,b)=>String(b.date).localeCompare(String(a.date))),groups=metaAdsReviewGroupsV452(data.rows||[]),reviewRows=groups.map((g,i)=>{const suggested=g.suggested?.event;return\"<tr><td><strong>\"+esc(g.adName)+\"</strong><small>\"+esc(g.campaignName)+(g.adsetName?\" \\xB7 \"+esc(g.adsetName):\"\")+\"</small><small>\"+esc(g.firstDate+(g.lastDate&&g.lastDate!==g.firstDate?\" \\u2192 \"+g.lastDate:\"\"))+\" \\xB7 \"+g.rows.length+\" daily row\"+(g.rows.length===1?\"\":\"s\")+\"</small></td><td><strong>\"+esc(metaAdsMoneyV449(g.spend,currency))+\"</strong></td><td><strong>\"+esc(String(g.confidence||0))+\"%</strong><small>\"+esc([...g.evidence].slice(0,4).join(\" \\xB7 \")||\"No reliable event evidence\")+\"</small></td><td><select class='metaAdsEventChoiceV450' data-row='\"+i+\"'><option value=''>Leave unmatched</option>\"+options.map(e=>\"<option value='\"+esc(e.eventId)+\"' \"+(suggested?.eventId===e.eventId?\"selected\":\"\")+\">\"+metaAdsEventOptionV450(e)+\"</option>\").join(\"\")+\"</select><button type='button' class='secondary metaAdsConfirmMatchV450' data-row='\"+i+\"'>Confirm advert</button></td></tr>\"}).join(\"\");queue&&(queue.innerHTML=\"<div class='orbit-meta-recon-toolbar-v454'><label>Search unresolved adverts<input id='metaAdsReconSearchV454' type='search' value='\"+esc(data.query||\"\")+\"' placeholder='Advert, campaign, ad set, copy\\u2026'></label><button type='button' class='secondary' id='metaAdsReconSearchButtonV454'>Search</button></div><div class='orbit-meta-review-summary-v452'><div><small>Exception queue</small><strong>\"+groups.length+\" advert\"+(groups.length===1?\"\":\"s\")+\" need attention</strong></div><div><small>Unresolved spend</small><strong>\"+esc(metaAdsMoneyV449(Number(t.reviewSpend||0)+Number(t.unmatchedSpend||0),currency))+\"</strong></div></div>\"+(reviewRows?\"<table><thead><tr><th>Advert family</th><th>Unresolved spend</th><th>Best evidence</th><th>Orbit event</th></tr></thead><tbody>\"+reviewRows+\"</tbody></table>\":\"<div class='orbit-empty-state'><strong>All advertising spend reconciled</strong><span>No advert families currently require an operator decision.</span></div>\"),queue.querySelectorAll(\".metaAdsConfirmMatchV450\").forEach(btn=>btn.addEventListener(\"click\",async()=>{const idx=Number(btn.dataset.row),group=groups[idx],sel=queue.querySelector(\".metaAdsEventChoiceV450[data-row='\"+idx+\"']\"),eventId=sel?.value||\"\";btn.disabled=!0;try{await api(\"/api/admin/meta-ads/attribution\",{method:\"PUT\",body:JSON.stringify({adId:group.adId,dateStart:group.firstDate,eventId,status:eventId?\"manual\":\"unmatched\",scope:\"ad\"}),cacheMs:0}),await loadPersistedMetaAdsHistoryV451(),setNotice2(eventId?\"Entire advert family matched to the selected Vendor event.\":\"Advert family left unmatched.\")}catch(err){btn.disabled=!1,setNotice2(err.message||err,!0)}}))),diag&&(diag.textContent=\"Stored \"+metaAdsNumberV449(t.rowCount)+\" daily ad-spend rows \\xB7 \"+metaAdsNumberV449(t.matchedRows)+\" matched \\xB7 \"+metaAdsNumberV449(t.reviewRows)+\" review \\xB7 \"+metaAdsNumberV449(t.unmatchedRows)+\" unmatched \\xB7 canonical event source: Vendors Live/Past\")}function renderMetaAdsOverviewFromHistoryV45102(data){const summary=$2(\"metaAdsSummaryV449\");if(!summary)return;const t=data?.summary||{},currency=data?.account?.currency||\"GBP\",currentSpend=Number(t.currentSpend!=null?t.currentSpend:t.totalSpend||0),currentMatched=Number(t.currentMatchedSpend!=null?t.currentMatchedSpend:t.matchedSpend||0);if(!Number(t.rowCount||0)&&!Number(t.liveRows||0)){summary.innerHTML=\"<div class='orbit-empty-state'><strong>No saved advertising history yet</strong><span>Use Import & Sync once to build the persistent advertising database. Refreshing this page will never call Meta automatically.</span></div>\";return}const unresolved=Number(t.currentReviewSpend!=null?t.currentReviewSpend:t.reviewSpend||0)+Number(t.currentUnmatchedSpend!=null?t.currentUnmatchedSpend:t.unmatchedSpend||0),matchedPct=currentSpend>0?Math.round(currentMatched/currentSpend*100):0,liveDelta=Number(t.liveDeltaSpend||0),pausedProvider=Number(data?.providerRefresh?.pausedOrOffCampaignsWithSpend||0),pausedSpend=Number(data?.providerRefresh?.pausedOrOffCampaignSpend||0);summary.innerHTML=[[\"Current Meta spend\",metaAdsMoneyV449(currentSpend,currency),liveDelta>0?metaAdsMoneyV449(t.totalSpend,currency)+\" stored + \"+metaAdsMoneyV449(liveDelta,currency)+\" safe live delta\":\"Matches stored ledger\"],[\"Attributed to events\",metaAdsMoneyV449(currentMatched,currency),matchedPct+\"% reconciled\"],[\"Needs operator review\",metaAdsMoneyV449(unresolved,currency),metaAdsNumberV449(Number(t.reviewRows||0)+Number(t.unmatchedRows||0))+\" stored daily rows\"],[\"Stored ad-day records\",metaAdsNumberV449(t.rowCount),\"Ledger latest \"+(data.lastImportedDate||\"\\u2014\")]].map(x=>\"<article class='orbit-meta-overview-card-v452'><small>\"+esc(x[0])+\"</small><strong>\"+esc(x[1])+\"</strong><span>\"+esc(x[2])+\"</span></article>\").join(\"\")+(pausedProvider?\"<p class='orbit-muted'><strong>Paused/off campaigns are included.</strong> The latest Meta provider window contains \"+esc(metaAdsMoneyV449(pausedSpend,currency))+\" spend from \"+pausedProvider+\" campaign\"+(pausedProvider===1?\"\":\"s\")+\" that are not currently delivering. Pausing a campaign never removes spend already incurred.</p>\":\"\")}async function loadPersistedMetaAdsHistoryV451(){const data=await api(\"/api/admin/meta-ads/history\",{cacheMs:0,timeoutMs:25e3});renderMetaAdsHistoryV450(data),renderMetaAdsOverviewFromHistoryV45102(data);const feedback=$2(\"metaAdsHistoryButtonFeedbackV450\"),button2=$2(\"metaAdsLoadHistoryV450\"),since=$2(\"metaAdsHistorySinceV450\");if(data.lastImportedDate&&since){const d=new Date(data.lastImportedDate+\"T12:00:00Z\");d.setUTCDate(d.getUTCDate()-7),since.value=d.toISOString().slice(0,10)}return button2&&(button2.textContent=data.summary?.rowCount?\"Sync new / changed Meta data\":\"Import & match history\"),feedback&&data.summary?.rowCount&&(feedback.innerHTML=\"<strong>Advertising database ready</strong><span>\"+metaAdsNumberV449(data.summary.rowCount)+\" persisted daily ad rows \\xB7 next sync automatically overlaps the latest 7 days so late Meta attribution updates are safely refreshed without rebuilding history.</span>\"),data}let metaAdsSummaryV453=null,metaAdsReconciliationV453=null,metaAdsCostsV453=null,metaAdsSummaryRetryTimerV601=null;function renderMetaAdsSummaryErrorV601(error){const feedback=$2(\"metaAdsHistoryButtonFeedbackV450\"),summary=$2(\"metaAdsHistorySummaryV450\");feedback&&(feedback.classList.add(\"orbit-meta-summary-local-v619\"),feedback.setAttribute(\"role\",\"alert\"),feedback.innerHTML=\"<strong>Saved advertising summary unavailable</strong><span>\"+esc(error?.message||String(error||\"Please retry.\"))+\"</span><button type='button' class='secondary' data-meta-summary-retry-v601>Retry summary</button>\"),summary&&!metaAdsSummaryV453&&(summary.innerHTML=\"<div class='orbit-empty-state'><strong>Advertising summary could not be read</strong><span>The rest of Orbit Admin remains available. Retry this saved report without calling Meta.</span></div>\"),feedback?.querySelector(\"[data-meta-summary-retry-v601]\")?.addEventListener(\"click\",()=>loadMetaAdsSummaryV453({force:!0}).catch(renderMetaAdsSummaryErrorV601))}function scheduleMetaAdsSummaryRetryV601(){metaAdsSummaryRetryTimerV601&&clearTimeout(metaAdsSummaryRetryTimerV601),metaAdsSummaryRetryTimerV601=setTimeout(()=>{metaAdsSummaryRetryTimerV601=null,state.adminAuthenticated&&state.currentModule===\"advertising\"&&loadMetaAdsSummaryV453({force:!0}).catch(renderMetaAdsSummaryErrorV601)},3e4)}function renderMetaAdsSummaryV453(data){metaAdsSummaryV453=data,renderMetaAdsOverviewFromHistoryV45102(data);const summary=$2(\"metaAdsHistorySummaryV450\"),feedback=$2(\"metaAdsHistoryButtonFeedbackV450\"),button2=$2(\"metaAdsLoadHistoryV450\"),since=$2(\"metaAdsHistorySinceV450\"),t=data.summary||{},currency=data.account?.currency||\"GBP\",currentSpend=Number(t.currentSpend!=null?t.currentSpend:t.totalSpend||0),currentMatched=Number(t.currentMatchedSpend!=null?t.currentMatchedSpend:t.matchedSpend||0),currentReview=Number(t.currentReviewSpend!=null?t.currentReviewSpend:t.reviewSpend||0),currentUnmatched=Number(t.currentUnmatchedSpend!=null?t.currentUnmatchedSpend:t.unmatchedSpend||0);if(summary&&(summary.innerHTML=[[\"Current Meta spend\",metaAdsMoneyV449(currentSpend,currency)],[\"Stored historical ledger\",metaAdsMoneyV449(t.totalSpend,currency)],[\"Safe live delta\",metaAdsMoneyV449(t.liveDeltaSpend||0,currency)],[\"Attributed\",metaAdsMoneyV449(currentMatched,currency)],[\"Needs review\",metaAdsMoneyV449(currentReview,currency)],[\"Unmatched\",metaAdsMoneyV449(currentUnmatched,currency)],[\"Daily rows\",metaAdsNumberV449(t.rowCount)],[\"Ledger coverage\",esc((data.period?.since||\"\\u2014\")+\" \\u2192 \"+(data.period?.until||\"\\u2014\"))]].map(x=>\"<article class='orbit-meta-kpi-v452'><small>\"+esc(x[0])+\"</small><strong>\"+x[1]+\"</strong></article>\").join(\"\")),data.lastImportedDate&&since){const d=new Date(data.lastImportedDate+\"T12:00:00Z\");d.setUTCDate(d.getUTCDate()-7),since.value=d.toISOString().slice(0,10)}const paused=data.syncState?.status===\"paused\"||data.syncState?.status===\"failed\";button2&&(button2.textContent=paused?\"Resume interrupted Meta sync\":Number(t.rowCount||0)?\"Sync new / changed Meta data\":\"Import & match history\"),paused&&($2(\"metaAdsHistorySinceV450\")&&data.syncState?.requested_since&&($2(\"metaAdsHistorySinceV450\").value=data.syncState.requested_since),$2(\"metaAdsHistoryUntilV450\")&&data.syncState?.requested_until&&($2(\"metaAdsHistoryUntilV450\").value=data.syncState.requested_until)),feedback&&!savedMetaHistoryJobV538()&&(feedback.classList.add(\"orbit-meta-summary-local-v619\"),feedback.setAttribute(\"role\",\"status\"),data.accountingStatus===\"saved\"||data.accountingStatus===\"unavailable\"?(feedback.innerHTML=\"<strong>Showing the last complete saved advertising summary</strong><span>\"+esc(data.warning||\"Meta accounting is updating. Orbit has kept the previous complete summary instead of showing a partial amount.\")+\"</span><button type='button' class='secondary' data-meta-summary-retry-v601>Retry saved report</button>\",feedback.querySelector(\"[data-meta-summary-retry-v601]\")?.addEventListener(\"click\",()=>loadMetaAdsSummaryV453({force:!0}).catch(renderMetaAdsSummaryErrorV601)),scheduleMetaAdsSummaryRetryV601()):(metaAdsSummaryRetryTimerV601&&(clearTimeout(metaAdsSummaryRetryTimerV601),metaAdsSummaryRetryTimerV601=null),feedback.innerHTML=paused?\"<strong>Previous sync safely checkpointed</strong><span>Resume from \"+esc(data.syncState?.last_completed_until||data.syncState?.failed_chunk||\"the last completed period\")+\". Completed periods will not be downloaded again.</span>\":Number(t.rowCount||0)?\"<strong>Advertising database ready</strong><span>\"+metaAdsNumberV449(t.rowCount)+\" persisted daily ad rows. Current spend also includes the existing provider-capped live delta when fresh, so a lagging daily ledger no longer makes the headline total look stale. Historical imports are explicit. The existing background refresh also updates the safe live delta.</span>\":\"<strong>Ready to import</strong><span>Press the button to build the persistent advertising database.</span>\"));const diag=$2(\"metaAdsHistoryDiagnosticsV450\");diag&&(diag.textContent=(data.accountingStatus===\"saved\"?\"Saved complete summary\":\"Fast persisted summary\")+\" \\xB7 \"+Number(data.diagnostics?.elapsedMs||0)+\"ms server time \\xB7 0 historical rows sent to browser.\")}async function loadMetaAdsSummaryV453(options={}){const data=await api(\"/api/admin/meta-ads/history?view=summary\",{cacheMs:options.force?0:1e4,timeoutMs:1e4});return renderMetaAdsSummaryV453(data),data}function openMetaAdvertPreviewV459(group){const text2=metaAdsPreviewTextV453(group),dialog=document.createElement(\"dialog\");dialog.className=\"orbit-dialog orbit-meta-copy-dialog-v459\",dialog.innerHTML=\"<div class='orbit-dialog-card'><div class='orbit-panel-header'><div><p class='orbit-kicker'>Meta advert evidence</p><h3>Advert copy</h3></div><button type='button' class='secondary' data-close-meta-copy>Close</button></div><pre class='orbit-meta-copy-full-v459'>\"+esc(text2)+\"</pre></div>\",document.body.appendChild(dialog);const close=()=>{try{dialog.close()}catch{}dialog.remove()};dialog.querySelector(\"[data-close-meta-copy]\")?.addEventListener(\"click\",close),dialog.addEventListener(\"cancel\",e=>{e.preventDefault(),close()}),dialog.addEventListener(\"click\",e=>{e.target===dialog&&close()}),dialog.showModal()}function metaAdsPreviewTextV453(group){return[[\"Advert title\",group.adName],[\"Campaign\",group.campaignName],[\"Ad set\",group.adsetName],[\"Headline\",group.headline],[\"Description\",group.description],[\"Primary / creative copy\",group.creativeText],[\"Related ad-set evidence\",group.familyEvidenceText],[\"Destination URL\",group.destinationUrl]].filter(x=>String(x[1]||\"\").trim()).map(x=>\"=== \"+x[0]+` ===\n`+x[1]).join(`\n\n`)||\"Meta has not returned additional copy for this advert yet. Run Sync new / changed Meta data once to enrich the saved advert evidence.\"}function renderMetaAdsReconciliationV453(data){metaAdsReconciliationV453=data;const queue=$2(\"metaAdsReviewQueueV450\");if(!queue)return;const currency=\"GBP\",events=data.eventCatalog||[],groups=data.groups||[],rows=groups.map((g,i)=>{const suggested=g.suggestedEvent||null,preview=metaAdsPreviewTextV453(g),opts=[...events].sort((a,b)=>String(b.date||\"\").localeCompare(String(a.date||\"\"))).map(e=>\"<option value='\"+esc(e.eventId)+\"' \"+(suggested?.eventId===e.eventId?\"selected\":\"\")+\">\"+metaAdsEventOptionV450(e)+\"</option>\").join(\"\");return\"<tr><td><strong title='\"+esc(preview.slice(0,900))+\"'>\"+esc(g.adName||g.campaignName||\"Meta advert\")+\"</strong><small>\"+esc(g.campaignName||\"\")+(g.adsetName?\" \\xB7 \"+esc(g.adsetName):\"\")+\"</small><small>\"+esc((g.firstDate||\"\")+(g.lastDate&&g.lastDate!==g.firstDate?\" \\u2192 \"+g.lastDate:\"\"))+\" \\xB7 \"+Number(g.dailyRows||0)+\" daily row\"+(Number(g.dailyRows||0)===1?\"\":\"s\")+\"</small><button type='button' class='secondary metaAdsPreviewV453' data-row='\"+i+\"'>Preview advert copy</button></td><td><strong>\"+esc(metaAdsMoneyV449(g.spend,currency))+\"</strong></td><td><strong>\"+esc(String(g.confidence||0))+\"%</strong><small>\"+esc((g.evidence||[]).slice(0,5).join(\" \\xB7 \")||\"No reliable event evidence\")+\"</small>\"+(suggested?\"<small class='orbit-meta-suggested-v454'><b>Suggested:</b> \"+esc(metaAdsEventOptionV450(suggested))+\"</small>\":\"<small class='orbit-meta-suggested-v454'>No event suggestion</small>\")+\"</td><td><select class='metaAdsEventChoiceV453' data-row='\"+i+\"'><option value=''>Leave unmatched</option>\"+opts+\"</select><button type='button' class='secondary metaAdsConfirmMatchV453' data-row='\"+i+\"'>Confirm advert</button></td></tr>\"}).join(\"\");queue.innerHTML=\"<div class='orbit-meta-recon-toolbar-v455'><label>Search unresolved adverts<input id='metaAdsReconSearchV455' type='search' value='\"+esc(data.query||\"\")+\"' placeholder='Advert, campaign, ad set or copy\\u2026'></label><button type='button' class='secondary' id='metaAdsReconSearchButtonV455'>Search</button></div><div class='orbit-meta-review-summary-v452'><div><small>Exception queue</small><strong>\"+Number(data.total||0)+\" advert\"+(Number(data.total||0)===1?\"\":\"s\")+\" need attention</strong></div><div><small>Unresolved spend</small><strong>\"+esc(metaAdsMoneyV449(data.summary?.unresolvedSpend||0,currency))+\"</strong></div></div>\"+(rows?\"<table><thead><tr><th>Advert family</th><th>Spend</th><th>Best evidence</th><th>Orbit event</th></tr></thead><tbody>\"+rows+\"</tbody></table>\":\"<div class='orbit-empty-state'><strong>All advertising spend reconciled</strong><span>No advert families require an operator decision.</span></div>\")+\"<div class='orbit-meta-pagination-v453'><button type='button' class='secondary' id='metaAdsReconPrevV453' \"+(data.page<=1?\"disabled\":\"\")+\">Previous</button><span>Page \"+Number(data.page||1)+\" of \"+Number(data.pages||1)+\"</span><button type='button' class='secondary' id='metaAdsReconNextV453' \"+(data.page>=data.pages?\"disabled\":\"\")+\">Next</button></div>\",queue.querySelectorAll(\".metaAdsPreviewV453\").forEach(btn=>btn.addEventListener(\"click\",()=>{const group=groups[Number(btn.dataset.row)];group&&openMetaAdvertPreviewV459(group)})),queue.querySelectorAll(\".metaAdsConfirmMatchV453\").forEach(btn=>btn.addEventListener(\"click\",async()=>{const idx=Number(btn.dataset.row),group=groups[idx],sel=queue.querySelector(\".metaAdsEventChoiceV453[data-row='\"+idx+\"']\"),eventId=sel?.value||\"\";setLoading(btn,!0);try{await api(\"/api/admin/meta-ads/attribution\",{method:\"PUT\",body:JSON.stringify({adId:group.adId,dateStart:group.firstDate,eventId,status:eventId?\"manual\":\"unmatched\",scope:\"ad\"}),cacheMs:0}),orbitGetCache.clear(),await loadMetaAdsReconciliationV453(data.page||1),setNotice2(eventId?\"Advert family confirmed.\":\"Advert family left unmatched.\")}finally{setLoading(btn,!1)}}));const runReconSearch=()=>loadMetaAdsReconciliationV453(1,$2(\"metaAdsReconSearchV455\")?.value||\"\");$2(\"metaAdsReconSearchButtonV455\")?.addEventListener(\"click\",runReconSearch),$2(\"metaAdsReconSearchV455\")?.addEventListener(\"keydown\",e=>{e.key===\"Enter\"&&(e.preventDefault(),runReconSearch())}),$2(\"metaAdsReconPrevV453\")?.addEventListener(\"click\",()=>loadMetaAdsReconciliationV453(Math.max(1,Number(data.page||1)-1),data.query||\"\")),$2(\"metaAdsReconNextV453\")?.addEventListener(\"click\",()=>loadMetaAdsReconciliationV453(Number(data.page||1)+1,data.query||\"\"));const diag=$2(\"metaAdsHistoryDiagnosticsV450\");diag&&(diag.textContent=\"Reconciliation page loaded \"+groups.length+\" advert families in \"+Number(data.diagnostics?.elapsedMs||0)+\"ms server time. Full daily history was not sent to the browser.\")}async function loadMetaAdsReconciliationV453(page=1,query=\"\"){const data=await api(\"/api/admin/meta-ads/history?view=reconciliation&page=\"+encodeURIComponent(page)+\"&limit=25&q=\"+encodeURIComponent(query||\"\"),{cacheMs:5e3,timeoutMs:1e4});return renderMetaAdsReconciliationV453(data),data}function renderMetaAdsCostsV453(data){metaAdsCostsV453=data;const ledger=$2(\"metaAdsEventLedgerV450\");if(!ledger)return;const providerStatus=$2(\"metaAdsLiveCostStatusV490\"),provider=data.providerRefresh||null;if(providerStatus&&provider){providerStatus.hidden=!1,providerStatus.className=\"orbit-action-result \"+(provider.fresh?\"success\":\"\");const repaired=Number(provider.consensusPromotedRows||0),stamp=provider.generatedAt?new Date(provider.generatedAt).toLocaleString():\"unknown time\",pausedCount=Number(provider.pausedOrOffCampaignsWithSpend||0),pausedSpend=Number(provider.pausedOrOffCampaignSpend||0);providerStatus.innerHTML=\"<strong>Meta provider check \"+(provider.fresh?\"is current\":\"needs refresh\")+\"</strong><span>Last checked \"+esc(stamp)+\" \\xB7 Meta provider window \"+esc(metaAdsMoneyV449(provider.providerSpend||0,\"GBP\"))+\" \\xB7 safe live delta \"+esc(metaAdsMoneyV449(provider.deltaSpend||0,\"GBP\"))+(pausedCount?\" \\xB7 includes \"+esc(metaAdsMoneyV449(pausedSpend,\"GBP\"))+\" from \"+pausedCount+\" paused/off campaign\"+(pausedCount===1?\"\":\"s\"):\"\")+(repaired?\" \\xB7 repaired \"+repaired+\" imported row\"+(repaired===1?\"\":\"s\")+\" using exact-ad identity\":\"\")+\". Paused status does not erase historical spend.</span>\"}const currency=\"GBP\",rows=(data.events||[]).map(x=>{const auto=Number(x.auto_matched||0),manual=Number(x.manual||0),attributed=Number(x.spend||0),mathOk=Math.abs(auto+manual-attributed)<.005;return\"<tr class='orbit-meta-event-row-v452' data-event-id='\"+esc(x.event?.eventId||\"\")+\"' tabindex='0'><td><strong>\"+esc(x.event?.name||\"Event\")+\"</strong><small>\"+esc(metaAdsEventDateLabelV452(x.event)+\" \\xB7 \"+(x.event?.venue||\"\"))+\"</small></td><td><strong>\"+esc(metaAdsMoneyV449(attributed,currency))+\"</strong><small>\"+(Number(x.liveDelta||0)>0?\"Includes \"+esc(metaAdsMoneyV449(x.liveDelta,currency))+\" current live ad/day delta \\xB7 \":\"\")+(mathOk?\"Auto + Manual reconciles\":\"\\u26A0 totals need review\")+\"</small></td><td>\"+esc(metaAdsMoneyV449(auto,currency))+\"</td><td>\"+esc(metaAdsMoneyV449(manual,currency))+\"</td><td><span class='orbit-meta-view-link-v452'>View matched ads \\u2192</span></td></tr>\"}).join(\"\");ledger.innerHTML=rows?\"<table><thead><tr><th>Canonical Vendor event</th><th>Attributed <small>Auto + Manual</small></th><th>Auto</th><th>Manual</th><th></th></tr></thead><tbody>\"+rows+\"</tbody></table>\":\"<div class='orbit-empty'>No confirmed event matches yet.</div>\",ledger.querySelectorAll(\"[data-event-id]\").forEach(row=>{const open=()=>loadMetaAdsEventDetailV453(row.dataset.eventId,1);row.addEventListener(\"click\",open),row.addEventListener(\"keydown\",e=>{(e.key===\"Enter\"||e.key===\" \")&&(e.preventDefault(),open())})})}let metaCostsRequestV543=null;function metaCostsNoticeV543(message){const status=$2(\"metaAdsLiveCostStatusV490\");status&&(status.hidden=!1,status.className=\"orbit-action-result\",status.innerHTML=\"<span>\"+esc(message)+'</span><button type=\"button\" class=\"secondary\" data-retry-meta-costs-v543>Retry report</button>')}function renderSavedMetaCostsV543(data){const ledger=$2(\"metaAdsEventLedgerV450\"),detail=$2(\"metaAdsEventCostDetailV452\");detail&&(detail.hidden=!0);const stamp=data.snapshotAsOf?new Date(data.snapshotAsOf).toLocaleString(\"en-GB\",{timeZone:\"Europe/London\"}):\"\";if(metaCostsNoticeV543((data.warning||\"Saved event costs only.\")+(stamp?\" Saved at \"+stamp+\" UK.\":\"\")),!!ledger){if(data.accountingStatus===\"unavailable\"){ledger.innerHTML='<div class=\"orbit-empty-state\"><strong>Event costs are temporarily unavailable</strong><span>No complete snapshot is available yet. No \\xA30 totals or partial figures are shown.</span></div>';return}ledger.innerHTML=(data.events||[]).length?\"<table><thead><tr><th>Event</th><th>Last complete saved cost</th><th>Detail</th></tr></thead><tbody>\"+data.events.map(row=>\"<tr><td><strong>\"+esc(row.event?.name||\"Saved event\")+\"</strong><small>\"+esc(row.event?.date||\"\")+\"</small></td><td><strong>\"+esc(metaAdsMoneyV449(row.spend,\"GBP\"))+\"</strong></td><td>Available after accounting finishes</td></tr>\").join(\"\")+\"</tbody></table>\":'<div class=\"orbit-empty\">The saved report has no attributed event costs.</div>'}}async function loadMetaAdsCostsV453(){if(metaCostsRequestV543)return metaCostsRequestV543;const ledger=$2(\"metaAdsEventLedgerV450\");return metaCostsNoticeV543(\"Loading the saved accounting report. No Meta refresh is being started.\"),document.querySelectorAll(\"[data-retry-meta-costs-v543]\").forEach(button2=>button2.disabled=!0),metaCostsRequestV543=(async()=>{try{const data=await api(\"/api/admin/meta-ads/history?view=costs\",{cacheMs:0,timeoutMs:15e3});return[\"saved\",\"unavailable\"].includes(data.accountingStatus)?(renderSavedMetaCostsV543(data),data):(renderMetaAdsCostsV453(data),data.providerRefresh||metaCostsNoticeV543(\"Saved event costs loaded. Meta provider freshness is not available in this response.\"),data)}catch(error){return metaAdsCostsV453?(renderMetaAdsCostsV453(metaAdsCostsV453),metaCostsNoticeV543(\"Could not reload event costs. Showing the last complete report loaded in this page. \"+(error.message||\"Please retry.\"))):(ledger&&(ledger.innerHTML='<div class=\"orbit-empty-state\"><strong>Event costs could not load</strong><span>No figures have been substituted or changed.</span></div>'),metaCostsNoticeV543(error.message||\"Please try the report again.\")),{success:!1}}finally{metaCostsRequestV543=null,document.querySelectorAll(\"[data-retry-meta-costs-v543]\").forEach(button2=>button2.disabled=!1)}})(),metaCostsRequestV543}document.addEventListener(\"click\",event=>{event.target.closest(\"[data-retry-meta-costs-v543]\")&&loadMetaAdsCostsV453()});async function loadMetaAdsEventDetailV453(eventId,page=1){const data=await api(\"/api/admin/meta-ads/history?view=event&eventId=\"+encodeURIComponent(eventId)+\"&page=\"+encodeURIComponent(page)+\"&limit=50\",{cacheMs:5e3,timeoutMs:1e4}),target=$2(\"metaAdsEventCostDetailV452\");if(!target)return data;const rows=data.rows||[],currency=\"GBP\",events=data.eventCatalog||[];return target.hidden=!1,target.innerHTML=\"<div class='orbit-meta-event-detail-head-v452'><div><p class='orbit-kicker'>Matched advertising detail</p><h3>\"+Number(data.total||0)+\" Meta campaign\"+(Number(data.total||0)===1?\"\":\"s\")+\" matched</h3><p>One row per Meta campaign, matching the simple Campaign view in Meta Ads Manager. Individual adverts and daily history stay underneath the maths and are collapsed here.</p></div></div><div class='orbit-table-wrap'><table><thead><tr><th>Campaign</th><th>Adverts included</th><th>Dates</th><th>Total spend</th><th>Match</th><th></th></tr></thead><tbody>\"+rows.map((r,i)=>{const adNames=Array.isArray(r.ad_names)?r.ad_names:[],preview=[\"Campaign: \"+String(r.campaign_name||\"\"),adNames.length?\"Adverts: \"+adNames.join(\" \\xB7 \"):\"\",String(r.creative_text||r.headline||r.description||\"\")].filter(Boolean).join(`\n`),range=r.first_date&&r.last_date&&r.last_date!==r.first_date?r.first_date+\" \\u2192 \"+r.last_date:r.first_date||r.last_date||\"\\u2014\",spendBreakdown=[Number(r.historical_spend||0)>0?\"Imported \"+metaAdsMoneyV449(r.historical_spend,currency):\"\",Number(r.live_delta_spend||0)>0?\"current live +\"+metaAdsMoneyV449(r.live_delta_spend,currency):\"\",Number(r.provider_ad_window_spend||0)>0?\"Meta provider total \"+metaAdsMoneyV449(r.provider_ad_window_spend,currency):\"\"].filter(Boolean).join(\" \\xB7 \"),dailyCount=Number(r.daily_rows||0),liveCount=Number(r.live_rows||0),adCount=Number(r.ad_count||0),status=String(r.attribution?.status||\"\"),matchLabel=status===\"manual\"?\"Manual\":status===\"mixed\"?\"Auto + Manual\":\"Auto\";return\"<tr><td><strong>\"+esc(r.campaign_name||\"Meta campaign\")+\"</strong><small>Check this row against the same campaign in Meta Ads Manager.</small><button type='button' class='secondary metaAdsEventPreviewV453' data-row='\"+i+\"'>See included adverts</button><div class='orbit-meta-ad-copy-v453' data-event-preview='\"+i+\"' hidden><pre>\"+esc(preview||\"No advert names stored.\")+\"</pre></div></td><td><strong>\"+adCount+\" advert\"+(adCount===1?\"\":\"s\")+\"</strong><small>\"+esc(adNames.slice(0,3).join(\" \\xB7 \")+(adNames.length>3?\" \\xB7 \\u2026\":\"\"))+\"</small></td><td>\"+esc(range)+\"<small>\"+dailyCount+\" imported daily row\"+(dailyCount===1?\"\":\"s\")+(liveCount?\" \\xB7 \"+liveCount+\" current row\"+(liveCount===1?\"\":\"s\"):\"\")+\" collapsed</small></td><td><strong>\"+esc(metaAdsMoneyV449(r.spend,currency))+\"</strong>\"+(spendBreakdown?\"<small>\"+esc(spendBreakdown)+\"</small>\":\"\")+\"</td><td><strong>\"+esc(matchLabel)+\"</strong><small>\"+esc((r.attribution?.evidence||[]).slice(0,2).join(\" \\xB7 \"))+\"</small></td><td><button type='button' class='secondary metaAdsEventReassignV453' data-row='\"+i+\"'>Reassign campaign</button><div class='orbit-meta-reassign-v454' data-reassign-row='\"+i+\"' hidden><select class='metaAdsEventReassignChoiceV454'><option value=''>Return adverts to Reconciliation</option>\"+events.map(e=>\"<option value='\"+esc(e.eventId)+\"'>\"+metaAdsEventOptionV450(e)+\"</option>\").join(\"\")+\"</select><button type='button' class='secondary metaAdsEventReassignConfirmV454'>Confirm</button></div></td></tr>\"}).join(\"\")+\"</tbody></table></div>\"+(Number(data.pages||1)>1?\"<div class='orbit-meta-pagination-v453'><button type='button' class='secondary' id='metaAdsEventPrevV453' \"+(data.page<=1?\"disabled\":\"\")+\">Previous</button><span>Page \"+Number(data.page||1)+\" of \"+Number(data.pages||1)+\"</span><button type='button' class='secondary' id='metaAdsEventNextV453' \"+(data.page>=data.pages?\"disabled\":\"\")+\">Next</button></div>\":\"\"),target.querySelectorAll(\".metaAdsEventPreviewV453\").forEach(btn=>btn.addEventListener(\"click\",()=>{const box=target.querySelector(\"[data-event-preview='\"+btn.dataset.row+\"']\");box&&(box.hidden=!box.hidden,btn.textContent=box.hidden?\"Preview\":\"Hide preview\")})),target.querySelectorAll(\".metaAdsEventReassignV453\").forEach(btn=>btn.addEventListener(\"click\",()=>{const box=target.querySelector(\"[data-reassign-row='\"+btn.dataset.row+\"']\");box&&(box.hidden=!box.hidden)})),target.querySelectorAll(\".metaAdsEventReassignConfirmV454\").forEach(confirmBtn=>confirmBtn.addEventListener(\"click\",async()=>{const box=confirmBtn.closest(\".orbit-meta-reassign-v454\"),idx=Number(box?.dataset.reassignRow),r=rows[idx],select=box?.querySelector(\".metaAdsEventReassignChoiceV454\"),selected=events.find(e=>String(e.eventId)===String(select?.value||\"\"))||null;setLoading(confirmBtn,!0);try{const adIds=(Array.isArray(r.ad_ids)?r.ad_ids:[r.ad_id]).filter(Boolean);if(!adIds.length)throw new Error(\"No Meta advert IDs are stored for this campaign.\");for(const adId of adIds)await api(\"/api/admin/meta-ads/attribution\",{method:\"PUT\",body:JSON.stringify({adId,dateStart:r.first_date||\"\",eventId:selected?.eventId||\"\",status:selected?\"manual\":\"unmatched\",scope:\"ad\"}),cacheMs:0});orbitGetCache.clear(),await loadMetaAdsEventDetailV453(eventId,Math.min(page,data.pages||1)),setNotice2(selected?\"Campaign reassigned to \"+selected.name+\".\":\"Campaign adverts returned to Reconciliation.\")}finally{setLoading(confirmBtn,!1)}})),$2(\"metaAdsEventPrevV453\")?.addEventListener(\"click\",()=>loadMetaAdsEventDetailV453(eventId,Math.max(1,Number(data.page||1)-1))),$2(\"metaAdsEventNextV453\")?.addEventListener(\"click\",()=>loadMetaAdsEventDetailV453(eventId,Number(data.page||1)+1)),target.scrollIntoView({behavior:\"smooth\",block:\"nearest\"}),data}async function refreshMetaLiveCostsV490(button2=null){const status=$2(\"metaAdsLiveCostStatusV490\");button2&&setLoading(button2,!0),status&&(status.hidden=!1,status.className=\"orbit-action-result\",status.textContent=\"Reading current individual-ad spend from Meta\\u2026\");try{const result=await api(\"/api/admin/meta-ads/live-overlay/refresh\",{method:\"POST\",body:JSON.stringify({skipRematch:!0,days:45}),cacheMs:0,timeoutMs:12e4});if(orbitGetCache.clear(),await loadMetaAdsCostsV453(),status){const capped=Number(result.cappedAwaySpend||0);status.className=\"orbit-action-result success\";const repaired=Number(result.consensusPromotedRows||0),pausedCount=Number(result.pausedOrOffCampaignsWithSpend||0),pausedSpend=Number(result.pausedOrOffCampaignSpend||0);status.innerHTML=\"<strong>Current Meta spend refreshed</strong><span>Provider spend \"+esc(metaAdsMoneyV449(result.providerSpend||0,\"GBP\"))+\" \\xB7 imported \"+esc(metaAdsMoneyV449(result.importedSpend||0,\"GBP\"))+\" \\xB7 safe live delta \"+esc(metaAdsMoneyV449(result.deltaSpend||0,\"GBP\"))+(pausedCount?\" \\xB7 includes \"+esc(metaAdsMoneyV449(pausedSpend,\"GBP\"))+\" from \"+pausedCount+\" paused/off campaign\"+(pausedCount===1?\"\":\"s\"):\"\")+(repaired>0?\" \\xB7 repaired \"+repaired+\" previously unresolved imported row\"+(repaired===1?\"\":\"s\")+\" from exact advert identity\":\"\")+(capped>0?\" \\xB7 prevented \"+esc(metaAdsMoneyV449(capped,\"GBP\"))+\" of stale daily over-count\":\"\")+\". Paused status does not remove spend already incurred.</span>\"}return setNotice2(\"Current Meta advertising spend refreshed from individual-ad provider totals.\"),result}catch(error){throw status&&(status.className=\"orbit-action-result error\",status.innerHTML=\"<strong>Meta refresh failed</strong><span>\"+esc(error.message||String(error))+\"</span>\"),error}finally{button2&&setLoading(button2,!1)}}let metaAdsHistoryPollTimerV450=null,metaAdsHistoryPollingV538=!1;const metaHistoryJobStorageV538=\"orbitMetaHistoryJobV538\";function savedMetaHistoryJobV538(){try{return JSON.parse(sessionStorage.getItem(metaHistoryJobStorageV538)||\"null\")}catch{return null}}function clearMetaHistoryJobV538(){try{sessionStorage.removeItem(metaHistoryJobStorageV538)}catch{}}async function pollMetaAdsHistoryJobV450(jobId,startedAt,failures=0){if(metaAdsHistoryPollingV538)return;const button2=$2(\"metaAdsLoadHistoryV450\"),feedback=$2(\"metaAdsHistoryButtonFeedbackV450\"),diag=$2(\"metaAdsHistoryDiagnosticsV450\");metaAdsHistoryPollTimerV450&&(clearTimeout(metaAdsHistoryPollTimerV450),metaAdsHistoryPollTimerV450=null),metaAdsHistoryPollingV538=!0;let data;try{data=await api(\"/api/admin/meta-ads/history/import/\"+encodeURIComponent(jobId),{cacheMs:0,timeoutMs:25e3})}catch(error){metaAdsHistoryPollingV538=!1;const retry=failures<5;feedback&&(feedback.className=\"orbit-action-result\",feedback.innerHTML=\"<strong>Waiting for sync status</strong><span>The status check did not return. This does not mean the import failed. \"+(retry?\"Orbit will check the same job again automatically.\":\"Press Sync new / changed Meta data to resume checking this job; it will not start a duplicate import.\")+\"</span>\"),diag&&(diag.textContent=\"Status temporarily unavailable \\xB7 job \"+jobId+\" \\xB7 \"+(error.message||String(error))),retry?metaAdsHistoryPollTimerV450=setTimeout(()=>pollMetaAdsHistoryJobV450(jobId,startedAt,failures+1),Math.min(1e4,2e3*(failures+1))):button2&&setLoading(button2,!1);return}metaAdsHistoryPollingV538=!1;const elapsed=Math.max(0,Math.round((Date.now()-startedAt)/1e3));if(feedback&&(feedback.className=\"orbit-action-result\",feedback.innerHTML=\"<strong>Import running</strong><span>\"+esc(data.stage||\"Reading Meta history\")+\" \\xB7 \"+elapsed+\"s elapsed. Orbit will update automatically.</span>\"),diag&&(diag.textContent=(data.stage||\"Historical import running\")+\" \\xB7 job \"+jobId+\" \\xB7 \"+elapsed+\"s elapsed\"),data.status===\"completed\"){clearMetaHistoryJobV538(),orbitGetCache.clear(),button2&&setLoading(button2,!1);const overlayWarning=data.summary?.liveCampaignOverlay?.success===!1;try{await loadMetaAdsSummaryV453();const view=sessionStorage.getItem(\"orbitAdvertisingView\")||\"overview\";view===\"reconciliation\"&&await loadMetaAdsReconciliationV453(1),view===\"costs\"&&await loadMetaAdsCostsV453()}catch(error){diag&&(diag.textContent=\"Import completed; report display needs refreshing: \"+(error.message||String(error)))}return feedback&&(feedback.className=overlayWarning?\"orbit-action-result\":\"orbit-action-result success\",feedback.innerHTML=\"<strong>History saved</strong><span>\"+(overlayWarning?\"The historical ledger is saved. The live provider refresh did not complete; retry Current Meta spend before certifying event costs.\":\"Meta data was saved and matched in \"+elapsed+\" seconds.\")+\"</span>\"),setNotice2(overlayWarning?\"Historical Meta data saved; live spend refresh needs a retry.\":\"Meta advertising sync completed.\",overlayWarning),data}if(data.status===\"failed\"){clearMetaHistoryJobV538();const message=data.error?.message||\"Meta historical import failed.\";return feedback&&(feedback.className=\"orbit-action-result error\",feedback.innerHTML=\"<strong>Import failed safely</strong><span>\"+esc(message)+\"</span>\"),diag&&(diag.textContent=message),button2&&setLoading(button2,!1),setNotice2(message,!0),data}return metaAdsHistoryPollTimerV450=setTimeout(()=>pollMetaAdsHistoryJobV450(jobId,startedAt),2e3),data}async function startMetaAdsHistoryImportV450(){const since=$2(\"metaAdsHistorySinceV450\")?.value||\"\",until=$2(\"metaAdsHistoryUntilV450\")?.value||\"\",summary=$2(\"metaAdsHistorySummaryV450\"),diag=$2(\"metaAdsHistoryDiagnosticsV450\"),feedback=$2(\"metaAdsHistoryButtonFeedbackV450\"),button2=$2(\"metaAdsLoadHistoryV450\");button2&&setLoading(button2,!0);const saved=savedMetaHistoryJobV538();if(saved?.jobId)return pollMetaAdsHistoryJobV450(saved.jobId,saved.startedAt||Date.now());summary&&(summary.innerHTML=\"<div class='orbit-empty-state'><strong>Import started</strong><span>Orbit is reading Meta history in the background. Progress will appear beside the button.</span></div>\"),feedback&&(feedback.innerHTML=\"<strong>Starting import\\u2026</strong><span>Connecting to Meta and preparing the historical read.</span>\"),diag&&(diag.textContent=\"Starting historical Meta import\\u2026\");try{const job=await api(\"/api/admin/meta-ads/history/import\",{method:\"POST\",body:JSON.stringify({since:since||null,until:until||null,mode:since?\"manual\":\"incremental\"}),cacheMs:0,timeoutMs:25e3}),started=Date.now();try{sessionStorage.setItem(metaHistoryJobStorageV538,JSON.stringify({jobId:job.jobId,startedAt:started}))}catch{}return pollMetaAdsHistoryJobV450(job.jobId,started)}catch(err){throw button2&&setLoading(button2,!1),feedback&&(feedback.className=\"orbit-action-result error\",feedback.innerHTML=\"<strong>Import could not start</strong><span>\"+esc(err.message||err)+\"</span>\"),diag&&(diag.textContent=err.message||String(err)),err}}async function loadMetaAdsDashboardV449(refreshLive=!1){const preset=$2(\"metaAdsDatePresetV449\")?.value||\"last_7d\",level=$2(\"metaAdsLevelV449\")?.value||\"campaign\",tableTarget=$2(\"metaAdsPerformanceTableV449\"),diag=$2(\"metaAdsDiagnosticsV449\"),summary=$2(\"metaAdsSummaryV449\");tableTarget&&(tableTarget.innerHTML=\"<div class='orbit-empty-state'><strong>\"+(refreshLive?\"Refreshing Meta Insights\\u2026\":\"Loading saved Meta performance\\u2026\")+\"</strong><span>\"+(refreshLive?\"Orbit is making one explicit read-only request to Meta.\":\"No live Meta request is made when this page opens.\")+\"</span></div>\");const data=await api(\"/api/admin/meta-ads/dashboard?datePreset=\"+encodeURIComponent(preset)+\"&level=\"+encodeURIComponent(level)+(refreshLive?\"&refresh=1\":\"\"),{cacheMs:0,timeoutMs:45e3});if(data.available===!1)return tableTarget&&(tableTarget.innerHTML=\"<div class='orbit-empty-state'><strong>No saved live-performance snapshot yet</strong><span>Press Load Meta performance when you want Orbit to make a fresh read-only Meta request. The result will then be saved for future refreshes.</span></div>\"),diag&&(diag.textContent=\"No cached Meta performance snapshot for \"+preset+\" / \"+level+\". Page refresh made zero Meta API requests.\"),data;const t=data.totals||{},currency=data.account?.currency||\"GBP\";summary&&(summary.innerHTML=[[\"Spend\",metaAdsMoneyV449(t.spend,currency)],[\"Impressions\",metaAdsNumberV449(t.impressions)],[\"Reach\",metaAdsNumberV449(t.reach)],[\"Link clicks\",metaAdsNumberV449(t.linkClicks)],[\"CTR\",metaAdsNumberV449(t.ctr,2)+\"%\"],[\"CPC\",metaAdsMoneyV449(t.cpc,currency)],[\"Initiate Checkout\",metaAdsNumberV449(t.initiateCheckout)],[\"Purchases\",metaAdsNumberV449(t.purchase)],[\"Cost / checkout\",t.costPerCheckout==null?\"\\u2014\":metaAdsMoneyV449(t.costPerCheckout,currency)],[\"Cost / purchase\",t.costPerPurchase==null?\"\\u2014\":metaAdsMoneyV449(t.costPerPurchase,currency)],[\"Purchase value\",metaAdsMoneyV449(t.purchaseConversionValue,currency)],[\"ROAS\",t.roas==null?\"\\u2014\":metaAdsNumberV449(t.roas,2)+\"\\xD7\"]].map(x=>\"<article class='orbit-summary-card'><small>\"+esc(x[0])+\"</small><strong>\"+esc(x[1])+\"</strong></article>\").join(\"\"));const campaigns=new Map((data.campaigns||[]).map(x=>[String(x.id),x])),adsets=new Map((data.adsets||[]).map(x=>[String(x.id),x])),rows=(data.insights||[]).map(row=>{const m=row.metrics||{},campaign=campaigns.get(String(row.campaign_id||\"\"))||{},adset=adsets.get(String(row.adset_id||\"\"))||{},name=level===\"ad\"?row.ad_name||row.ad_id:level===\"adset\"?row.adset_name||row.adset_id:row.campaign_name||row.campaign_id,status=level===\"campaign\"?campaign.effective_status:level===\"adset\"?adset.effective_status:\"\",budget=level===\"campaign\"?campaign.daily_budget||campaign.lifetime_budget:level===\"adset\"?adset.daily_budget||adset.lifetime_budget:\"\",budgetText=budget?metaAdsMoneyV449(Number(budget)/100,currency):\"\\u2014\";return\"<tr><td><strong>\"+esc(name||\"Unknown\")+\"</strong><small style='display:block'>\"+esc(row.objective||campaign.objective||\"\")+\"</small></td><td>\"+metaAdsStatusPillV449(status||\"\\u2014\")+\"</td><td>\"+esc(budgetText)+\"</td><td>\"+esc(metaAdsMoneyV449(m.spend,currency))+\"</td><td>\"+esc(metaAdsNumberV449(m.impressions))+\"</td><td>\"+esc(metaAdsNumberV449(m.linkClicks))+\"</td><td>\"+esc(metaAdsNumberV449(m.initiateCheckout))+\"</td><td>\"+esc(metaAdsNumberV449(m.purchase))+\"</td><td>\"+esc(m.costPerPurchase==null?\"\\u2014\":metaAdsMoneyV449(m.costPerPurchase,currency))+\"</td><td>\"+esc(m.roas==null?\"\\u2014\":metaAdsNumberV449(m.roas,2)+\"\\xD7\")+\"</td></tr>\"}).join(\"\");tableTarget&&(tableTarget.innerHTML=\"<table><thead><tr><th>\"+esc(level===\"ad\"?\"Ad\":level===\"adset\"?\"Ad set\":\"Campaign\")+\"</th><th>Status</th><th>Budget</th><th>Spend</th><th>Impressions</th><th>Link clicks</th><th>Checkout</th><th>Purchase</th><th>CPA</th><th>ROAS</th></tr></thead><tbody>\"+(rows||\"<tr><td colspan='10'>Meta returned no performance rows for this period.</td></tr>\")+\"</tbody></table>\"),diag&&(diag.textContent=(data.cached?\"Saved snapshot\":\"Live Meta refresh\")+\" \\xB7 Graph \"+String(data.graphVersion||\"\")+\" \\xB7 \"+String(data.datePreset||preset)+\" \\xB7 \"+String(data.level||level)+\" level \\xB7 \"+Number(data.insights?.length||0)+\" insight rows \\xB7 generated \"+String(data.generatedAt||\"unknown\")+\" \\xB7 write operations disabled.\")}function restoreAdminModuleAfterRefresh(){let route=\"\",module=\"\",tab=\"\";try{const url=new URL(window.location.href);route=String(url.searchParams.get(\"orbit_admin_route\")||localStorage.getItem(\"orbitAdminLastRouteV5991\")||\"\"),tab=String(url.searchParams.get(\"orbit_admin_tab\")||\"\");const requestedWorkspace=url.searchParams.get(\"orbit_admin_workspace\");requestedWorkspace&&applyBusinessWorkspaceV599(requestedWorkspace,{persist:!0,activateHome:!1,historyMode:\"none\"});const hash=String(window.location.hash||\"\");hash.startsWith(\"#orbit-module-\")&&(module=hash.slice(14)),!route&&module&&(route=primaryRouteForModuleV5991(module,tab))}catch{}const config=adminWorkspaceConfig[route];config&&(window.orbitRestoringAdminState=!0,activateModule(config.defaultModule,tab||config.preferredTab,{routeKey:route,historyMode:\"none\"}),window.setTimeout(()=>{window.orbitRestoringAdminState=!1},0))}function restoreAdminRouteFromHistoryV5991(){if(!state.adminAuthenticated)return;let route=\"\",tab=\"\";try{const url=new URL(window.location.href);route=String(url.searchParams.get(\"orbit_admin_route\")||\"\"),tab=String(url.searchParams.get(\"orbit_admin_tab\")||\"\");const requestedWorkspace=url.searchParams.get(\"orbit_admin_workspace\");requestedWorkspace&&applyBusinessWorkspaceV599(requestedWorkspace,{persist:!0,activateHome:!1,historyMode:\"none\"})}catch{return}const config=adminWorkspaceConfig[route];config&&activateModule(config.defaultModule,tab||config.preferredTab,{routeKey:route,historyMode:\"none\"})}window.addEventListener(\"popstate\",restoreAdminRouteFromHistoryV5991);function updateCommandCentre(){const counts=(state.fulfilmentCentre||{}).counts||{},scheduler=state.scheduler||{},summary=state.summary||{};let title=\"All systems are loading\",copy=\"Orbit is checking the business status.\",module=\"dashboard\";(summary.unansweredTickets||0)>0?(title=\"Reply to customer messages\",copy=summary.unansweredTickets+\" customer conversation\"+(summary.unansweredTickets===1?\" is\":\"s are\")+\" waiting for an admin response. Customer contact is the highest priority.\",module=\"support\"):(summary.redeemedGoldenTickets||0)>0?(title=\"Prepare Golden Ticket prizes\",copy=summary.redeemedGoldenTickets+\" redeemed Golden Ticket\"+(summary.redeemedGoldenTickets===1?\" needs\":\"s need\")+\" prize handling.\",module=\"shipping\"):(summary.completedDrawsAwaitingDispatch||0)>0?(title=\"Prepare monthly draw prize\",copy=summary.completedDrawsAwaitingDispatch+\" draw winner shipment\"+(summary.completedDrawsAwaitingDispatch===1?\" is\":\"s are\")+\" awaiting action.\",module=\"automation\"):counts.ready>0&&!counts.labelsGenerated?(title=\"Generate this month\\u2019s dispatch\",copy=counts.ready+\" member pack\"+(counts.ready===1?\" is\":\"s are\")+\" ready for labels. Missing-address members are skipped safely.\",module=\"fulfilment\"):counts.labelsGenerated>0&&!counts.shipped?(title=\"Print labels and dispatch\",copy=counts.labelsGenerated+\" label\"+(counts.labelsGenerated===1?\" is\":\"s are\")+\" generated. Print the packing list, pack in order, then mark dispatched.\",module=\"fulfilment\"):counts.needsAddress>0?(title=\"Collect missing delivery details\",copy=counts.needsAddress+\" member\"+(counts.needsAddress===1?\" needs\":\"s need\")+\" an address before they can receive a box.\",module=\"members\"):(title=\"Everything looks calm today\",copy=\"No urgent fulfilment action is currently showing. Use the modules above for specific tools.\",module=\"dashboard\"),text(\"commandNextTitle\",title),text(\"commandNextCopy\",copy);const button2=$2(\"commandNextButton\");button2&&(button2.dataset.targetModule=module)}function setLoading(button2,loading){button2&&(button2.disabled=loading,button2.dataset.originalHtml||(button2.dataset.originalHtml=button2.innerHTML),button2.classList.toggle(\"orbit-button-loading\",!!loading),button2.setAttribute(\"aria-busy\",loading?\"true\":\"false\"),button2.innerHTML=loading?\"<span class='orbit-mini-spinner' aria-hidden='true'></span><span>Working...</span>\":button2.dataset.originalHtml)}function parseUkDate(value){const raw=String(value||\"\").trim();if(!raw)return null;const m=raw.match(/^(\\d{1,2})[\\/.-](\\d{1,2})[\\/.-](\\d{4})$/);if(!m)throw new Error(\"Enter the expiry date as DD/MM/YYYY.\");const d=Number(m[1]),mo=Number(m[2]),y=Number(m[3]),date=new Date(Date.UTC(y,mo-1,d,23,59,59));if(date.getUTCFullYear()!==y||date.getUTCMonth()!==mo-1||date.getUTCDate()!==d)throw new Error(\"Enter a valid expiry date as DD/MM/YYYY.\");return date.toISOString()}const orbitGetRequests=new Map,orbitGetCache=new Map,orbitReadWaiters=[];let orbitReadsActive=0,orbitReadEpoch=0,orbitReadUnavailableUntil=0;function acquireOrbitReadV596(){return orbitReadsActive<4?(orbitReadsActive++,Promise.resolve()):orbitReadWaiters.length>=96?Promise.reject(Object.assign(new Error(\"Orbit is busy. Wait for the current requests to finish.\"),{status:429,code:\"ADMIN_READ_QUEUE_FULL\"})):new Promise(resolve=>orbitReadWaiters.push(resolve))}function releaseOrbitReadV596(){const next=orbitReadWaiters.shift();next?next():orbitReadsActive--}const orbitKnowledgeReadWaitersV597=[];let orbitKnowledgeReadsActiveV597=0;function isOrbitKnowledgePathV597(path){return/^\\/api\\/admin\\/orbit-bootstrap(?:[/?]|$)/.test(path)}function acquireOrbitKnowledgeReadV597(){return orbitKnowledgeReadsActiveV597<2?(orbitKnowledgeReadsActiveV597++,Promise.resolve()):orbitKnowledgeReadWaitersV597.length>=16?Promise.reject(Object.assign(new Error(\"Project export requests are busy. Retry shortly.\"),{status:429,code:\"ORBIT_KNOWLEDGE_BUSY\"})):new Promise(resolve=>orbitKnowledgeReadWaitersV597.push(resolve))}function releaseOrbitKnowledgeReadV597(){const next=orbitKnowledgeReadWaitersV597.shift();next?next():orbitKnowledgeReadsActiveV597--}async function pollOrbitProjectJobV597(jobId){if(!/^[a-f0-9]{24}$/.test(String(jobId)))throw new Error(\"Invalid project export job ID.\");for(let attempt=0;attempt<3;attempt++)try{return await api(\"/api/admin/orbit-bootstrap/backend-source/jobs/\"+encodeURIComponent(jobId),{timeoutMs:2e4,cacheMs:0})}catch(error){if(attempt===2||error.code===\"ADMIN_SESSION_CHANGED\"||error.status&&![408,429,502,503,504].includes(error.status))throw error;await new Promise(resolve=>setTimeout(resolve,500*(attempt+1)))}}async function api(path,options){const requestOptions=Object.assign({},options||{}),method=String(requestOptions.method||\"GET\").toUpperCase(),externalSignal=requestOptions.signal||null,cacheMs=Math.max(0,Number(requestOptions.cacheMs)||0),knowledgeRead=isOrbitKnowledgePathV597(path);delete requestOptions.signal;const requestKey=String(adminSessionTokenV329||\"\")+\":\"+orbitReadEpoch+\":\"+method+\":\"+path;if(method===\"GET\"){const cached=orbitGetCache.get(requestKey);if(cacheMs>0&&cached&&cached.expiresAt>Date.now())return cached.value;if(!externalSignal&&orbitGetRequests.has(requestKey))return orbitGetRequests.get(requestKey);if(!knowledgeRead&&Date.now()<orbitReadUnavailableUntil)throw Object.assign(new Error(\"Orbit's server is temporarily unavailable. Your session has been retained; retry shortly.\"),{status:503,code:\"ADMIN_SERVER_UNAVAILABLE\"})}const epoch=orbitReadEpoch,sessionToken=adminSessionTokenV329,pending=(async()=>{let readSlot=!1,timer,timedOut=!1,externalAbortHandler=null;const timeoutMs=Math.max(1e3,Math.min(12e4,Number(requestOptions.timeoutMs)||(method===\"GET\"?2e4:45e3)));delete requestOptions.timeoutMs,delete requestOptions.cacheMs;try{if(method===\"GET\"&&(await(knowledgeRead?acquireOrbitKnowledgeReadV597():acquireOrbitReadV596()),readSlot=!0),sessionToken!==adminSessionTokenV329)throw Object.assign(new Error(\"Admin session changed; request cancelled.\"),{code:\"ADMIN_SESSION_CHANGED\"});const withCacheBust=method===\"GET\"?path+(path.includes(\"?\")?\"&\":\"?\")+\"_=\"+Date.now():path,url=API_BASE+withCacheBust+(withCacheBust.includes(\"?\")?\"&\":\"?\")+\"secret=\"+encodeURIComponent(secret),controller=new AbortController;timer=setTimeout(()=>{timedOut=!0,controller.abort()},timeoutMs),externalSignal&&(externalAbortHandler=()=>controller.abort(),externalSignal.aborted?controller.abort():externalSignal.addEventListener(\"abort\",externalAbortHandler,{once:!0}));const headers=Object.assign({\"Content-Type\":\"application/json\"},requestOptions.headers||{});sessionToken&&(headers.Authorization=\"Bearer \"+sessionToken),delete requestOptions.headers;const res=await fetch(url,Object.assign({headers,cache:method===\"GET\"?\"no-store\":\"default\",signal:controller.signal},requestOptions)),json=(res.headers.get(\"content-type\")||\"\").includes(\"application/json\"),data=json?await res.json():{success:!1,error:\"Orbit server returned HTTP \"+res.status+\" instead of an API response.\"};if(!json)try{await res.body?.cancel()}catch{}if(!res.ok||data.success===!1)throw Object.assign(new Error(data.error||\"Orbit OS request failed (HTTP \"+res.status+\").\"),{status:res.status,data});return method===\"GET\"&&cacheMs>0&&epoch===orbitReadEpoch&&sessionToken===adminSessionTokenV329&&(orbitGetCache.size>=80&&orbitGetCache.delete(orbitGetCache.keys().next().value),orbitGetCache.set(requestKey,{value:data,expiresAt:Date.now()+cacheMs})),method!==\"GET\"&&(orbitReadEpoch++,orbitGetCache.clear()),data}catch(error){const aborted=!!(error&&error.name===\"AbortError\"),externallyCancelled=aborted&&!!externalSignal?.aborted&&!timedOut;throw method===\"GET\"&&!knowledgeRead&&!aborted&&(!error.status||error.status>=500)&&error.code!==\"ADMIN_SESSION_CHANGED\"&&(orbitReadUnavailableUntil=Date.now()+5e3),externallyCancelled?Object.assign(new Error(\"Orbit OS request cancelled because a newer view was requested.\"),{code:\"ADMIN_REQUEST_CANCELLED\"}):aborted?Object.assign(new Error(\"Orbit OS request timed out after \"+Math.round(timeoutMs/1e3)+\" seconds: \"+path),{code:\"ADMIN_REQUEST_TIMEOUT\"}):error}finally{clearTimeout(timer),externalSignal&&externalAbortHandler&&externalSignal.removeEventListener(\"abort\",externalAbortHandler),readSlot&&(knowledgeRead?releaseOrbitKnowledgeReadV597():releaseOrbitReadV596())}})();method===\"GET\"&&!externalSignal&&orbitGetRequests.set(requestKey,pending);try{return await pending}finally{!externalSignal&&orbitGetRequests.get(requestKey)===pending&&orbitGetRequests.delete(requestKey)}}async function adminAuthRequestV329(path,options){const request=Object.assign({},options||{}),method=String(request.method||\"GET\").toUpperCase(),url=API_BASE+path+(path.includes(\"?\")?\"&\":\"?\")+\"secret=\"+encodeURIComponent(secret)+\"&_=\"+Date.now(),headers={\"Content-Type\":\"application/json\"};adminSessionTokenV329&&(headers.Authorization=\"Bearer \"+adminSessionTokenV329);const controller=new AbortController;let timedOut=!1;const timer=setTimeout(()=>{timedOut=!0,controller.abort()},15e3);try{const response=await fetch(url,{method,headers,body:request.body,cache:\"no-store\",signal:controller.signal});if(!(response.headers.get(\"content-type\")||\"\").includes(\"application/json\")){try{await response.body?.cancel()}catch{}throw Object.assign(new Error(\"The server is unavailable. This is not a password rejection.\"),{status:response.status>=400?response.status:503,code:\"AUTH_CONNECTION_UNAVAILABLE\"})}const data=await response.json();if(!response.ok||data.success===!1)throw Object.assign(new Error(data.error||\"Admin authentication failed.\"),{status:response.status,data});return data}catch(error){throw error?.name===\"AbortError\"?Object.assign(new Error(timedOut?\"Orbit Admin connection timed out; retrying safely.\":\"Orbit Admin request was superseded; retrying safely.\"),{code:timedOut?\"AUTH_REQUEST_TIMEOUT\":\"AUTH_REQUEST_CANCELLED\",transient:!0}):error}finally{clearTimeout(timer)}}function setAdminSessionV329(token,user){adminSessionTokenV329=String(token||\"\"),adminCurrentUserV329=user||null,state.adminAuthenticated=!!(adminSessionTokenV329&&adminCurrentUserV329);try{adminSessionTokenV329?sessionStorage.setItem(\"orbitAdminSessionV329\",adminSessionTokenV329):sessionStorage.removeItem(\"orbitAdminSessionV329\")}catch{}$2(\"orbitAdminApplication\")?.classList.toggle(\"orbit-auth-locked\",!state.adminAuthenticated),$2(\"orbitAdminAuthGate\")&&($2(\"orbitAdminAuthGate\").hidden=state.adminAuthenticated),$2(\"orbitAdminUserPill\")&&($2(\"orbitAdminUserPill\").hidden=!state.adminAuthenticated,$2(\"orbitAdminUserPill\").textContent=state.adminAuthenticated?adminCurrentUserV329.username+\" \\xB7 \"+adminCurrentUserV329.role:\"\"),$2(\"orbitAdminLogoutButton\")&&($2(\"orbitAdminLogoutButton\").hidden=!state.adminAuthenticated)}function adminSessionQueryV329(){return adminSessionTokenV329?\"&admin_session=\"+encodeURIComponent(adminSessionTokenV329):\"\"}function showAdminAuthGateV329(status,error){window.OrbitEventbriteDrafts?.deactivate({clear:!0});const setup=!!status?.setupRequired;state.adminAuthenticated=!1,$2(\"orbitAdminAuthGate\")&&($2(\"orbitAdminAuthGate\").dataset.connectionRetry=\"false\");for(const id of[\"orbitAdminAuthUsername\",\"orbitAdminAuthPassword\"])$2(id)&&($2(id).disabled=!1);$2(\"orbitAdminAuthGate\")&&($2(\"orbitAdminAuthGate\").hidden=!1,$2(\"orbitAdminAuthGate\").dataset.setupRequired=setup?\"true\":\"false\"),$2(\"orbitAdminApplication\")?.classList.add(\"orbit-auth-locked\"),text(\"orbitAdminAuthMode\",setup?\"First secure setup\":\"Second security gate\"),text(\"orbitAdminAuthTitle\",setup?\"Create the first Orbit Admin account\":\"Sign in to Orbit OS\"),text(\"orbitAdminAuthDescription\",setup?\"The private secret URL was accepted. Create the owner account that will protect Orbit OS from now on.\":\"The private secret URL was accepted. Enter your Orbit Admin username and password to continue.\"),$2(\"orbitAdminAuthSubmit\")&&($2(\"orbitAdminAuthSubmit\").textContent=setup?\"Create Owner Account\":\"Sign in\");const result=$2(\"orbitAdminAuthResult\");result&&(result.hidden=!error,result.textContent=error||\"\",result.classList.toggle(\"error\",!!error))}function showAdminConnectionUnavailableV596(error){if(window.OrbitEventbriteDrafts?.deactivate({clear:!0}),(error?.status===401||error?.status===403)&&error?.code!==\"AUTH_CONNECTION_UNAVAILABLE\"){showAdminAuthGateV329({},error.message);return}state.adminAuthenticated=!1,$2(\"orbitAdminApplication\")?.classList.add(\"orbit-auth-locked\");const gate=$2(\"orbitAdminAuthGate\");gate&&(gate.hidden=!1,gate.dataset.connectionRetry=\"true\"),text(\"orbitAdminAuthMode\",\"Server connection interrupted\"),text(\"orbitAdminAuthTitle\",\"Orbit is temporarily unavailable\"),text(\"orbitAdminAuthDescription\",\"Your saved session has not been cleared. Retry the connection when the server is available; do not keep re-entering your password.\"),text(\"orbitAdminAuthSubmit\",\"Retry connection\");for(const id of[\"orbitAdminAuthUsername\",\"orbitAdminAuthPassword\"])$2(id)&&($2(id).disabled=!0);const result=$2(\"orbitAdminAuthResult\");result&&(result.hidden=!1,result.textContent=error?.message||\"Connection failed.\",result.classList.add(\"error\"))}async function initialiseAdminSessionV329(){if(!secret)return showAdminAuthGateV329({},\"Missing ADMIN_SECRET.\"),!1;let status=null,lastError=null;for(let attempt=0;attempt<3;attempt++)try{status=await adminAuthRequestV329(\"/api/admin/auth/status\"),lastError=null;break}catch(error){lastError=error;const transient=[\"AUTH_REQUEST_TIMEOUT\",\"AUTH_REQUEST_CANCELLED\",\"AUTH_CONNECTION_UNAVAILABLE\"].includes(error?.code)||!error?.status&&/network|fetch|connection/i.test(String(error?.message||\"\"));if(!adminSessionTokenV329||!transient||attempt===2)throw error;await new Promise(resolve=>setTimeout(resolve,400*(attempt+1)))}if(!status&&lastError)throw lastError;if(status.authenticated&&status.user&&adminSessionTokenV329)return setAdminSessionV329(adminSessionTokenV329,status.user),!0;adminSessionTokenV329=\"\";try{sessionStorage.removeItem(\"orbitAdminSessionV329\")}catch{}return showAdminAuthGateV329(status,null),!1}async function submitAdminAuthV329(event){if(event.preventDefault(),$2(\"orbitAdminAuthGate\")?.dataset.connectionRetry===\"true\"){const retry=$2(\"orbitAdminAuthSubmit\");setLoading(retry,!0);try{await initialiseAdminSessionV329()&&await startAuthenticatedOrbitAdminV329()}catch(error){showAdminConnectionUnavailableV596(error)}finally{setLoading(retry,!1)}return}const setup=$2(\"orbitAdminAuthGate\")?.dataset.setupRequired===\"true\",username=$2(\"orbitAdminAuthUsername\")?.value||\"\",password=$2(\"orbitAdminAuthPassword\")?.value||\"\",button2=$2(\"orbitAdminAuthSubmit\");setLoading(button2,!0);try{const data=await adminAuthRequestV329(setup?\"/api/admin/auth/setup\":\"/api/admin/auth/login\",{method:\"POST\",body:JSON.stringify({username,password})});setAdminSessionV329(data.token,data.user),startAuthenticatedOrbitAdminV329()}catch(err){const r=$2(\"orbitAdminAuthResult\");r&&(r.hidden=!1,r.classList.add(\"error\"),r.textContent=err.message||err)}finally{setLoading(button2,!1)}}async function logoutAdminV329(){try{adminSessionTokenV329&&await adminAuthRequestV329(\"/api/admin/auth/logout\",{method:\"POST\",body:\"{}\"})}catch{}setAdminSessionV329(\"\",null),adminRuntimeStartedV329=!1,showAdminAuthGateV329({},\"Signed out securely.\")}async function loadAdminUsersV329(){text(\"adminAccessCurrentUser\",adminCurrentUserV329?adminCurrentUserV329.username+\" \\xB7 \"+adminCurrentUserV329.role:\"Not signed in\");const canManage=[\"owner\",\"admin\"].includes(adminCurrentUserV329?.role);if($2(\"adminCreateUserSection\")&&($2(\"adminCreateUserSection\").hidden=!canManage),!canManage){$2(\"adminUsersTable\").innerHTML=\"<div class='orbit-empty-state'><strong>\"+esc(adminCurrentUserV329?.role||\"Viewer\")+\" access</strong><span>User management requires Owner or Admin access.</span></div>\";return}const data=await api(\"/api/admin/auth/users\",{cacheMs:0});$2(\"adminUsersTable\").innerHTML=table([\"Username\",\"Role\",\"Status\",\"Last login\",\"Actions\"],(data.users||[]).map(user=>{const opts=(data.roles||[]).map(role=>\"<option value='\"+esc(role)+\"'\"+(role===user.role?\" selected\":\"\")+\">\"+esc(role)+\"</option>\").join(\"\");return\"<tr><td><input data-admin-user-name='\"+esc(user.id)+\"' value='\"+esc(user.username)+\"' aria-label='Username'></td><td><select data-admin-user-role='\"+esc(user.id)+\"'>\"+opts+\"</select></td><td>\"+(user.active?\"Active\":\"Disabled\")+\"</td><td>\"+esc(prettyDate(user.lastLoginAt))+\"</td><td><button type='button' class='secondary' data-admin-user-save='\"+esc(user.id)+\"'>Save User</button> <button type='button' class='secondary' data-admin-user-toggle='\"+esc(user.id)+\"' data-active='\"+(user.active?\"false\":\"true\")+\"'>\"+(user.active?\"Disable\":\"Enable\")+\"</button> <button type='button' class='secondary' data-admin-user-reset='\"+esc(user.id)+\"'>Reset Password</button> <button type='button' class='secondary orbit-danger-button' data-admin-user-delete='\"+esc(user.id)+\"' data-admin-user-label='\"+esc(user.username)+\"'>Delete</button></td></tr>\"}),\"No Admin users found.\")}function completeAdminLoadingNoticeV560(){const notice=$2(\"adminNotice\");notice&&String(notice.textContent||\"\").trim()===\"Loading Orbit OS...\"&&(notice.textContent=\"Orbit OS ready\",notice.title=\"Orbit OS ready\",notice.classList.remove(\"error\"))}async function startAuthenticatedOrbitAdminV329(){!state.adminAuthenticated||adminRuntimeStartedV329||(adminRuntimeStartedV329=!0,syncServerTimeV74(),adminRuntimeTimersStartedV329||(adminRuntimeTimersStartedV329=!0,setInterval(tickServerTimeV74,1e3),setInterval(syncServerTimeV74,3e5),setInterval(()=>{state.adminAuthenticated&&[\"dashboard\",\"operations\"].includes(state.currentModule)&&!document.hidden&&refreshOperationsWorkspaceV296().catch(()=>{})},2e4)),window.orbitRestoringAdminState=!0,activateModule(orbitStartupModuleV329,savedOrbitSubtab(orbitStartupModuleV329),{historyMode:\"none\"}),window.orbitRestoringAdminState=!1,restoreAdminModuleAfterRefresh(),completeAdminLoadingNoticeV560(),loadVendorTaskCountsV461().catch(()=>{}),setTimeout(()=>{state.adminAuthenticated&&[\"dashboard\",\"operations\"].includes(state.currentModule)&&runHomeHealthChecksV554({announce:!1}).catch(error=>console.warn(\"Home health checks deferred\",error?.message||error))},60),setTimeout(()=>resumeDirectoryPipelineV580().catch(()=>{}),250))}function monthKeyValue(){return($2(\"fulfilmentMonthKeyInput\")?.value||currentMonthKey()).trim()}function syncMonthInputs(value){const key=value||currentMonthKey(),input=$2(\"fulfilmentMonthKeyInput\");input&&!input.value&&(input.value=key)}function renderFulfilmentCycleOptions(centre){const hint=$2(\"fulfilmentCycleHint\");if(!hint)return;const cycles=Array.isArray(centre?.activeCycleKeys)?centre.activeCycleKeys:[];hint.textContent=cycles.length?\"Every parcel that still needs fulfilment stays here. Funded cycle is context only. Open cycles: \"+cycles.join(\", \")+\".\":\"Every parcel that still needs fulfilment stays here. Funded month is context only.\"}function prizeTitleValue(){return($2(\"prizeTitleInput\")?.value||\"Orbit Collectors Club monthly prize\").trim()}let homeSummaryReadV542=0;async function loadSummary(period,forceFresh=!1){const read=++homeSummaryReadV542,selectedPeriod=period||state.cardShowHomePeriodV600||$2(\"dashboardPeriodSelectLegacyV599\")?.value||\"today\",fresh=forceFresh?\"&refresh=\"+Date.now():\"\",summary=await api(\"/api/admin/summary?period=\"+encodeURIComponent(selectedPeriod)+fresh,{cacheMs:forceFresh?0:5e3});if(read!==homeSummaryReadV542)return summary;if(!summary||summary.success===!1||!summary.snapshot)throw new Error(\"Home summary was not returned. Previous figures are unchanged.\");return state.summary=summary,text(\"metricTotalMembers\",state.summary.totalMembers),text(\"metricActiveMembers\",state.summary.activeMembers),text(\"metricPendingMembers\",state.summary.pendingMembers),text(\"metricPendingPacks\",state.summary.pendingPacks),text(\"metricPrizeClaims\",Number(state.summary.awaitingPrizeClaims||0)+Number(state.summary.redeemedGoldenTickets||0)),updateSupportBadgeV540(state.summary),renderDashboardSnapshot(state.summary),state.summary}function dashboardPeriodLabel(period){return{today:\"Today\",yesterday:\"Yesterday\",last_7_days:\"Last 7 days\",last_30_days:\"Last 30 days\",this_month:\"This month\",last_month:\"Last month\",this_year:\"This year\"}[period]||\"Today\"}function renderDashboardSnapshot(summary,vendorMetrics=state.vendorHomeMetricsV5991||{}){const snapshot=summary.snapshot||{};text(\"dashboardPeriodTitle\",dashboardPeriodLabel(summary.period)),text(\"snapshotTicketsPurchased\",snapshot.ticketsPurchased??0),text(\"snapshotTicketOrders\",snapshot.ticketOrders??0),text(\"snapshotShows\",snapshot.shows??0),text(\"snapshotTicketRevenue\",\"\\xA3\"+Number(snapshot.ticketRevenue||0).toFixed(2)),text(\"snapshotVendorOrders\",vendorMetrics.vendorOrders==null?\"\\u2014\":vendorMetrics.vendorOrders),text(\"snapshotTablesSold\",vendorMetrics.tablesSold==null?\"\\u2014\":vendorMetrics.tablesSold),text(\"snapshotVendorTableRevenue\",vendorMetrics.vendorTableRevenue==null?\"\\u2014\":\"\\xA3\"+Number(vendorMetrics.vendorTableRevenue||0).toFixed(2)),text(\"snapshotVendorUpcomingShows\",vendorMetrics.upcomingShows==null?\"\\u2014\":vendorMetrics.upcomingShows),text(\"snapshotNewSignups\",snapshot.newSignups??0),text(\"snapshotUpgradeMembers\",snapshot.upgradeMembers??0),text(\"snapshotUpgradeNowPayments\",snapshot.upgradeNowPayments==null?\"\\u2014\":snapshot.upgradeNowPayments),text(\"snapshotDirectMembers\",snapshot.newSignups??snapshot.directOnePoundMembers??0),text(\"snapshotRenewals\",snapshot.successfulRenewals??0),text(\"snapshotLabelsGenerated\",snapshot.labelsGenerated??0),text(\"snapshotParcelsDispatched\",snapshot.parcelsDispatched??0)}function taskActionLabel(module,text2){const value=String(text2||\"\").toLowerCase();return module===\"support\"||/message|reply/.test(value)?\"Reply\":/address/.test(value)?\"Fix address\":module===\"shipping\"||/parcel|label/.test(value)?\"Review parcels\":module===\"automation\"||/draw|winner/.test(value)?\"Review winner\":module===\"comms\"||/email/.test(value)?\"Review email\":\"Review\"}function renderDashboardPriorities(summary){const target=$2(\"dashboardPriorityList\");if(!target)return;const items=[];Number(summary.unansweredTickets||0)>0&&items.push({title:summary.unansweredTickets+\" customer message\"+(summary.unansweredTickets===1?\"\":\"s\")+\" awaiting reply\",copy:\"Customer contact is the first priority.\",module:\"support\"}),Number(summary.pendingPacks||0)>0&&items.push({title:summary.pendingPacks+\" parcel\"+(summary.pendingPacks===1?\"\":\"s\")+\" awaiting shipping action\",copy:\"Review labels, packing and dispatch status.\",module:\"shipping\"}),Number(summary.redeemedGoldenTickets||0)>0&&items.push({title:summary.redeemedGoldenTickets+\" Golden Ticket prize\"+(summary.redeemedGoldenTickets===1?\"\":\"s\")+\" awaiting action\",copy:\"Open Special Shipments to prepare dispatch.\",module:\"shipping\",tab:\"special\"}),Number(summary.completedDrawsAwaitingDispatch||0)>0&&items.push({title:summary.completedDrawsAwaitingDispatch+\" draw prize\"+(summary.completedDrawsAwaitingDispatch===1?\"\":\"s\")+\" awaiting fulfilment\",copy:\"Open Prize Fulfilment to print the label and dispatch the winner parcel.\",module:\"shipping\",tab:\"prizes\"}),Number(summary.failedEmails||0)>0&&items.push({title:summary.failedEmails+\" email failure\"+(summary.failedEmails===1?\"\":\"s\")+\" requires review\",copy:\"Open Communications to inspect the provider error.\",module:\"comms\"}),Number(summary.blockedAddressPacks||0)>0&&items.unshift({title:summary.blockedAddressPacks+\" shipment\"+(summary.blockedAddressPacks===1?\"\":\"s\")+\" blocked by address details\",copy:\"Sync Recharge, sync Shopify or edit the address manually.\",module:\"shipping\",tab:\"attention\"}),items.length||items.push({title:\"No urgent operator actions\",copy:\"Support, prizes, parcels and communications are clear.\",module:\"dashboard\"}),target.innerHTML=items.map(function(item){const action=taskActionLabel(item.module,item.title+\" \"+item.copy);return\"<button type='button' class='orbit-priority-item' data-alert-module='\"+esc(item.module)+\"'\"+(item.tab?\" data-module-tab='\"+esc(item.tab)+\"'\":\"\")+\"><strong>\"+esc(item.title)+\"</strong><span>\"+esc(item.copy)+\"</span><b>\"+esc(action)+\"</b></button>\"}).join(\"\")}function renderDashboardAlerts(alerts){const target=$2(\"dashboardAlerts\");target&&(target.innerHTML=alerts.map(function(alert2){return\"<button type='button' class='orbit-dashboard-alert \"+esc(alert2.priority||\"normal\")+\"' data-alert-module='\"+esc(alert2.targetModule||\"dashboard\")+\"'\"+(alert2.moduleTab?\" data-module-tab='\"+esc(alert2.moduleTab)+\"'\":\"\")+\"><span class='orbit-alert-count'>\"+esc(alert2.count??0)+\"</span><span><strong>\"+esc(alert2.title||\"Alert\")+\"</strong><small>\"+esc(alert2.message||\"\")+\"</small></span><b>Open</b></button>\"}).join(\"\"))}let fulfilmentReadV542=0;async function loadFulfilment(button2,forceFresh=!1){const read=++fulfilmentReadV542,originalText=button2?button2.textContent:\"\",status=$2(\"fulfilmentLoadStatusV618\");button2&&(setLoading(button2,!0),button2.textContent=\"Refreshing...\"),status&&(status.hidden=!1,status.setAttribute(\"role\",\"status\"),status.textContent=\"Loading monthly parcels\\u2026\");const suffix=forceFresh?\"?refresh=\"+Date.now():\"\",options={cacheMs:forceFresh?0:void 0,timeoutMs:2e4},specialRead=api(\"/api/admin/shipping/special-shipments\"+suffix,options).catch(err=>({success:!1,shipments:[],error:String(err.message||err)}));try{const centre=await api(\"/api/admin/fulfilment/centre\"+suffix,options);if(read!==fulfilmentReadV542)return;if(centre?.success===!1||!centre)throw new Error(\"Fulfilment could not refresh. Previous figures are unchanged.\");state.fulfilmentCentre=centre,state.fulfilment=centre,renderFulfilmentCycleOptions(centre),renderQueueSummary(centre.summary||{}),renderFulfilmentCentre(centre),renderFulfilmentTable(centre.packs||[]),renderFulfilmentHistory(centre.historyPacks||[],[]),renderFulfilmentLabelsV516(centre.packs||[],centre.historyPacks||[],[]),status&&(status.textContent=\"Monthly parcels loaded. Checking prizes and loyalty orders\\u2026\");const special=await specialRead;if(read!==fulfilmentReadV542)return;state.specialShipments=special,renderFulfilmentHistory(centre.historyPacks||[],special.shipments||[]),renderSpecialShipments(special.shipments||[]),renderFulfilmentLabelsV516(centre.packs||[],centre.historyPacks||[],special.shipments||[]),$2(\"shippingSpecialCount\")&&($2(\"shippingSpecialCount\").textContent=special.success===!1?\"\\u2014\":String((special.shipments||[]).length)),status&&(status.hidden=special.success!==!1,status.textContent=special.success===!1?\"Monthly parcels are loaded. Prizes and loyalty orders could not load; use Refresh to retry.\":\"Parcels loaded.\"),button2&&setNotice2(\"Fulfilment refreshed \\u2014 all outstanding monthly parcels are shown together.\")}catch(error){throw read===fulfilmentReadV542&&status&&(status.hidden=!1,status.setAttribute(\"role\",\"alert\"),status.innerHTML=\"Monthly parcels could not load. \"+esc(error.message||error)+\" <button type='button' id='retryFulfilmentV618' class='secondary'>Retry</button>\",$2(\"retryFulfilmentV618\")?.addEventListener(\"click\",()=>loadFulfilment(null,!0).catch(()=>{}))),error}finally{button2&&(setLoading(button2,!1),button2.textContent=originalText||\"Refresh Fulfilment\")}}async function reconcileDeliveryStatuses(button2){const originalText=button2?button2.textContent:\"\";button2&&(setLoading(button2,!0),button2.textContent=\"Checking carriers...\");const resultTarget=$2(\"deliveryReconciliationResult\");try{const result=await api(\"/api/admin/fulfilment/reconcile-deliveries\",{method:\"POST\",body:JSON.stringify({limit:250}),timeoutMs:12e4,cacheMs:0});resultTarget&&(resultTarget.textContent=\"Checked \"+Number(result.checkedCount||0)+\" \\xB7 Updated \"+Number(result.deliveredCount||0)+\" delivered\"),await loadFulfilment();const delivered=Number(result.deliveredCount||0),checked=Number(result.checkedCount||0),failed=Number(result.failedCount||0),skipped=Number(result.skippedCount||0),detail=failed||skipped?\" \"+failed+\" lookup failure(s), \"+skipped+\" skipped.\":\"\";return setNotice2(\"Delivery status check complete. Checked \"+checked+\" tracked parcel(s); \"+delivered+\" moved to Delivered.\"+detail,!!failed),result}finally{button2&&(setLoading(button2,!1),button2.textContent=originalText||\"Update Delivery Status\")}}async function reloadSpecialShipments(){try{state.specialShipments=await api(\"/api/admin/shipping/special-shipments\"),renderSpecialShipments(state.specialShipments?.shipments||[]),renderFulfilmentLabelsV516(state.fulfilment?.packs||[],state.fulfilmentCentre?.historyPacks||[],state.specialShipments?.shipments||[]),$2(\"shippingSpecialCount\")&&($2(\"shippingSpecialCount\").textContent=String((state.specialShipments?.shipments||[]).length))}catch(err){setNotice2(\"Could not refresh Special Shipments: \"+(err.message||err),!0)}}async function loadShippingConfig(){state.shippingConfig=await api(\"/api/admin/shipping/config\"),renderShippingConfig(state.shippingConfig)}let drawReadPromiseV540=null;async function loadDraws(){if(drawReadPromiseV540)return drawReadPromiseV540;drawReadPromiseV540=(async()=>{state.draws=await api(\"/api/admin/prize-draws?limit=100\"),renderDrawsTable(state.draws.draws||[]),await loadDrawEligibleMembers()})();try{return await drawReadPromiseV540}finally{drawReadPromiseV540=null}}function renderDrawPoolCountV540(){const node=$2(\"drawEligibleCount\");node&&(node.textContent=state.drawPoolLoadedV540===!0?String((state.drawEligibleMembers||[]).filter(m=>m.drawExcluded!==!0).length):\"\\u2014\",node.title=state.drawPoolLoadedV540===!0?\"Eligible entries in the loaded active-member pool, excluding members marked Excluded\":\"Eligible member pool has not loaded successfully\")}async function loadDrawEligibleMembers(){try{const data=await api(\"/api/admin/members/search?status=active&limit=500\");state.drawEligibleMembers=data.members||data.results||[],state.drawPoolLoadedV540=!0,renderDrawEligibleMembers()}catch(err){state.drawPoolLoadedV540=!1,renderDrawPoolCountV540();const target=$2(\"drawEligibleMembersTable\");target&&(target.textContent=\"Could not load eligible members: \"+(err.message||err))}}function renderDrawEligibleMembers(){renderDrawPoolCountV540();const target=$2(\"drawEligibleMembersTable\");if(!target)return;const query=String($2(\"drawEligibleSearch\")?.value||\"\").trim().toLowerCase(),rows=(state.drawEligibleMembers||[]).filter(function(m){const hay=[m.memberNumber,m.member_number,m.name,m.fullName,m.email].join(\" \").toLowerCase();return!query||hay.includes(query)});target.innerHTML=table([\"Member\",\"Email\",\"Draw status\",\"Member Since\",\"Action\"],rows.map(function(m){const excluded=m.drawExcluded===!0,lookup=m.memberNumber||m.member_number||m.subscriptionId||m.email||\"\";return\"<tr class='\"+(excluded?\"orbit-draw-member-excluded\":\"orbit-draw-member-eligible\")+\"'><td><strong>\"+esc(m.memberNumber||m.member_number||\"\\u2014\")+\"</strong><br><small>\"+esc(m.name||m.fullName||\"Member\")+\"</small></td><td>\"+esc(m.email||\"\\u2014\")+\"</td><td><span class='orbit-pill \"+(excluded?\"warning\":\"success\")+\"'>\"+(excluded?\"EXCLUDED\":\"Eligible\")+\"</span>\"+(excluded?\"<small class='orbit-draw-excluded-note'>Will not be entered in monthly draws</small>\":\"\")+\"</td><td>\"+esc(prettyShortDate(m.createdAt||m.memberSince||m.signupDate))+\"</td><td><button type='button' class='\"+(excluded?\"secondary\":\"danger\")+\"' data-draw-exclusion='\"+esc(lookup)+\"' data-excluded='\"+(excluded?\"false\":\"true\")+\"'>\"+(excluded?\"Include in draws\":\"Exclude from draws\")+\"</button></td></tr>\"}),\"No active members found.\")}function humanDrawStatus(value){return humanStatus(value)}function ensureGoldenTicketManager(){const table2=$2(\"goldenContentTableRuntime\")||$2(\"goldenContentTable\")||$2(\"goldenTable\");return table2?table2.closest(\"article\")||table2.parentElement||table2:null}async function loadGolden(){ensureGoldenTicketManager();const target=$2(\"goldenContentTableRuntime\")||$2(\"goldenContentTable\")||$2(\"goldenTable\");target&&(target.innerHTML=\"<div class='orbit-empty-state'><strong>Loading Golden Tickets\\u2026</strong><span>Reading active, claimed and completed tickets.</span></div>\");try{return state.golden=await Promise.race([api(\"/api/admin/golden-tickets?limit=150\"),new Promise((_,reject)=>setTimeout(()=>reject(new Error(\"Golden Ticket Manager timed out\")),12e3))]),renderGoldenTable(state.golden.tickets||[]),state.golden}catch(err){throw state.golden={tickets:[],error:err.message||String(err)},target&&(target.innerHTML=\"<div class='orbit-empty-state orbit-error-state'><strong>Golden Ticket Manager could not load</strong><span>\"+esc(state.golden.error)+\"</span><button type='button' class='secondary' data-refresh='golden'>Try again</button></div>\"),err}}async function loadEvents(){state.events=await api(\"/api/admin/workflows/events?limit=100\"),renderEventsTable(state.events.events||[])}async function loadScheduler(){$2(\"automationStateBadge\")&&text(\"automationStateLabel\",\"Checking\");try{state.scheduler=await Promise.race([api(\"/api/admin/scheduler/status\"),new Promise((_,reject)=>setTimeout(()=>reject(new Error(\"Scheduler status timed out\")),8e3))])}catch(err){state.scheduler={automationEnabled:!1,runningInProcess:!1,unavailable:!0,recentRuns:[],config:{}},text(\"automationStateLabel\",\"Not checked\"),text(\"automationStateReason\",err.message||\"Automatic jobs could not be checked. Open Connected services or Developer & testing for details.\");const badge2=$2(\"automationStateBadge\");return badge2&&(badge2.classList.remove(\"enabled\",\"disabled\"),badge2.classList.add(\"warning\")),state.scheduler}if(!state.scheduler||state.scheduler.success===!1){state.scheduler={automationEnabled:!1,runningInProcess:!1,unavailable:!0,recentRuns:[],config:{},error:state.scheduler?.error||\"Scheduler unavailable\"},text(\"automationStateLabel\",\"Not checked\"),text(\"automationStateReason\",state.scheduler.error||\"Automatic jobs have not been checked yet.\");const unavailableBadge=$2(\"automationStateBadge\");return unavailableBadge&&(unavailableBadge.classList.remove(\"enabled\",\"disabled\"),unavailableBadge.classList.add(\"warning\")),state.scheduler}renderSystemHealth(state.scheduler.systemHealth||{});const drawAutomatic=!!(state.scheduler.automationEnabled&&state.scheduler.midMonthDrawEnabled),drawScheduleState=state.scheduler.drawSchedule||{},drawDue=!!(drawScheduleState.due&&!drawScheduleState.completed),drawNextLabel=drawDue?\"Due now \\xB7 \"+prettyDate(drawScheduleState.scheduledAt||state.scheduler.nextMidMonthDrawAt):prettyDate(state.scheduler.nextMidMonthDrawAt);healthCard(\"healthWebhooks\",\"Monthly Draw\",drawAutomatic?drawDue?\"warning\":\"enabled\":\"disabled\",drawAutomatic?drawDue?\"Automatic \\xB7 draw is due now and the exact scheduler is retrying safely\":\"Automatic \\xB7 Next draw \"+drawNextLabel:\"Automatic draw is disabled \\u2014 open Draw Automation\"),renderIntegrationSettings(state.health||{}),renderSchedulerStatus(state.scheduler),text(\"automationStateReason\",state.scheduler.automationEnabled?state.scheduler.runningInProcess?\"A scheduled job is running now.\":\"Scheduler connected. Due jobs are checked automatically.\":\"Scheduler connected, but global automation is disabled in the backend environment.\"),renderScheduledRunsTable(state.scheduler.recentRuns||[]),renderDrawAutomationV83(state.scheduler);const cfg=state.scheduler.config||{};if($2(\"drawAutomationEnabled\")&&($2(\"drawAutomationEnabled\").checked=!!state.scheduler.automationEnabled),$2(\"drawMonthlyEnabled\")&&($2(\"drawMonthlyEnabled\").checked=!!state.scheduler.midMonthDrawEnabled),$2(\"drawMonthlyHour\")&&($2(\"drawMonthlyHour\").value=String(cfg.midMonthDrawHourLocal??cfg.midMonthDrawHourUtc??14)),$2(\"drawMonthlyPrizeTitle\")&&($2(\"drawMonthlyPrizeTitle\").value=cfg.monthlyPrizeTitle||\"Orbit Collectors Club monthly prize\"),$2(\"drawSettingsSummary\")){const c=state.scheduler.config||{},globalOn=state.scheduler.automationEnabled!==!1,drawOn=!!state.scheduler.midMonthDrawEnabled,reason=globalOn?drawOn?drawDue?\"The current month's draw is due and the exact scheduler is retrying until it completes\":\"The automatic draw is configured\":\"The monthly draw job is disabled\":\"Global automation is disabled\";$2(\"drawSettingsSummary\").innerHTML=\"<strong>Automatic draw: \"+(globalOn&&drawOn?drawDue?\"Due now\":\"Enabled\":\"Needs setup\")+\"</strong><span>\"+esc(reason)+\"</span><span>Scheduled day: \"+(c.midMonthDrawDay||15)+\" at \"+String(c.midMonthDrawHourLocal??c.midMonthDrawHourUtc??14).padStart(2,\"0\")+\":00 UK time</span><span>\"+(drawDue?\"Due run: \":\"Next run: \")+esc(drawNextLabel)+\"</span>\";const guidance=$2(\"drawSettingsGuidance\");guidance&&(guidance.querySelector(\"span\").textContent=globalOn&&!drawOn?\"Open Draw Automation and enable the monthly draw job, then save the schedule.\":globalOn?drawDue?\"Do not run a second draw manually. The exact scheduler is safely retrying the same monthly draw commitment.\":\"The draw is enabled. Use Draw Automation to change the day, time or manual controls.\":\"Open Draw Automation and enable global automation first, then enable the monthly draw job.\")}const scheduleSummary=$2(\"v77DrawScheduleSummary\");if(scheduleSummary){const c=state.scheduler.config||{},enabled=!!(state.scheduler.automationEnabled&&state.scheduler.midMonthDrawEnabled);scheduleSummary.classList.toggle(\"success\",enabled),scheduleSummary.classList.toggle(\"warning\",!enabled),scheduleSummary.innerHTML=\"<strong>\"+(enabled?drawDue?\"Automatic draw due now\":\"Automatic draw enabled\":\"Automatic draw needs setup\")+\"</strong><span>Runs on day \"+esc(c.midMonthDrawDay||15)+\" at \"+esc(String(c.midMonthDrawHourLocal??c.midMonthDrawHourUtc??14).padStart(2,\"0\"))+\":00 UK time \\xB7 \"+(drawDue?\"Due run: \":\"Next run: \")+esc(drawNextLabel)+\"</span>\"}}function renderDrawAutomationV83(status){const summary=$2(\"drawAutomationSummaryV83\"),runsTarget=$2(\"drawAutomationRunsV83\");if(!summary&&!runsTarget)return;const config=status?.config||{},recent=(status?.recentRuns||[]).filter(function(run){return/draw|prize/i.test(String(run.workflow_type||run.type||\"\"))}),drawState=status?.drawSchedule||{},drawDue=!!(drawState.due&&!drawState.completed),nextLabel=drawDue?\"Due now \\xB7 \"+prettyDate(drawState.scheduledAt||status?.nextMidMonthDrawAt):prettyDate(status?.nextMidMonthDrawAt),lastSuccess=recent.find(run=>/success|completed/i.test(String(run.status||\"\"))),lastFailure=recent.find(run=>/fail|error/i.test(String(run.status||\"\")));summary&&(summary.innerHTML=[[\"Automation\",status?.automationEnabled?\"Enabled\":\"Paused\"],[\"Monthly draw\",status?.midMonthDrawEnabled?\"Enabled\":\"Disabled\"],[drawDue?\"Current draw\":\"Next scheduled draw\",nextLabel],[\"Schedule\",\"Day \"+(config.midMonthDrawDay||15)+\" at \"+String(config.midMonthDrawHourLocal??config.midMonthDrawHourUtc??14).padStart(2,\"0\")+\":00 UK time\"],[\"Last successful draw\",lastSuccess?prettyDate(lastSuccess.finished_at||lastSuccess.created_at):\"None recorded\"],[\"Last failed draw\",lastFailure?lastFailure.error||lastFailure.summary||\"Failed\":\"None recorded\"]].map(row=>\"<div><span>\"+esc(row[0])+\"</span><strong>\"+esc(row[1]||\"\\u2014\")+\"</strong></div>\").join(\"\")),runsTarget&&(runsTarget.innerHTML=table([\"Draw run\",\"Status\",\"Started\",\"Finished\",\"Summary\",\"Actions\"],recent.slice(0,20).map(function(run){const failed=/fail|error/i.test(String(run.status||\"\")),runKey=String(run.run_key||\"\"),action=failed&&runKey?\"<button type='button' class='secondary' data-delete-failed-draw-run='\"+esc(runKey)+\"'>Delete failed run</button>\":\"<span class='orbit-muted'>Protected</span>\";return\"<tr><td><strong>\"+esc(run.workflow_type||\"Monthly draw\")+\"</strong><br><small>\"+esc(runKey||run.month_key||\"\")+\"</small></td><td><span class='orbit-pill'>\"+esc(humanDrawStatus(run.status||\"unknown\"))+\"</span></td><td>\"+esc(prettyShortDate(run.created_at||run.started_at))+\"</td><td>\"+esc(prettyShortDate(run.finished_at))+\"</td><td>\"+esc(run.summary||run.error||\"\\u2014\")+\"</td><td>\"+action+\"</td></tr>\"}),\"No monthly draw automation runs have been recorded yet.\"))}document.addEventListener(\"click\",async function(event){const button2=event.target.closest(\"[data-delete-failed-draw-run]\");if(!button2)return;const runKey=String(button2.dataset.deleteFailedDrawRun||\"\").trim();if(runKey&&window.confirm(`Delete this failed Prize Draw run from automation history?\n\nThis only removes the failed scheduler attempt. It does not delete or change any winner, entrant commitment or fairness proof.`)){button2.disabled=!0;try{await api(\"/api/admin/scheduler/draw-runs/\"+encodeURIComponent(runKey),{method:\"DELETE\"}),setNotice2(\"Failed Prize Draw run deleted. Any frozen fairness commitment and winner evidence were preserved.\"),await loadScheduler()}catch(err){setNotice2(\"Failed Prize Draw run could not be deleted: \"+(err.message||err),!0),button2.disabled=!1}}});function ensureAutomationResolved(){const label=$2(\"automationStateLabel\");if(label&&/checking/i.test(label.textContent||\"\")){label.textContent=\"Not checked\",text(\"automationStateReason\",\"Automatic jobs have not been checked. Open Connected services or Developer & testing for details.\");const badge=$2(\"automationStateBadge\");badge&&(badge.classList.remove(\"enabled\",\"disabled\"),badge.classList.add(\"warning\"))}}setInterval(ensureAutomationResolved,3e3);function resolveStaleHealthCardsV171(){document.querySelectorAll(\".orbit-health-card\").forEach(function(card){const status=card.querySelector(\"strong\");if(!status||!/^checking$/i.test(String(status.textContent||\"\").trim()))return;const label=card.querySelector(\"span\")?.textContent||\"Service\";healthCard(card.id,label,\"unknown\",\"The live check did not return within 45 seconds. Use Diagnose now, then Check all now to retry.\")})}window.setTimeout(resolveStaleHealthCardsV171,45e3);async function loadBackendHealth(){const res=await fetch(API_BASE+\"/health\"),data=await res.json();if(!res.ok||data.success===!1)throw new Error(data.error||\"Backend health check failed.\");state.health=data,text(\"adminVersionLabel\",\"Backend \"+(data.version||\"\\u2014\"));const runtimeBackend=document.getElementById(\"orbitAdminRuntimeBackend\");return runtimeBackend&&(runtimeBackend.value=String(data.version||\"\\u2014\")),healthCard(\"healthBackend\",\"Backend\",data.status||\"healthy\",\"Version \"+(data.version||\"\\u2014\")),data}function renderTicketDiscountCodes(data){const target=$2(\"ticketDiscountCodeList\"),result=$2(\"ticketDiscountCodeResult\");if(!target)return;const items=Array.isArray(data?.items)?data.items:[];if(result&&(result.textContent=items.length?items.length+\" discount code\"+(items.length===1?\"\":\"s\")+\" configured.\":\"No ticket discount codes configured.\"),!items.length){target.innerHTML=\"<div class='orbit-empty'>Create your first Ticket Centre promotion above.</div>\";return}target.innerHTML=\"<table><thead><tr><th>Code</th><th>Discount</th><th>Status</th><th>Successful uses</th><th>Expiry</th><th>Source</th><th>Action</th></tr></thead><tbody>\"+items.map(function(item){const expiry=item.expiresAt?prettyShortDate(item.expiresAt):\"No expiry\",status=item.enabled?\"Active\":\"Disabled\",toggleLabel=item.enabled?\"Disable\":\"Reactivate\";return\"<tr><td><strong>\"+esc(item.code)+\"</strong></td><td>\"+esc(item.percentage)+\"%</td><td><span class='orbit-pill \"+(item.enabled?\"success\":\"other\")+\"'>\"+status+\"</span></td><td><strong>\"+esc(item.successfulUses||0)+\"</strong></td><td>\"+esc(expiry)+\"</td><td>\"+esc(item.source===\"legacy_environment\"?\"Legacy environment\":item.source||\"Managed\")+\"</td><td><div class='orbit-action-row'><button type='button' class='\"+(item.enabled?\"secondary\":\"primary\")+\"' data-toggle-ticket-discount='\"+esc(item.code)+\"' data-enabled='\"+(item.enabled?\"false\":\"true\")+\"'>\"+toggleLabel+\"</button><button type='button' class='danger' data-delete-ticket-discount='\"+esc(item.code)+\"'>Delete</button></div></td></tr>\"}).join(\"\")+\"</tbody></table>\"}async function loadTicketDiscountCodes(){const data=await api(\"/api/admin/ticket-discount-codes\",{cacheMs:0});return state.ticketDiscountCodes=data,renderTicketDiscountCodes(data),data}async function saveTicketDiscountCode(button2){const code=String($2(\"ticketDiscountCodeInput\")?.value||\"\").trim().toUpperCase().replace(/\\s+/g,\"\"),percentage=Number($2(\"ticketDiscountPercentInput\")?.value||0),expiresAt=String($2(\"ticketDiscountExpiryInput\")?.value||\"\").trim();if(!code)throw new Error(\"Enter a discount code.\");setLoading(button2,!0);try{await api(\"/api/admin/ticket-discount-codes\",{method:\"POST\",body:JSON.stringify({code,percentage,expiresAt:expiresAt?expiresAt+\"T23:59:59.999Z\":null,enabled:!0}),cacheMs:0}),$2(\"ticketDiscountCodeInput\")&&($2(\"ticketDiscountCodeInput\").value=\"\"),await loadTicketDiscountCodes(),setNotice2(\"Ticket discount code saved: \"+code)}finally{setLoading(button2,!1)}}function renderTicketSalesSummaryV418(summary){const target=$2(\"ticketSalesSummary\");if(!target)return;const periodLabel={\"7d\":\"Last 7 days\",\"30d\":\"Last 30 days\",\"90d\":\"Last 90 days\",\"365d\":\"Last 12 months\",all:\"All time\"}[summary?.period]||\"Selected period\";target.innerHTML=\"<div class='orbit-ticket-headline-card'><span>Tickets sold / issued</span><strong>\"+Number(summary?.totalTickets||0).toLocaleString(\"en-GB\")+\"</strong><small>Unique active admission tickets tied to the filtered ticket orders \\xB7 \"+esc(periodLabel)+(Number(summary?.duplicateTicketRowsExcluded||0)?\" \\xB7 \"+Number(summary.duplicateTicketRowsExcluded)+\" duplicate ticket row(s) excluded\":\"\")+\"</small></div><div class='orbit-ticket-headline-card'><span>Ticket orders</span><strong>\"+Number(summary?.orders||0).toLocaleString(\"en-GB\")+\"</strong><small>Completed / issued ticket orders \\xB7 \"+esc(periodLabel)+(Number(summary?.duplicateCheckoutRowsExcluded||0)?\" \\xB7 \"+Number(summary.duplicateCheckoutRowsExcluded)+\" duplicate lifecycle row(s) excluded\":\"\")+\"</small></div><div class='orbit-ticket-headline-card'><span>Add-ons sold</span><strong>\"+Number(summary?.addOns||0).toLocaleString(\"en-GB\")+\"</strong><small>Ticket-order add-ons \\xB7 \"+esc(periodLabel)+\"</small></div>\"}async function loadTicketSalesSummaryV418(){const params2=new URLSearchParams({period:$2(\"ticketAdminPeriod\")?.value||\"today\",search:$2(\"ticketAdminSearch\")?.value||\"\",eventName:$2(\"ticketAdminEventFilter\")?.value||\"all\",status:$2(\"ticketAdminStatusFilter\")?.value||\"all\"}),data=await api(\"/api/admin/ticket-checkouts/summary?\"+params2.toString(),{cacheMs:0});return renderTicketSalesSummaryV418(data.summary||data),data}let ticketAdminPageV457=1,ticketAdminSearchTimerV457=null,ticketAdminSortV497={key:\"created\",direction:\"desc\"};function ticketSortValueV497(row,key){return key===\"created\"?row.createdAt?new Date(row.createdAt).getTime():0:key===\"status\"?String(checkoutStatusLabel(row)||row.status||\"\").toLowerCase():key===\"event\"?((row.eventName||\"\")+\" \"+(row.eventDate||\"\")).toLowerCase():key===\"order\"?String(row.shopifyOrderName||row.shopifyOrderId||\"\").toLowerCase():key===\"email\"?String(row.customerEmail||row.email||\"\").toLowerCase():key===\"tickets\"?Number(row.ticketCount||0):\"\"}function ticketSortRowsV497(rows){const list=[...rows||[]],{key,direction}=ticketAdminSortV497;return list.sort((a,b)=>{const av=ticketSortValueV497(a,key),bv=ticketSortValueV497(b,key),cmp=typeof av==\"number\"&&typeof bv==\"number\"?av-bv:String(av).localeCompare(String(bv),\"en-GB\",{numeric:!0,sensitivity:\"base\"});return direction===\"desc\"?-cmp:cmp}),list}function ticketSortButtonV497(key,label){const active=ticketAdminSortV497.key===key,arrow=active?ticketAdminSortV497.direction===\"asc\"?\" \\u2191\":\" \\u2193\":\"\";return\"<button type='button' class='orbit-admin-table-sort-v497\"+(active?\" active\":\"\")+\"' data-ticket-sort-v497='\"+key+\"' aria-label='Sort tickets by \"+label+\"' aria-sort='\"+(active?ticketAdminSortV497.direction===\"asc\"?\"ascending\":\"descending\":\"none\")+\"'>\"+label+arrow+\"</button>\"}function csvCellV48304(value){const text2=String(value??\"\");return/[\",\\r\\n]/.test(text2)?'\"'+text2.replace(/\"/g,'\"\"')+'\"':text2}async function exportTicketPurchasersV48304(button2){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/ticket-checkouts/purchasers-export\",{cacheMs:0,timeoutMs:3e4}),rows=Array.isArray(data.rows)?data.rows:[],csv=[\"First Name,Last Name,Email address\"].concat(rows.map(row=>[csvCellV48304(row.firstName),csvCellV48304(row.lastName),csvCellV48304(row.email)].join(\",\"))).join(`\\r\n`),blob=new Blob([\"\\uFEFF\"+csv],{type:\"text/csv;charset=utf-8\"}),url=URL.createObjectURL(blob),a=document.createElement(\"a\"),day=new Date().toISOString().slice(0,10);a.href=url,a.download=\"orbit-ticket-purchasers-\"+day+\".csv\",document.body.appendChild(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(url),1e3),setNotice2(\"Ticket purchaser CSV exported: \"+rows.length+\" unique email\"+(rows.length===1?\"\":\"s\")+\".\")}finally{button2&&setLoading(button2,!1)}}async function reconcileShopifyTicketOrdersV530(button2){const status=$2(\"reconcileShopifyTicketOrdersStatusV530\");button2&&setLoading(button2,!0),status&&(status.textContent=\"Checking recent paid Shopify ticket orders\\u2026\");try{const result=await api(\"/api/admin/ticket-checkouts/reconcile-recent\",{method:\"POST\",body:JSON.stringify({limit:25,lookbackMinutes:10080}),cacheMs:0,timeoutMs:12e4});return status&&(status.textContent=\"Checked \"+Number(result.scanned||result.checked||0)+\" recent paid order(s); recovered \"+Number(result.fulfilled||0)+\".\"),await loadTicketOrderPageV457(1),setNotice2(\"Shopify ticket order reconciliation completed.\"),result}catch(err){throw status&&(status.textContent=\"Refresh failed: \"+(err.message||err)),err}finally{button2&&setLoading(button2,!1)}}async function loadTicketOrderPageV457(page=1){ticketAdminPageV457=Math.max(1,Number(page)||1);const params2=new URLSearchParams({limit:\"50\",page:String(ticketAdminPageV457),period:$2(\"ticketAdminPeriod\")?.value||\"today\",search:$2(\"ticketAdminSearch\")?.value||\"\",eventName:$2(\"ticketAdminEventFilter\")?.value||\"all\",status:$2(\"ticketAdminStatusFilter\")?.value||\"all\"}),recent=await api(\"/api/admin/ticket-checkouts/recent?\"+params2.toString(),{cacheMs:0}),summary={...recent.summary||{},rawCheckoutRows:recent.rawCheckoutRows,businessCandidateRows:recent.businessCandidateRows,excludedNonBusinessRows:recent.excludedNonBusinessRows,excludedSources:recent.excludedSources};return state.ticketCheckouts=recent,state.ticketSalesSummary=summary,renderShopifyCentre(state.shopify||{},recent),renderTicketSalesSummaryV418(summary),recent}async function loadShopify(){const[statusResult,recentResult]=await Promise.allSettled([api(\"/api/admin/shopify/status\",{cacheMs:15e3}),api(\"/api/admin/ticket-checkouts/recent?limit=50&page=1&period=\"+encodeURIComponent($2(\"ticketAdminPeriod\")?.value||\"today\"),{cacheMs:0})]);if(statusResult.status!==\"fulfilled\")throw statusResult.reason;const status=statusResult.value,recent=recentResult.status===\"fulfilled\"?recentResult.value:{success:!1,error:recentResult.reason?.message||String(recentResult.reason||\"Unknown error\"),checkouts:[]};state.shopify=status,state.ticketCheckouts=recent,renderShopifyCentre(status,recent),renderTicketSalesSummaryV418({...recent.summary||{},rawCheckoutRows:recent.rawCheckoutRows,businessCandidateRows:recent.businessCandidateRows,excludedNonBusinessRows:recent.excludedNonBusinessRows,excludedSources:recent.excludedSources}),loadTicketDiscountCodes().catch(function(err){const target=$2(\"ticketDiscountCodeResult\");target&&(target.textContent=\"Discount codes could not be loaded: \"+(err.message||err))});const connectedText=status.connected?\"connected\":\"not connected\";return healthCard(\"healthShopify\",\"Shopify\",connectedText,(status.shop||\"\\u2014\")+\" / checkout \"+(status.checkoutEnabled?\"enabled\":\"disabled\")),$2(\"settingsShopifySummary\")&&($2(\"settingsShopifySummary\").innerHTML=\"<strong>Connection: \"+(status.connected?\"Connected\":\"Not connected\")+\"</strong><span>Store: \"+esc(status.shop||\"\\u2014\")+\"</span><span>Checkout: \"+(status.checkoutEnabled?\"Enabled\":\"Disabled\")+\"</span><span>Ticket lifecycle webhooks: \"+esc(status.readyWebhookCount||0)+\"/\"+esc(status.requiredWebhookCount||4)+\" confirmed</span><span>Webhook signing secret: \"+(status.signingSecretConfigured?\"Configured\":\"MISSING\")+\"</span><span>Ticket launch: \"+(status.ticketSalesLaunchReady?\"READY\":\"NEEDS ATTENTION\")+\"</span>\"),setRepairStatus(\"settingsShopifyStatus\",status.connected&&status.checkoutEnabled?\"connected\":\"warning\"),{status,recent}}document.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-comms-quick]\");button2&&(event.preventDefault(),activateModule(\"comms\",button2.dataset.commsQuick,{routeKey:\"communications\",historyMode:\"push\"}))});let communicationsHistoryPageV462=1;function setCommsViewV462(view=\"inbox\"){const target=[\"templates\",\"history\",\"inbox\"].includes(view)?view:\"inbox\";state.currentCommsViewV540=target,rememberOrbitSubtab(\"comms\",target),document.querySelectorAll(\"[data-comms-view]\").forEach(node=>node.hidden=node.dataset.commsView!==target),document.querySelectorAll(\"[data-comms-quick]\").forEach(button2=>{const active=button2.dataset.commsQuick===target;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-current\",active?\"page\":\"false\")}),document.querySelectorAll('[data-workspace-group=\"communications\"] [data-module-nav]').forEach(button2=>{const active=button2.dataset.commsOpen===target;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")}),state.adminAuthenticated&&(target===\"history\"&&loadCommunicationsHistoryV462(1).catch(err=>setNotice2(\"Email history unavailable: \"+(err.message||err),!0)),target===\"templates\"&&loadCommunications().then(()=>{if(canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())===\"card-shows\")return loadVendorClubEmailsV621()}).catch(err=>setNotice2(\"Email templates unavailable: \"+(err.message||err),!0)),target===\"inbox\"&&loadResendInboxV529().catch(err=>{const el=$2(\"resendInboxStatusV529\");el&&(el.hidden=!1,el.textContent=\"Inbox unavailable: \"+(err.message||err))}))}function memberSupportNeedsReplyV689(ticket){const status=String(ticket?.status||\"open\").toLowerCase();if([\"resolved\",\"closed\",\"cancelled\",\"archived\"].includes(status))return!1;const sender=String(ticket?.last_sender||ticket?.lastSender||\"\").toLowerCase();return[\"member\",\"customer\"].includes(sender)?!0:[\"admin\",\"staff\",\"orbit\"].includes(sender)?!1:Object.prototype.hasOwnProperty.call(ticket||{},\"awaiting_admin_reply\")?ticket.awaiting_admin_reply===!0:Object.prototype.hasOwnProperty.call(ticket||{},\"awaitingAdminReply\")?ticket.awaitingAdminReply===!0:Object.prototype.hasOwnProperty.call(ticket||{},\"requires_admin_reply\")?ticket.requires_admin_reply===!0:Object.prototype.hasOwnProperty.call(ticket||{},\"requiresAdminReply\")?ticket.requiresAdminReply===!0:status===\"waiting\"}function memberSupportCountsV688(data){const active=(Array.isArray(data?.tickets)?data.tickets:[]).filter(ticket=>![\"resolved\",\"closed\",\"cancelled\",\"archived\"].includes(String(ticket?.status||\"open\").toLowerCase())),unanswered=active.filter(memberSupportNeedsReplyV689);return{open:active.length,unanswered:unanswered.length,known:Array.isArray(data?.tickets)}}function updateMemberSupportBadgesV688(data){const counts=memberSupportCountsV688(data),open=$2(\"supportOpenCountV618\"),node=$2(\"supportPendingCountV540\");return open&&(open.textContent=counts.known&&counts.unanswered>0?String(counts.unanswered):\"\",open.hidden=!counts.known||counts.unanswered===0,open.title=counts.known?counts.unanswered===1?\"1 Members Club support conversation awaiting your reply\":counts.unanswered+\" Members Club support conversations awaiting your reply\":\"Members Club support reply count unavailable\",open.setAttribute(\"aria-label\",open.title)),node&&(node.textContent=counts.known?String(counts.unanswered):\"\\u2014\",node.hidden=counts.known&&counts.unanswered===0,node.title=counts.known?counts.unanswered+\" Members Club support conversation\"+(counts.unanswered===1?\"\":\"s\")+\" awaiting your reply\":\"Members Club support reply count unavailable\"),counts}async function refreshMemberSupportBadgeV688(){try{const data=await api(\"/api/admin/support?limit=200\",{cacheMs:0,timeoutMs:1e4});return updateMemberSupportBadgesV688(data),data}catch(error){throw updateMemberSupportBadgesV688(null),error}}function updateSupportBadgeV540(summary){state.supportInbox&&updateMemberSupportBadgesV688(state.supportInbox)}function updateInboxBadgeV540(summary){const node=$2(\"inboxPendingCountV540\"),main=$2(\"mainCommsOpenCount\"),known=Number.isInteger(summary?.unreviewed)&&summary.unreviewed>=0,value=known?summary.hasMore?summary.unreviewed>0?summary.unreviewed+\"+\":\"\\u2026\":String(summary.unreviewed):\"\\u2014\",title=known?summary.unreviewed+\" emails needing review in the latest \"+summary.checked+\" received emails\"+(summary.hasMore?\"; older email exists. This is not a full-inbox total.\":\"\"):\"Inbox review count unavailable\";node&&(node.hidden=known&&summary.unreviewed===0&&!summary.hasMore,node.textContent=value,node.title=title),main&&(main.hidden=!known||summary.unreviewed===0,main.textContent=known?String(summary.unreviewed):\"\",main.title=title,main.classList.toggle(\"needs-reply\",known&&summary.unreviewed>0),main.classList.toggle(\"all-caught-up\",!1))}let inboxPagePromiseV540=null,inboxLatestV540=null,inboxLatestAtV540=0,commsBadgePromiseV540=null,inboxLatestScopeV600=\"\",inboxPageScopeV600=\"\";function inboxScopeV600(){const workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599());return workspace===\"card-shows\"?\"show_tickets\":workspace===\"members-club\"?\"collectors_club\":\"\"}function inboxScopeQueryV600(){const scope=inboxScopeV600();return scope?\"&scope=\"+encodeURIComponent(scope):\"\"}async function readLatestInboxV540(force=!1){const scope=inboxScopeV600();if(inboxPagePromiseV540&&inboxPageScopeV600===scope)return inboxPagePromiseV540;if(inboxPagePromiseV540&&inboxPageScopeV600!==scope&&await inboxPagePromiseV540.catch(()=>{}),!force&&inboxLatestV540&&inboxLatestScopeV600===scope&&Date.now()-inboxLatestAtV540<3e4)return inboxLatestV540;inboxPageScopeV600=scope,inboxPagePromiseV540=api(\"/api/admin/communications/inbox?limit=50\"+inboxScopeQueryV600(),{cacheMs:0,timeoutMs:15e3}).then(data=>(inboxLatestV540=data,inboxLatestScopeV600=scope,inboxLatestAtV540=Date.now(),updateInboxBadgeV540(data.reviewSummary),data)).catch(error=>{throw updateInboxBadgeV540(null),error});try{return await inboxPagePromiseV540}finally{inboxPagePromiseV540=null,inboxPageScopeV600=\"\"}}async function refreshCommsBadgesV540(){if(commsBadgePromiseV540)return commsBadgePromiseV540;commsBadgePromiseV540=Promise.allSettled([readLatestInboxV540(),loadSummary().catch(error=>{throw updateSupportBadgeV540(null),error})]);try{return await commsBadgePromiseV540}finally{commsBadgePromiseV540=null}}function inboundSenderV529(value){return Array.isArray(value)?String(value[0]||\"\"):String(value||\"\")}async function loadResendInboxV529(after=\"\"){const status=$2(\"resendInboxStatusV529\"),target=$2(\"resendInboxListV529\");status&&(status.hidden=!1,status.textContent=\"Loading received email from Resend\\u2026\");const data=after?await api(\"/api/admin/communications/inbox?limit=50&after=\"+encodeURIComponent(after)+inboxScopeQueryV600(),{cacheMs:0,timeoutMs:15e3}):await readLatestInboxV540(!0),rows=data.emails||[];return status&&(status.textContent=rows.length?rows.length+\" recent received email\"+(rows.length===1?\"\":\"s\")+\" loaded. Review status is stored in Orbit, separately from sending replies. \"+(data.hasMore?\"Older emails are available below. \":\"\")+\"Orbit custom-domain mail will appear here once Resend Receiving is active for that domain.\":\"No received email was returned by Resend. Test the Resend receiving address first; custom Orbit domains also require Resend Receiving MX/DNS setup.\"),target&&(target.innerHTML=rows.length?rows.map(row=>'<button type=\"button\" class=\"orbit-inbox-item-v529'+(state.inboxSelectedIdV540===row.id?\" active\":\"\")+'\" data-inbox-id=\"'+esc(row.id)+'\"><strong>'+esc(row.subject||\"(No subject)\")+\"</strong><span>\"+esc(inboundSenderV529(row.from)||\"Unknown sender\")+\"</span><small>\"+esc(prettyShortDate(row.createdAt))+\" \\xB7 \"+(row.reviewed?\"Reviewed\":\"Needs review\")+\"</small></button>\").join(\"\"):'<div class=\"orbit-empty\">No received email found.</div>'),target&&(after||data.hasMore)&&(target.insertAdjacentHTML(\"beforeend\",'<div class=\"orbit-action-row\">'+(after?'<button type=\"button\" class=\"secondary\" data-inbox-latest-v540>Latest emails</button>':\"\")+(data.hasMore&&rows.length?'<button type=\"button\" class=\"secondary\" data-inbox-older-v540>Older emails</button>':\"\")+\"</div>\"),target.querySelector(\"[data-inbox-latest-v540]\")?.addEventListener(\"click\",()=>loadResendInboxV529().catch(err=>setNotice2(err.message,!0))),target.querySelector(\"[data-inbox-older-v540]\")?.addEventListener(\"click\",()=>loadResendInboxV529(rows[rows.length-1].id).catch(err=>setNotice2(err.message,!0)))),target?.querySelectorAll(\"[data-inbox-id]\").forEach(btn=>btn.addEventListener(\"click\",()=>openResendInboxEmailV529(btn.dataset.inboxId,btn).catch(err=>{const reader=$2(\"resendInboxReaderV529\");reader&&(reader.textContent=\"Email could not load: \"+(err.message||err))}))),data}async function openResendInboxEmailV529(id,button2){state.inboxSelectedIdV540=id,document.querySelectorAll(\".orbit-inbox-item-v529\").forEach(node=>node.classList.toggle(\"active\",node===button2));const target=$2(\"resendInboxReaderV529\");target&&(target.innerHTML='<div class=\"orbit-empty\">Loading email\\u2026</div>');const scope=inboxScopeV600(),data=await api(\"/api/admin/communications/inbox/\"+encodeURIComponent(id)+(scope?\"?scope=\"+encodeURIComponent(scope):\"\"),{cacheMs:0,timeoutMs:15e3}),row=data.email||{},content=row.html||'<pre style=\"white-space:pre-wrap;font:inherit;margin:0\">'+esc(row.text||\"(No email body returned)\")+\"</pre>\",replyChoices=(data.choices||[]).filter(choice=>!scope||choice.key===scope),suggested=String(scope||data.suggestedReplyKey||replyChoices[0]?.key||\"\"),fromSelect=replyChoices.length?'<label>Send reply from<select id=\"resendInboxReplyFromV531\">'+replyChoices.map(choice=>'<option value=\"'+esc(choice.key)+'\" '+(String(choice.key)===suggested?\"selected\":\"\")+\">\"+esc(choice.from||choice.label||choice.key)+\"</option>\").join(\"\")+\"</select></label>\":\"\";if(target&&(target.innerHTML='<div class=\"orbit-panel-header compact\"><div><p class=\"orbit-kicker\">Received email</p><h3>'+esc(row.subject||\"(No subject)\")+\"</h3><p><strong>From:</strong> \"+esc(inboundSenderV529(row.from)||\"\\u2014\")+\"<br><strong>To:</strong> \"+esc((Array.isArray(row.to)?row.to:[row.to]).filter(Boolean).join(\", \")||\"\\u2014\")+\"<br><strong>Received:</strong> \"+esc(prettyShortDate(row.createdAt))+'</p></div></div><div class=\"orbit-inbox-message-v529\">'+content+'</div><div class=\"orbit-inbox-reply-v529\">'+fromSelect+'<label>Reply<textarea id=\"resendInboxReplyTextV529\" placeholder=\"Write your reply\\u2026\"></textarea></label><div class=\"orbit-action-row\"><button type=\"button\" id=\"sendResendInboxReplyV529\">Send Reply</button></div><div id=\"resendInboxReplyResultV529\" class=\"orbit-action-result\" hidden></div></div>'),target){const review=document.createElement(\"div\");review.className=\"orbit-action-row orbit-inbox-review-v540\";const button3=document.createElement(\"button\");button3.type=\"button\",button3.className=\"secondary\",button3.id=\"inboxReviewToggleV540\",button3.textContent=data.review?.reviewed?\"Mark as needing review\":\"Mark reviewed\";const message=document.createElement(\"span\");message.setAttribute(\"role\",\"status\"),message.textContent=data.review?.reviewed?\"Reviewed in Orbit\":\"Needs review in Orbit\",review.append(button3,message),target.prepend(review),button3.addEventListener(\"click\",async()=>{button3.disabled=!0;try{const result=await api(\"/api/admin/communications/inbox/\"+encodeURIComponent(id)+\"/review\",{method:\"POST\",body:JSON.stringify({reviewed:!data.review?.reviewed,scope})});data.review={reviewed:result.reviewed===!0},button3.textContent=data.review.reviewed?\"Mark as needing review\":\"Mark reviewed\",message.textContent=data.review.reviewed?\"Reviewed in Orbit. No email was sent.\":\"Needs review in Orbit. No email was sent.\",await inboxPagePromiseV540?.catch(()=>{}),inboxLatestAtV540=0,await loadResendInboxV529()}catch(error){message.textContent=\"Review status could not update: \"+(error.message||error)}finally{button3.disabled=!1}})}$2(\"sendResendInboxReplyV529\")?.addEventListener(\"click\",()=>sendResendInboxReplyV529(id))}async function sendResendInboxReplyV529(id){const text2=String($2(\"resendInboxReplyTextV529\")?.value||\"\").trim(),result=$2(\"resendInboxReplyResultV529\"),button2=$2(\"sendResendInboxReplyV529\");if(!text2){result&&(result.hidden=!1,result.textContent=\"Write a reply first.\");return}if(confirm(\"Send this reply through Resend?\")){button2&&(button2.disabled=!0);try{const scope=inboxScopeV600(),fromKey=scope||String($2(\"resendInboxReplyFromV531\")?.value||\"\"),data=await api(\"/api/admin/communications/inbox/\"+encodeURIComponent(id)+\"/reply\",{method:\"POST\",body:JSON.stringify({text:text2,fromKey,scope,idempotencyKey:\"inbox-\"+id+\"-\"+Date.now()})});result&&(result.hidden=!1,result.textContent=\"Reply sent successfully\"+(data.to?\" to \"+data.to:\"\")+\".\"),$2(\"resendInboxReplyTextV529\")&&($2(\"resendInboxReplyTextV529\").value=\"\")}catch(err){result&&(result.hidden=!1,result.textContent=\"Reply failed: \"+(err.message||err))}finally{button2&&(button2.disabled=!1)}}}const communicationHistoryEpochsV642=new Map;function renderMessageHistoryV642(data,rowsId,summaryId){const target=$2(rowsId),summary=$2(summaryId),labels={delivered:\"Delivered\",sent:\"Sent / Accepted\",bounced:\"Bounced\",failed:\"Failed\",pending:\"Pending\"};if(summary){const c=data.counts||{};summary.innerHTML=Object.entries(labels).map(([key,label])=>'<span class=\"orbit-comms-history-stat '+(key===\"failed\"||key===\"bounced\"?\"warning\":\"\")+'\"><b>'+Number(c[key]||0)+\"</b> \"+label+\"</span>\").join(\"\")+'<p class=\"orbit-comms-attempt-note-v641\">One row per message. Sent / Accepted is not confirmed delivery. Retried is an audit label, not another message.</p>'}target&&(target.innerHTML=(data.logs||[]).map(item=>{const label=labels[item.status]||\"Pending\",good=item.status===\"delivered\"||item.status===\"sent\",problem=[\"failed\",\"bounced\"].includes(item.status),attempts=(item.attempts||[]).map(a=>\"<li><time>\"+esc(prettyDate(a.at))+\"</time> \\xB7 \"+esc(a.status||\"unknown\")+(a.providerId?\"<br><small>Provider ID: \"+esc(a.providerId)+\"</small>\":\"\")+(a.errorCode||a.error?\"<br><small>\"+esc(a.errorCode||a.error)+\"</small>\":\"\")+\"</li>\").join(\"\");return'<article class=\"orbit-message-v642\" data-history-message=\"'+esc(item.id||\"\")+'\"><div class=\"orbit-message-heading-v642\"><div><strong>'+esc(item.to||\"Recipient unavailable\")+\"</strong><h4>\"+esc(item.subject||\"Email\")+'</h4></div><div class=\"orbit-message-pills-v642\"><span class=\"orbit-pill '+(good?\"success\":problem?\"warning\":\"other\")+'\">'+label+\"</span>\"+(item.retried?'<span class=\"orbit-pill other\">Retried '+Number(item.retryCount||0)+\"</span>\":\"\")+'</div></div><p class=\"orbit-message-meta-v642\">'+esc(String(item.type||\"email\").replace(/_/g,\" \"))+\" \\xB7 \"+esc(prettyDate(item.createdAt||item.updatedAt))+\"</p><details><summary>\"+Number(item.attemptCount||item.attempts?.length||0)+\" attempt(s) \\xB7 provider and delivery evidence</summary><p>Provider ID: \"+esc(item.providerId||\"No acceptance ID recorded\")+(item.providerIds?.length>1?\" \\xB7 Multiple provider IDs require review.\":\"\")+\"</p><p>Last saved provider state: \"+esc(item.providerStatus||\"Unverified\")+(item.providerEventAt?\" \\xB7 Event time: \"+esc(prettyDate(item.providerEventAt)):\" \\xB7 Provider event time not supplied\")+\"</p><p>\"+(item.deliveryCheckedAt?\"Receipt last checked: \"+esc(prettyDate(item.deliveryCheckedAt)):\"Receipt has not been checked\")+\". A check time is not a delivery time.</p><ol>\"+attempts+\"</ol></details></article>\"}).join(\"\")||'<p class=\"orbit-muted\">No messages match these filters.</p>')}const historyReadsV71601=new Map;let historyPollV71601=null;function historyNoticeV71601(rowsId,text2,isError=!1){const rows=$2(rowsId);if(!rows)return;let note=$2(rowsId+\"Freshness\");note||(note=document.createElement(\"p\"),note.id=rowsId+\"Freshness\",note.className=\"orbit-muted\",rows.before(note)),note.textContent=text2,note.setAttribute(\"role\",isError?\"alert\":\"status\"),isError?note.dataset.orbitError=\"\":delete note.dataset.orbitError}function historyRenderPreservedV71601(data,rowsId,summaryId){const target=$2(rowsId),key=JSON.stringify(data),prior=historyReadsV71601.get(rowsId)||{};if(prior.renderKey===key&&target?.querySelector(\".orbit-message-v642\"))return;const expanded=new Set([...target?.querySelectorAll(\"[data-history-message]\")||[]].filter(el=>el.querySelector(\"details\")?.open).map(el=>el.dataset.historyMessage));renderMessageHistoryV642(data,rowsId,summaryId),target?.querySelectorAll(\"[data-history-message]\").forEach(el=>{expanded.has(el.dataset.historyMessage)&&(el.querySelector(\"details\").open=!0)}),historyReadsV71601.set(rowsId,{...prior,data,renderKey:key})}function scheduleHistoryRefreshV71601(){clearTimeout(historyPollV71601),!(document.hidden||![\"communicationsHistoryTable\",\"vendorDeliveryRowsV642\"].some(id=>$2(id)?.getClientRects().length))&&(historyPollV71601=setTimeout(()=>{if(document.hidden)return;const focus=document.activeElement;if(focus?.matches(\"input,textarea,select\")||focus?.closest(\"[data-history-message]\")){scheduleHistoryRefreshV71601();return}const tasks=[];$2(\"communicationsHistoryTable\")?.getClientRects().length&&tasks.push(loadCommunicationsHistoryV462(communicationsHistoryPageV462,{automatic:!0})),$2(\"vendorDeliveryRowsV642\")?.getClientRects().length&&tasks.push(loadVendorDeliveryV642(vendorDeliveryPageV642,{automatic:!0})),Promise.allSettled(tasks).finally(scheduleHistoryRefreshV71601)},2e4))}async function loadHistoryPageV71601({kind,rowsId,summaryId,searchId,statusId,pageId,previousId,nextId,page,limit,scope=\"\",automatic=!1}){const existing=historyReadsV71601.get(rowsId)||{};if(automatic&&existing.busy)return existing.data;const read=(communicationHistoryEpochsV642.get(kind)||0)+1;communicationHistoryEpochsV642.set(kind,read),historyReadsV71601.set(rowsId,{...existing,busy:!0});const rows=$2(rowsId);rows?.setAttribute(\"aria-busy\",\"true\"),historyNoticeV71601(rowsId,existing.data?\"Refreshing saved message outcomes\\u2026\":\"Loading saved message outcomes\\u2026\");try{const search=String($2(searchId)?.value||\"\").trim(),status=String($2(statusId)?.value||\"all\"),data=await api(\"/api/admin/communications/history?page=\"+page+\"&limit=\"+limit+\"&scope=\"+encodeURIComponent(scope)+\"&search=\"+encodeURIComponent(search)+\"&status=\"+encodeURIComponent(status),{cacheMs:0,timeoutMs:2e4});return communicationHistoryEpochsV642.get(kind)!==read||(historyRenderPreservedV71601(data,rowsId,summaryId),$2(pageId)&&($2(pageId).textContent=\"Page \"+Number(data.page||1)+\" of \"+Number(data.pages||1)+\" \\xB7 \"+Number(data.total||0)+\" messages\"),$2(previousId)&&($2(previousId).disabled=Number(data.page||1)<=1),$2(nextId)&&($2(nextId).disabled=Number(data.page||1)>=Number(data.pages||1)),historyNoticeV71601(rowsId,\"Updated \"+new Date().toLocaleTimeString(\"en-GB\")+\". Status refreshes automatically; existing attempt history is retained.\")),data}catch(error){if(communicationHistoryEpochsV642.get(kind)===read){historyNoticeV71601(rowsId,\"Email history could not be refreshed. \"+(existing.data?\"Previously loaded records remain visible. \":\"\")+\"Retry below; Orbit will also retry while this page is open.\",!0),existing.data||($2(summaryId)&&($2(summaryId).textContent=\"History temporarily unavailable \\u2014 no records have been changed.\"),rows&&(rows.innerHTML='<p class=\"orbit-muted\">The saved history could not be loaded yet.</p>'));const note=$2(rowsId+\"Freshness\");if(note){const retry=document.createElement(\"button\");retry.type=\"button\",retry.className=\"secondary\",retry.textContent=\"Retry history\",retry.addEventListener(\"click\",()=>loadHistoryPageV71601({kind,rowsId,summaryId,searchId,statusId,pageId,previousId,nextId,page,limit,scope}).catch(()=>{})),note.append(\" \",retry)}}if(!automatic)throw error;return null}finally{if(communicationHistoryEpochsV642.get(kind)===read){rows?.setAttribute(\"aria-busy\",\"false\");const current=historyReadsV71601.get(rowsId)||{};historyReadsV71601.set(rowsId,{...current,busy:!1})}scheduleHistoryRefreshV71601()}}async function loadCommunicationsHistoryV462(page=1,{automatic=!1}={}){return communicationsHistoryPageV462=Math.max(1,Number(page)||1),loadHistoryPageV71601({kind:\"comms\",rowsId:\"communicationsHistoryTable\",summaryId:\"communicationsHistorySummary\",searchId:\"communicationsHistorySearch\",statusId:\"communicationsHistoryStatus\",pageId:\"communicationsHistoryPage\",previousId:\"communicationsHistoryPrev\",nextId:\"communicationsHistoryNext\",page:communicationsHistoryPageV462,limit:50,automatic})}let vendorDeliveryPageV642=1;async function loadVendorDeliveryV642(page=1,{automatic=!1}={}){vendorDeliveryPageV642=Math.max(1,Number(page)||1);const notice=$2(\"vendorDeliveryNoticeV642\");return notice&&(notice.textContent=\"Current outcomes with immutable attempt history.\"),loadHistoryPageV71601({kind:\"vendor\",rowsId:\"vendorDeliveryRowsV642\",summaryId:\"vendorDeliverySummaryV642\",searchId:\"vendorDeliverySearchV642\",statusId:\"vendorDeliveryStatusV642\",pageId:\"vendorDeliveryPageV642\",previousId:\"vendorDeliveryPreviousV642\",nextId:\"vendorDeliveryNextV642\",page:vendorDeliveryPageV642,limit:30,scope:\"vendor-club\",automatic})}document.addEventListener(\"visibilitychange\",()=>{if(document.hidden){clearTimeout(historyPollV71601);return}$2(\"communicationsHistoryTable\")?.getClientRects().length&&loadCommunicationsHistoryV462(communicationsHistoryPageV462,{automatic:!0}),$2(\"vendorDeliveryRowsV642\")?.getClientRects().length&&loadVendorDeliveryV642(vendorDeliveryPageV642,{automatic:!0})});async function loadCommunications(){const[status,templates]=await Promise.all([api(\"/api/admin/communications/status\"),api(\"/api/admin/communications/templates\",{cacheMs:0,timeoutMs:12e3})]);state.communicationTemplates=templates.templates||[],state.communications={status,templates:state.communicationTemplates,safety:templates.safety||{},catalogueRelease:templates.release||null},renderCommunicationsCentre(state.communications);const configured=!!(status.configured||status.resendConfigured||status.ready||status.success);healthCard(\"healthResend\",\"Resend\",configured?\"configured\":\"unknown\",status.fromEmail||status.sender||\"Email delivery\"),$2(\"settingsResendSummary\")&&($2(\"settingsResendSummary\").innerHTML=\"<strong>Connection: \"+(configured?\"Configured\":\"Needs attention\")+\"</strong><span>Sender: \"+esc(status.fromEmail||status.sender||\"\\u2014\")+\"</span><span>Email Templates: preview-only protected catalogue</span><span>Delivery logs live in Email \\u2192 History only</span>\"),setRepairStatus(\"settingsResendStatus\",configured?\"configured\":\"warning\")}function staticPageDiagnosticText(payload){const rows=payload?.results||[],lines=[];return rows.forEach(row=>{row.success?lines.push((row.name||row.eventbriteEventId||\"Event\")+\": READY \"+(row.url||\"\")+\" via \"+(row.method||\"Shopify\")):(lines.push((row.name||row.eventbriteEventId||\"Event\")+\": FAILED \\u2014 \"+(row.error||\"Unknown error\")),(row.diagnostics||[]).forEach(d=>{lines.push(\"  \"+(d.source||\"token\")+\" \\xB7 \"+(d.stage||\"stage\")+\" \\xB7 \"+(d.success?\"OK\":\"FAILED\")+(d.method?\" \\xB7 \"+d.method:\"\")+(d.error?\" \\u2014 \"+d.error:\"\"))}))}),!lines.length&&payload?.error&&lines.push(payload.error),lines.join(`\n`)}async function connectEventbrite(button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/eventbrite/connect-url\");if(!data.connectUrl)throw new Error(\"No Eventbrite connection URL returned.\");window.open(data.connectUrl,\"orbitEventbriteConnect\",\"popup=yes,width=760,height=820,menubar=no,toolbar=no,location=yes,status=no,scrollbars=yes,resizable=yes\"),setNotice2(\"Eventbrite connection window opened. Approve Orbit OS, then return here and click Refresh.\")}finally{setLoading(button2,!1)}}async function syncEventbrite(button2){setLoading(button2,!0),button2&&(button2.textContent=\"Syncing...\");try{const result=await api(\"/api/admin/eventbrite/sync\",{method:\"POST\",timeoutMs:12e4});await loadEventbrite();const pages=result.staticPages||{},pageMessage=pages.success?\" Static ticket URLs: \"+Number(pages.ready||0)+\"/\"+Number(pages.total||0)+\" ready.\":pages.error?\" Static ticket URL reconciliation needs attention: \"+pages.error:\"\";setNotice2(\"Eventbrite sync complete. \"+(result.syncedCount||0)+\" upcoming events synced.\"+pageMessage,!!pages.error)}finally{setLoading(button2,!1)}}async function loadEventbrite(){const[statusResult,eventsResult,staticResultPromise]=await Promise.allSettled([api(\"/api/admin/eventbrite/status\",{cacheMs:5e3}),api(\"/api/admin/eventbrite/events?limit=100&metrics=0\",{cacheMs:5e3}),api(\"/api/admin/eventbrite/static-pages/status\",{cacheMs:5e3})]);if(statusResult.status!==\"fulfilled\")throw statusResult.reason;if(eventsResult.status!==\"fulfilled\")throw eventsResult.reason;const status=statusResult.value,events=eventsResult.value,staticPages=staticResultPromise.status===\"fulfilled\"?staticResultPromise.value:null;state.eventbrite={status,events:events.events||[],staticPages},renderEventbriteCentre(state.eventbrite),state.currentModule===\"events\"&&savedOrbitSubtab(\"events\")===\"calendar\"&&renderEventCalendarV485(),api(\"/api/admin/eventbrite/events?limit=100&metrics=1\",{cacheMs:5e3,timeoutMs:3e4}).then(full=>{full?.events&&state.eventbrite&&(state.eventbrite={...state.eventbrite,events:full.events},renderEventbriteCentre(state.eventbrite),state.currentModule===\"events\"&&savedOrbitSubtab(\"events\")===\"calendar\"&&renderEventCalendarV485())}).catch(error=>console.warn(\"Background Eventbrite metrics refresh failed:\",error?.message||error));const staticResult=$2(\"staticEventPagesResult\");if(staticResult&&staticPages)if(staticResult.hidden=!1,staticPages.reconnectRequired)staticResult.className=\"orbit-action-result orbit-static-pages-result orbit-static-pages-result-v379 is-warning\",staticResult.textContent=\"Static ticket URLs: Shopify authorization required. Press Ensure Static Ticket URLs to approve Page/content access.\";else if(Number(staticPages.pending||0)>0)staticResult.className=\"orbit-action-result orbit-static-pages-result orbit-static-pages-result-v379\",staticResult.textContent=\"Static URLs \\xB7 \"+Number(staticPages.ready||0)+\"/\"+Number(staticPages.total||0)+\" ready \\xB7 \"+Number(staticPages.pending||0)+\" pending\";else{staticResult.className=\"orbit-action-result orbit-static-pages-result orbit-static-pages-result-v379 is-success\";const upcomingCount=Number((events.events||[]).filter(e=>String(e.status||\"\").toLowerCase()!==\"draft\"&&!e.archived&&!eventHasPassed(e)).length);staticResult.textContent=\"Static ticket URLs: \"+Number(staticPages.ready||0)+\"/\"+Number(staticPages.total||0)+\" ready \\xB7 \"+upcomingCount+\" upcoming show\"+(upcomingCount===1?\"\":\"s\")+\".\"}if(healthCard(\"healthEventbrite\",\"Eventbrite\",status.connected?\"connected\":status.status||\"unknown\",String(events.events?.length||0)+\" synced events\"),$2(\"settingsEventbriteSummary\")){const staticLine=staticPages?\"<span>Static ticket URLs: \"+Number(staticPages.ready||0)+\" ready \\xB7 \"+Number(staticPages.pending||0)+\" pending\"+(staticPages.reconnectRecommended?\" \\xB7 Shopify reconnect required\":\"\")+\"</span>\":\"<span>Static ticket URL status unavailable</span>\";$2(\"settingsEventbriteSummary\").innerHTML=\"<strong>Connection: \"+(status.connected?\"Connected\":\"Not connected\")+\"</strong><span>\"+String(events.events?.length||0)+\" operational events synced</span>\"+staticLine+\"<span>Use Events Connection to reconnect or synchronise now</span>\"}setRepairStatus(\"settingsEventbriteStatus\",status.connected&&(!staticPages||!staticPages.reconnectRecommended)?\"connected\":\"warning\")}async function loadTrackingSettings(){const[data,searchOauth]=await Promise.all([api(\"/api/admin/tracking-settings\",{cacheMs:0}),api(\"/api/admin/google-search-console/oauth/status\",{cacheMs:0,timeoutMs:15e3}).catch(error=>({success:!1,error:error?.message||String(error)}))]),s=data.settings||{},capiHealth=data.capiHealth||{};state.trackingSettings=s,state.trackingCapiHealth=capiHealth;const profiles=s.siteProfiles||{},card=profiles.card_show||{},tickets=profiles.show_tickets||{},club=profiles.collectors_club||{},cardIndex=profiles.card_show_index||{},setv=(id,value)=>{$2(id)&&($2(id).value=value||\"\")},setc=(id,value)=>{$2(id)&&($2(id).checked=value!==!1)};setv(\"siteCardShowGaMeasurementV494\",card.googleAnalyticsMeasurementId),setv(\"siteCardShowGaPropertyV494\",card.googleAnalyticsPropertyId),setv(\"siteCardShowSearchConsoleV494\",card.searchConsoleSiteUrl),setv(\"siteCardShowSitemapV494\",card.sitemapUrl),setv(\"siteTicketsGaMeasurementV494\",tickets.googleAnalyticsMeasurementId),setv(\"siteTicketsGaPropertyV494\",tickets.googleAnalyticsPropertyId),setv(\"siteTicketsSearchConsoleV494\",tickets.searchConsoleSiteUrl),setv(\"siteTicketsSitemapV494\",tickets.sitemapUrl),setv(\"siteClubGaMeasurementV494\",club.googleAnalyticsMeasurementId),setv(\"siteClubGaPropertyV494\",club.googleAnalyticsPropertyId),setv(\"siteClubSearchConsoleV494\",club.searchConsoleSiteUrl),setv(\"siteClubSitemapV494\",club.sitemapUrl),setv(\"siteCardShowIndexGaMeasurementV625\",cardIndex.googleAnalyticsMeasurementId),setv(\"siteCardShowIndexGaPropertyV625\",cardIndex.googleAnalyticsPropertyId),setv(\"siteCardShowIndexSearchConsoleV625\",cardIndex.searchConsoleSiteUrl),setv(\"siteCardShowIndexSitemapV625\",cardIndex.sitemapUrl),setv(\"directoryGoogleOauthClientIdV628\",s.googleAnalyticsOauthClientId),setv(\"directoryGoogleOauthClientSecretV628\",\"\"),setv(\"directorySearchConsoleRedirectV628\",searchOauth?.redirectUri||\"\"),setv(\"directorySearchConsolePropertyV628\",cardIndex.searchConsoleSiteUrl),setv(\"directorySitemapUrlV628\",cardIndex.sitemapUrl),setv(\"directoryGaMeasurementIdV628\",cardIndex.googleAnalyticsMeasurementId),setv(\"directoryGaPropertyIdV628\",cardIndex.googleAnalyticsPropertyId);const sameTicketClubGa=!!(String(tickets.googleAnalyticsMeasurementId||\"\").trim()&&String(tickets.googleAnalyticsMeasurementId||\"\").trim()===String(club.googleAnalyticsMeasurementId||\"\").trim());if($2(\"siteTicketsGaRuntimeV532\")&&($2(\"siteTicketsGaRuntimeV532\").className=\"orbit-performance-tracking-status \"+(sameTicketClubGa?\"warning\":\"success\"),$2(\"siteTicketsGaRuntimeV532\").textContent=sameTicketClubGa?\"Storefront tracking suppressed \\xB7 this stored GA4 ID is also used by Collectors Club. Settings are preserved, but Show Tickets will not send into the Club stream.\":tickets.googleAnalyticsMeasurementId?\"Storefront tracking eligible \\xB7 this GA4 ID is distinct from Collectors Club.\":\"No Show Tickets storefront GA4 stream configured.\"),$2(\"siteClubGaRuntimeV532\")&&($2(\"siteClubGaRuntimeV532\").className=\"orbit-performance-tracking-status success\",$2(\"siteClubGaRuntimeV532\").textContent=club.googleAnalyticsMeasurementId?\"Collectors Club storefront GA4 remains enabled on its own domain.\":\"No Collectors Club storefront GA4 stream configured.\"),setv(\"performanceSearchConsoleOauthRedirectV494\",searchOauth?.redirectUri||\"\"),setv(\"performanceCardShowPixelId\",card.metaPixelId),setc(\"performanceCardShowPixelEnabled\",card.metaPixelEnabled),$2(\"performanceCardShowMetaStatus\")&&($2(\"performanceCardShowMetaStatus\").textContent=card.metaPixelId?card.metaPixelEnabled!==!1?\"Configured \\xB7 \"+card.metaPixelId:\"Configured but disabled \\xB7 \"+card.metaPixelId:\"Not configured\"),$2(\"performanceSearchConsoleStatusV494\")){const node=$2(\"performanceSearchConsoleStatusV494\"),connected=!!(searchOauth?.readConnected||s.googleSearchConsoleOauthConnected),redirect=String(searchOauth?.redirectUri||\"\");node.className=\"orbit-performance-tracking-status\"+(connected?\" connected\":\"\"),node.textContent=connected?\"Connected separately \\xB7 Search Console read-only\"+(searchOauth?.readConnectedAt?\" \\xB7 \"+prettyDate(searchOauth.readConnectedAt):\"\"):searchOauth?.success===!1?\"Search Console OAuth diagnostics unavailable \\xB7 \"+String(searchOauth.error||\"retry\"):\"Not connected \\xB7 Google Cloud must authorize this exact redirect URI: \"+redirect}if($2(\"performanceGaMeasurementId\")&&($2(\"performanceGaMeasurementId\").value=s.googleAnalyticsMeasurementId||\"\"),$2(\"performanceGaPropertyIdV468\")&&($2(\"performanceGaPropertyIdV468\").value=s.googleAnalyticsPropertyId||\"\"),$2(\"performanceGaOauthClientIdV469\")&&($2(\"performanceGaOauthClientIdV469\").value=s.googleAnalyticsOauthClientId||\"\"),$2(\"performanceGaOauthClientSecretV469\")&&($2(\"performanceGaOauthClientSecretV469\").value=\"\"),$2(\"performanceGaOauthRedirectV469\")&&($2(\"performanceGaOauthRedirectV469\").value=API_BASE+\"/api/admin/google-analytics/oauth/callback\"),$2(\"performanceGaReportingStatusV468\")){const reporting=$2(\"performanceGaReportingStatusV468\");s.googleAnalyticsOauthConnected?(reporting.className=\"orbit-performance-tracking-status connected\",reporting.textContent=\"Connected via Google OAuth \\xB7 read-only GA4 reporting\"+(s.googleAnalyticsOauthConnectedAt?\" \\xB7 \"+prettyDate(s.googleAnalyticsOauthConnectedAt):\"\")):s.googleAnalyticsOauthClientId&&s.googleAnalyticsOauthClientSecretConfigured?(reporting.className=\"orbit-performance-tracking-status\",reporting.textContent=\"OAuth client saved \\xB7 click Connect Google Analytics to authorize read-only reporting\"):(reporting.className=\"orbit-performance-tracking-status\",reporting.textContent=\"Reporting setup needed \\xB7 save Property ID + Google OAuth Client ID/secret, then Connect Google Analytics\")}const connectButton=$2(\"performanceGaConnectV469\");if(connectButton){const oauthReady=!!(s.googleAnalyticsPropertyId&&s.googleAnalyticsOauthClientId&&s.googleAnalyticsOauthClientSecretConfigured);connectButton.disabled=!oauthReady,connectButton.title=oauthReady?\"Connect Orbit to Google Analytics with read-only OAuth\":\"Save the GA4 Property ID, OAuth Client ID and OAuth Client Secret first\"}$2(\"performanceGaEnabled\")&&($2(\"performanceGaEnabled\").checked=s.googleAnalyticsEnabled!==!1),$2(\"performanceClubPixelId\")&&($2(\"performanceClubPixelId\").value=s.clubMetaPixelId||\"\"),$2(\"performanceTicketPixelId\")&&($2(\"performanceTicketPixelId\").value=s.ticketMetaPixelId||\"\"),$2(\"performanceClubPixelEnabled\")&&($2(\"performanceClubPixelEnabled\").checked=s.clubMetaPixelEnabled!==!1),$2(\"performanceTicketPixelEnabled\")&&($2(\"performanceTicketPixelEnabled\").checked=s.ticketMetaPixelEnabled!==!1),$2(\"performanceGaStatus\")&&($2(\"performanceGaStatus\").textContent=s.googleAnalyticsMeasurementId?s.googleAnalyticsEnabled!==!1?\"Configured \\xB7 \"+s.googleAnalyticsMeasurementId:\"Configured but disabled \\xB7 \"+s.googleAnalyticsMeasurementId:\"Not configured\"),$2(\"performanceClubMetaStatus\")&&($2(\"performanceClubMetaStatus\").textContent=s.clubMetaPixelId?s.clubMetaPixelEnabled!==!1?\"Configured \\xB7 \"+s.clubMetaPixelId:\"Configured but disabled \\xB7 \"+s.clubMetaPixelId:\"Not configured\"),$2(\"performanceTicketMetaStatus\")&&($2(\"performanceTicketMetaStatus\").textContent=s.ticketMetaPixelId?s.ticketMetaPixelEnabled!==!1?\"Configured \\xB7 \"+s.ticketMetaPixelId:\"Configured but disabled \\xB7 \"+s.ticketMetaPixelId:\"Not configured\"),$2(\"trackingGaMeasurementId\")&&($2(\"trackingGaMeasurementId\").value=s.googleAnalyticsMeasurementId||\"\"),$2(\"trackingClubPixelId\")&&($2(\"trackingClubPixelId\").value=s.clubMetaPixelId||\"\"),$2(\"trackingClubCapiToken\")&&($2(\"trackingClubCapiToken\").value=\"\"),$2(\"trackingClubCapiTestCode\")&&($2(\"trackingClubCapiTestCode\").value=s.clubMetaCapiTestEventCode||\"\"),$2(\"trackingTicketPixelId\")&&($2(\"trackingTicketPixelId\").value=s.ticketMetaPixelId||\"\"),$2(\"trackingTicketCapiToken\")&&($2(\"trackingTicketCapiToken\").value=\"\"),$2(\"trackingTicketCapiTestCode\")&&($2(\"trackingTicketCapiTestCode\").value=s.ticketMetaCapiTestEventCode||\"\"),$2(\"trackingGaEnabled\")&&($2(\"trackingGaEnabled\").checked=s.googleAnalyticsEnabled!==!1),$2(\"trackingClubPixelEnabled\")&&($2(\"trackingClubPixelEnabled\").checked=s.clubMetaPixelEnabled!==!1),$2(\"trackingClubCapiEnabled\")&&($2(\"trackingClubCapiEnabled\").checked=s.clubMetaCapiEnabled!==!1),$2(\"trackingTicketPixelEnabled\")&&($2(\"trackingTicketPixelEnabled\").checked=s.ticketMetaPixelEnabled!==!1),$2(\"trackingTicketCapiEnabled\")&&($2(\"trackingTicketCapiEnabled\").checked=s.ticketMetaCapiEnabled!==!1);const configured=[s.googleAnalyticsMeasurementId,s.clubMetaPixelId,s.ticketMetaPixelId].filter(Boolean).length,ticketRuntime=capiHealth.ticket||{},clubRuntime=capiHealth.club||{},ticketTokenText=s.ticketMetaCapiTokenConfigured?\"Stored \\xB7 ending \"+esc(s.ticketMetaCapiTokenLast4||\"????\")+\" \\xB7 \"+Number(s.ticketMetaCapiTokenLength||0)+\" chars\"+(ticketRuntime.tokenConfigured?\" \\xB7 runtime loaded\":\" \\xB7 RUNTIME MISSING\"):\"NOT STORED\",clubTokenText=s.clubMetaCapiTokenConfigured?\"Stored \\xB7 ending \"+esc(s.clubMetaCapiTokenLast4||\"????\")+(clubRuntime.tokenConfigured?\" \\xB7 runtime loaded\":\" \\xB7 RUNTIME MISSING\"):\"Not stored\";return $2(\"settingsTrackingSummary\")&&($2(\"settingsTrackingSummary\").innerHTML=\"<strong>\"+configured+\" of 3 tracking IDs configured</strong><span>Google Analytics: \"+esc(s.googleAnalyticsMeasurementId||\"Not set\")+\"</span><span>Collectors Club Pixel: \"+esc(s.clubMetaPixelId||\"Not set\")+\"</span><span>Club CAPI token: \"+clubTokenText+\"</span><span>Ticket Site Pixel: \"+esc(s.ticketMetaPixelId||\"Not set\")+\"</span><span><strong>Ticket CAPI token: \"+ticketTokenText+\"</strong></span>\"),setRepairStatus(\"settingsTrackingStatus\",configured?\"configured\":\"warning\"),s}async function saveTrackingSettings(button2){setLoading(button2,!0);try{const payload={googleAnalyticsMeasurementId:$2(\"trackingGaMeasurementId\")?.value||\"\",clubMetaPixelId:$2(\"trackingClubPixelId\")?.value||\"\",clubMetaCapiToken:$2(\"trackingClubCapiToken\")?.value||\"\",clubMetaCapiTestEventCode:$2(\"trackingClubCapiTestCode\")?.value||\"\",clubMetaCapiEnabled:!!$2(\"trackingClubCapiEnabled\")?.checked,ticketMetaPixelId:$2(\"trackingTicketPixelId\")?.value||\"\",ticketMetaCapiToken:$2(\"trackingTicketCapiToken\")?.value||\"\",ticketMetaCapiTestEventCode:$2(\"trackingTicketCapiTestCode\")?.value||\"\",ticketMetaCapiEnabled:!!$2(\"trackingTicketCapiEnabled\")?.checked,googleAnalyticsEnabled:!!$2(\"trackingGaEnabled\")?.checked,clubMetaPixelEnabled:!!$2(\"trackingClubPixelEnabled\")?.checked,ticketMetaPixelEnabled:!!$2(\"trackingTicketPixelEnabled\")?.checked},submittedTicketToken=String(payload.ticketMetaCapiToken||\"\").trim(),submittedClubToken=String(payload.clubMetaCapiToken||\"\").trim(),saved=await api(\"/api/admin/tracking-settings\",{method:\"PUT\",body:JSON.stringify(payload),cacheMs:0});if(submittedTicketToken&&!saved?.settings?.ticketMetaCapiTokenConfigured)throw new Error(\"Ticket CAPI token save failed server-side. Orbit did not confirm the secret after Mongo read-back.\");if(submittedClubToken&&!saved?.settings?.clubMetaCapiTokenConfigured)throw new Error(\"Club CAPI token save failed server-side. Orbit did not confirm the secret after Mongo read-back.\");const reloaded=await loadTrackingSettings();if(submittedTicketToken&&!reloaded?.ticketMetaCapiTokenConfigured)throw new Error(\"Ticket CAPI token disappeared after reload. Save has been rejected.\");const result=$2(\"trackingSettingsResult\");result&&(result.hidden=!1,result.textContent=\"Saved and verified by server read-back. Ticket CAPI token: \"+(reloaded?.ticketMetaCapiTokenConfigured?\"stored \\xB7 ending \"+String(reloaded.ticketMetaCapiTokenLast4||\"????\"):\"not stored\")+\".\"),setNotice2(\"Analytics & Pixel settings saved.\")}finally{setLoading(button2,!1)}}let seoPagesV332=[],seoKeyPagesV336=[],seoSelectedPageV332=null,seoSelectedKeyPageV336=null;function seoPublicUrlV332(page){if(page?.url&&/^https?:\\/\\//i.test(String(page.url)))return String(page.url);const handle=String(page?.handle||\"\");return String(page?.templateSuffix||\"\")===\"orbit-event\"?\"https://orbitshowtickets.co.uk/pages/\"+encodeURIComponent(handle):\"https://orbitcollectorsclub.com/pages/\"+encodeURIComponent(handle)}function activeSeoRecordV336(){return seoSelectedKeyPageV336||seoSelectedPageV332||null}function updateSeoPreviewV332(){const record=activeSeoRecordV336(),title=String($2(\"seoTitleInputV332\")?.value||\"\"),description=String($2(\"seoDescriptionInputV332\")?.value||\"\");text(\"seoTitleCountV332\",title.length),text(\"seoDescriptionCountV332\",description.length),text(\"seoPreviewTitleV332\",title||record?.label||record?.title||\"Page title\"),text(\"seoPreviewUrlV332\",record?seoPublicUrlV332(record).replace(/^https?:\\/\\//,\"\"):\"orbitcollectorsclub.com/\\u2026\"),text(\"seoPreviewDescriptionV332\",description||\"Meta description preview.\")}function renderSeoKeyPagesV336(){const target=$2(\"seoKeyPageListV336\");if(!target)return;const sitePages=seoKeyPagesV336.filter(siteRecordMatchesV544);if(!sitePages.length){target.innerHTML=\"<div class='orbit-empty-state'><strong>No important pages available</strong><span>Check Shopify authorization.</span></div>\";return}target.innerHTML=sitePages.map(page=>\"<button type='button' class='orbit-seo-page-row-v332 orbit-seo-key-row-v336\"+(seoSelectedKeyPageV336?.id===page.id?\" active\":\"\")+\"' data-seo-key-page-id='\"+esc(page.id)+\"'><span><strong>\"+esc(page.label||page.id)+\"</strong><small>\"+esc(String(page.url||\"\").replace(/^https?:\\/\\//,\"\"))+(page.permissionRequired?\" \\xB7 Shopify Product permission required\":\"\")+\"</small></span><b>\"+(page.permissionRequired?\"Permission\":\"Priority\")+\"</b></button>\").join(\"\")}function renderSeoPageListV332(){const target=$2(\"seoPageListV332\");if(!target)return;const q=String($2(\"seoPageSearchV332\")?.value||\"\").trim().toLowerCase(),rows=seoPagesV332.filter(page=>siteRecordMatchesV544(page)&&(!q||[page.title,page.handle,page.templateSuffix].join(\" \").toLowerCase().includes(q)));if(!rows.length){target.innerHTML=\"<div class='orbit-empty-state'><strong>No matching event pages</strong><span>Only public Orbit event Pages are shown here.</span></div>\";return}target.innerHTML=rows.map(page=>{const selected=seoSelectedPageV332?.id===page.id,stateLabel=page.hidden?\"Noindex\":page.isPublished?\"Indexable\":\"Unpublished\";return\"<button type='button' class='orbit-seo-page-row-v332\"+(selected?\" active\":\"\")+\"' data-seo-page-id='\"+esc(page.id)+\"'><span><strong>\"+esc(page.title||page.handle)+\"</strong><small>\"+esc(seoPublicUrlV332(page).replace(/^https?:\\/\\//,\"\"))+\"</small></span><b class='\"+(page.hidden?\"warning\":\"\")+\"'>\"+esc(stateLabel)+\"</b></button>\"}).join(\"\")}function populateSeoEditorV336(record,{keyPage=!1}={}){if(seoSelectedKeyPageV336=keyPage?record:null,seoSelectedPageV332=keyPage?null:record,$2(\"seoEditorEmptyV332\")&&($2(\"seoEditorEmptyV332\").hidden=!!record),$2(\"seoEditorV332\")&&($2(\"seoEditorV332\").hidden=!record),!record){renderSeoKeyPagesV336(),renderSeoPageListV332();return}text(\"seoEditorTypeV336\",keyPage?\"Priority public page\":\"Event page search listing\"),text(\"seoEditorPageNameV332\",record.label||record.title||record.handle),text(\"seoEditorPageUrlV332\",seoPublicUrlV332(record).replace(/^https?:\\/\\//,\"\")),$2(\"seoOpenPageV332\")&&($2(\"seoOpenPageV332\").href=seoPublicUrlV332(record)),$2(\"seoTitleInputV332\")&&($2(\"seoTitleInputV332\").value=record.seoTitle||(record.templateSuffix===\"orbit-event\"?(record.title||\"Orbit Card Show\")+\" | Official Orbit Card Show Tickets\":record.label||record.title||\"\")),$2(\"seoDescriptionInputV332\")&&($2(\"seoDescriptionInputV332\").value=record.seoDescription||(record.templateSuffix===\"orbit-event\"?\"Official tickets for \"+record.title+\". View event details, entry information and ticket options, then book securely through Orbit Show Tickets.\":\"\")),$2(\"seoIndexableInputV332\")&&($2(\"seoIndexableInputV332\").checked=keyPage?!0:!record.hidden),$2(\"seoIndexableWrapV336\")&&($2(\"seoIndexableWrapV336\").hidden=keyPage);const saveButton=$2(\"seoSavePageV332\");saveButton&&(saveButton.disabled=!!record.permissionRequired,saveButton.textContent=record.permissionRequired?\"Shopify Product permission required\":\"Save & Verify in Shopify\");const result=$2(\"seoSaveResultV332\");result&&record.permissionRequired?(result.hidden=!1,result.classList.add(\"error\"),result.textContent=\"Club Home and Ticket Home are available. Membership Product SEO needs Shopify Product permission before Orbit can edit it.\"):result&&(result.hidden=!0,result.classList.remove(\"error\"),result.textContent=\"\"),updateSeoPreviewV332(),renderSeoKeyPagesV336(),renderSeoPageListV332()}function openSeoPageV332(page){populateSeoEditorV336(page,{keyPage:!1})}function openSeoKeyPageV336(page){populateSeoEditorV336(page,{keyPage:!0})}async function loadSeoKeyPagesV336(){const status=$2(\"seoKeyConnectionStatusV336\");status&&(status.className=\"orbit-status-pill waiting\",status.textContent=\"Loading\");const data=await api(\"/api/admin/seo/key-pages\",{cacheMs:0,timeoutMs:3e4});seoKeyPagesV336=Array.isArray(data.pages)?data.pages:[],status&&(status.className=\"orbit-status-pill \"+(data.authorised?\"success\":\"warning\"),status.textContent=data.authorised?seoKeyPagesV336.filter(siteRecordMatchesV544).length+\" ready\":\"Reconnect Shopify\");const prior=seoSelectedKeyPageV336?.id;return seoSelectedKeyPageV336=prior&&seoKeyPagesV336.find(page=>page.id===prior)||null,renderSeoKeyPagesV336(),seoSelectedKeyPageV336&&siteRecordMatchesV544(seoSelectedKeyPageV336)&&openSeoKeyPageV336(seoSelectedKeyPageV336),data}async function loadSeoPagesV332(){const status=$2(\"seoConnectionStatusV332\");status&&(status.className=\"orbit-status-pill waiting\",status.textContent=\"Loading\");const data=await api(\"/api/admin/seo/pages\",{cacheMs:0,timeoutMs:3e4});seoPagesV332=(Array.isArray(data.pages)?data.pages:[]).filter(page=>String(page.templateSuffix||\"\")===\"orbit-event\"),status&&(status.className=\"orbit-status-pill \"+(data.authorised?\"success\":\"warning\"),status.textContent=data.authorised?seoPagesV332.filter(siteRecordMatchesV544).length+\" events\":\"Reconnect Shopify\");const priorId=seoSelectedPageV332?.id;return seoSelectedPageV332=priorId&&seoPagesV332.find(page=>page.id===priorId)||null,renderSeoPageListV332(),seoSelectedPageV332&&siteRecordMatchesV544(seoSelectedPageV332)&&openSeoPageV332(seoSelectedPageV332),data}async function saveSeoPageV332(button2){const keyPage=seoSelectedKeyPageV336,normalPage=seoSelectedPageV332;if(!keyPage&&!normalPage)throw new Error(\"Choose a page first.\");const payload={seoTitle:String($2(\"seoTitleInputV332\")?.value||\"\").trim(),seoDescription:String($2(\"seoDescriptionInputV332\")?.value||\"\").trim(),indexable:!!$2(\"seoIndexableInputV332\")?.checked},result=$2(\"seoSaveResultV332\");setLoading(button2,!0);try{let data,updated;if(keyPage){if(data=await api(\"/api/admin/seo/key-pages/\"+encodeURIComponent(keyPage.id),{method:\"PUT\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:45e3}),updated=data.page,!updated?.id)throw new Error(\"Shopify did not return verified key-page SEO.\");seoKeyPagesV336=seoKeyPagesV336.map(page=>page.id===updated.id?updated:page),openSeoKeyPageV336(updated)}else{if(data=await api(\"/api/admin/seo/pages/\"+encodeURIComponent(normalPage.id),{method:\"PUT\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:45e3}),updated=data.page,!updated?.id)throw new Error(\"Shopify did not return the verified Page SEO.\");seoPagesV332=seoPagesV332.map(page=>page.id===updated.id?updated:page),openSeoPageV332(updated)}result&&(result.hidden=!1,result.classList.remove(\"error\"),result.textContent=\"Saved and read back from Shopify. Search engines can take time to recrawl the updated listing.\"),setNotice2(\"SEO saved and verified in Shopify.\")}catch(error){throw result&&(result.hidden=!1,result.classList.add(\"error\"),result.textContent=error.message||String(error)),error}finally{setLoading(button2,!1)}}let seoRankingsLoadedV477=!1;function setSeoPaneV477(pane=\"pages\"){const next=[\"pages\",\"rankings\",\"sitemaps\"].includes(pane)?pane:\"pages\";document.querySelectorAll(\"[data-seo-pane-v477]\").forEach(button2=>button2.classList.toggle(\"active\",button2.dataset.seoPaneV477===next)),document.querySelectorAll(\"[data-seo-pane-panel-v477]\").forEach(panel=>panel.hidden=panel.dataset.seoPanePanelV477!==next),next===\"rankings\"&&!seoRankingsLoadedV477&&loadSeoRankingsV477(null).catch(err=>setNotice2(err.message||err,!0)),next===\"sitemaps\"&&loadSeoSitemapV494(null).catch(err=>setNotice2(err.message||err,!0))}function seoMetricHelpersV494(){return{pct:n=>(Number(n||0)*100).toFixed(1)+\"%\",pos:n=>Number(n||0)>0?Number(n).toFixed(1):\"\\u2014\",num:n=>Number(n||0).toLocaleString(\"en-GB\")}}function renderSeoRankingsV477(data={},traffic={}){const status=$2(\"seoRankingsStatusV477\"),summary=$2(\"seoRankingsSummaryV477\"),table2=$2(\"seoRankingsTableV477\"),queries=$2(\"seoQueriesTableV494\"),trafficSummary=$2(\"seoTrafficSummaryV494\"),pages=Array.isArray(data.pages)?data.pages:[],queryRows=Array.isArray(data.queries)?data.queries:[],snap=data.summary||{},h=seoMetricHelpersV494(),siteLabel=data.site?.label||traffic.site?.label||\"Selected website\";data.configured?(status&&(status.className=\"orbit-notice success\",status.innerHTML=\"<strong>Live \"+esc(siteLabel)+\" Google search data.</strong> \"+esc(data.periodLabel||\"Selected period\")+\" \\xB7 rankings are read directly from Search Console.\"),summary&&(summary.innerHTML=[[\"Organic clicks\",h.num(snap.clicks)],[\"Impressions\",h.num(snap.impressions)],[\"CTR\",h.pct(snap.ctr)],[\"Average position\",h.pos(snap.averagePosition)]].map(x=>\"<article><span>\"+esc(x[0])+\"</span><strong>\"+esc(x[1])+\"</strong></article>\").join(\"\")),queries&&(queries.innerHTML=queryRows.length?\"<table><thead><tr><th>Search query</th><th>Clicks</th><th>Impressions</th><th>CTR</th><th>Avg. position</th></tr></thead><tbody>\"+queryRows.map(row=>\"<tr><td><strong>\"+esc(row.query||\"(not set)\")+\"</strong></td><td>\"+h.num(row.clicks)+\"</td><td>\"+h.num(row.impressions)+\"</td><td>\"+h.pct(row.ctr)+\"</td><td>\"+h.pos(row.averagePosition)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":\"<div class='orbit-empty-state'><strong>No search queries in this period</strong></div>\"),table2&&(table2.innerHTML=pages.length?\"<table><thead><tr><th>Landing page</th><th>Clicks</th><th>Impressions</th><th>CTR</th><th>Avg. position</th></tr></thead><tbody>\"+pages.map(row=>\"<tr><td><strong>\"+esc(row.page||\"(not set)\")+\"</strong></td><td>\"+h.num(row.clicks)+\"</td><td>\"+h.num(row.impressions)+\"</td><td>\"+h.pct(row.ctr)+\"</td><td>\"+h.pos(row.averagePosition)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":\"<div class='orbit-empty-state'><strong>No organic landing pages in this period</strong></div>\")):(status&&(status.className=\"orbit-notice warning\",status.innerHTML=\"<strong>Search Console is not connected.</strong> Connect Search Console in Analytics \\u2192 Google Analytics first.\"),summary&&(summary.innerHTML=\"\"),table2&&(table2.innerHTML=\"<div class='orbit-empty-state'><strong>Search Console connection required</strong></div>\"),queries&&(queries.innerHTML=\"\"));const tm=traffic.metrics||{};trafficSummary&&(trafficSummary.innerHTML=traffic.configured===!1?\"<article><span>GA4 traffic</span><strong>Not configured</strong></article>\":[[\"GA4 users\",h.num(tm.activeUsers)],[\"GA4 sessions\",h.num(tm.sessions)],[\"Page views\",h.num(tm.screenPageViews)],[\"New users\",h.num(tm.newUsers)]].map(x=>\"<article><span>\"+esc(x[0])+\"</span><strong>\"+esc(x[1])+\"</strong></article>\").join(\"\"))}async function loadSeoRankingsV477(button2){const token=siteReadV544(\"seo-rankings\");clearSiteTargetsV544([\"seoRankingsSummaryV477\",\"seoRankingsTableV477\",\"seoQueriesTableV494\",\"seoTrafficSummaryV494\"],\"\"),clearSiteTargetsV544([\"seoRankingsStatusV477\"]);const period=$2(\"seoRankingsPeriodV477\")?.value||\"last_30_days\",site=token.site;siteLoadingV544(button2,token,!0);try{const[data,traffic]=await Promise.all([api(\"/api/admin/seo/rankings?period=\"+encodeURIComponent(period)+\"&site=\"+encodeURIComponent(site),{cacheMs:0,timeoutMs:3e4}),api(\"/api/admin/google-analytics/report?period=\"+encodeURIComponent(period)+\"&site=\"+encodeURIComponent(site),{cacheMs:0,timeoutMs:3e4}).catch(()=>({configured:!1,metrics:{}}))]);return token.current()&&(seoRankingsLoadedV477=!0,renderSeoRankingsV477(data,traffic)),data}catch(error){siteReadFailureV544(token,\"seoRankingsStatusV477\",error)}finally{siteLoadingV544(button2,token,!1)}}async function loadSeoSitemapV494(button2){const token=siteReadV544(\"seo-sitemap\");clearSiteTargetsV544([\"seoSitemapStatusV494\",\"seoSitemapDetailV494\"]);const site=token.site,status=$2(\"seoSitemapStatusV494\"),detail=$2(\"seoSitemapDetailV494\");siteLoadingV544(button2,token,!0);try{const data=await api(\"/api/admin/seo/sitemaps?site=\"+encodeURIComponent(site),{cacheMs:0,timeoutMs:3e4});if(!token.current())return data;if(status&&(status.className=\"orbit-notice \"+(data.configured?\"success\":\"warning\"),status.innerHTML=data.configured?\"<strong>\"+esc(data.site?.label||site)+\" sitemap is connected to Search Console.</strong> \"+esc(data.sitemapUrl||\"\"):\"<strong>Step 1 is still needed: connect Search Console.</strong> Open the Search Console setup in Analytics, add and DNS-verify all four Domain properties, then connect Orbit read-only once.\"),detail){const rows=data.sitemaps||[];detail.innerHTML=\"<p><strong>Configured sitemap:</strong> \"+esc(data.sitemapUrl||\"\\u2014\")+\"</p><p><strong>Sitemap write permission:</strong> \"+(data.writePermissionConnected?\"Authorized separately\":\"Not authorized \\xB7 read-only status still works\")+\"</p>\"+(rows.length?\"<table><thead><tr><th>Submitted sitemap</th><th>Last submitted</th><th>Warnings</th><th>Errors</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td>\"+esc(r.path||\"\")+\"</td><td>\"+esc(r.lastSubmitted?prettyDate(r.lastSubmitted):\"\\u2014\")+\"</td><td>\"+Number(r.warnings||0)+\"</td><td>\"+Number(r.errors||0)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":\"<div class='orbit-empty-state'><strong>Google has not returned a submitted sitemap for this property yet.</strong><span>Once Search Console is connected and the Domain property is verified, press Submit to Google once.</span></div>\")}return data}catch(error){siteReadFailureV544(token,\"seoSitemapStatusV494\",error),token.current()&&clearSiteTargetsV544([\"seoSitemapDetailV494\"],\"Sitemap status unavailable for this website. Use Refresh to retry.\")}finally{siteLoadingV544(button2,token,!1)}}async function submitSeoSitemapV494(button2){const site=$2(\"seoSitemapSiteV494\")?.value||\"collectors_club\";if(confirm(\"Submit this website's configured sitemap to Google Search Console? This does not change the public website.\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/seo/sitemaps/submit\",{method:\"POST\",body:JSON.stringify({site}),cacheMs:0,timeoutMs:3e4});setNotice2(\"Sitemap submitted to Google: \"+(result.sitemapUrl||\"\")),await loadSeoSitemapV494(null)}finally{setLoading(button2,!1)}}}let seoProductsV333=[],seoSelectedProductV333=null,seoCanWriteFilesV333=!1;function switchSeoResourceV333(resource){document.querySelectorAll(\"[data-seo-resource-v333]\").forEach(button2=>button2.classList.toggle(\"active\",button2.dataset.seoResourceV333===resource)),document.querySelectorAll(\"[data-seo-resource-panel-v333]\").forEach(panel=>panel.hidden=panel.dataset.seoResourcePanelV333!==resource),resource===\"products\"&&!seoProductsV333.length&&loadSeoProductsV333().catch(err=>setNotice2(\"Product SEO unavailable: \"+(err.message||err),!0)),resource===\"collections\"&&!seoCollectionsV333.length&&loadSeoCollectionsV333().catch(err=>setNotice2(\"Collection SEO unavailable: \"+(err.message||err),!0))}function updateSeoProductPreviewV333(){const title=String($2(\"seoProductTitleInputV333\")?.value||\"\"),description=String($2(\"seoProductDescriptionInputV333\")?.value||\"\");text(\"seoProductTitleCountV333\",title.length),text(\"seoProductDescriptionCountV333\",description.length),text(\"seoProductPreviewTitleV333\",title||seoSelectedProductV333?.title||\"Product title\"),text(\"seoProductPreviewUrlV333\",seoSelectedProductV333?\"orbitcollectorsclub.com/products/\"+seoSelectedProductV333.handle:\"orbitcollectorsclub.com/products/\\u2026\"),text(\"seoProductPreviewDescriptionV333\",description||\"Meta description preview.\")}function renderSeoProductListV333(){const target=$2(\"seoProductListV333\");if(!target)return;const q=String($2(\"seoProductSearchV333\")?.value||\"\").trim().toLowerCase(),rows=seoProductsV333.filter(product=>!q||[product.title,product.handle,product.status].join(\" \").toLowerCase().includes(q));if(!rows.length){target.innerHTML=\"<div class='orbit-empty-state'><strong>No matching products</strong><span>Try another search.</span></div>\";return}target.innerHTML=rows.map(product=>\"<button type='button' class='orbit-seo-page-row-v332\"+(seoSelectedProductV333?.id===product.id?\" active\":\"\")+\"' data-seo-product-id='\"+esc(product.id)+\"'><span><strong>\"+esc(product.title||product.handle)+\"</strong><small>/products/\"+esc(product.handle)+\"</small></span><b>\"+esc(product.status||\"\")+\"</b></button>\").join(\"\")}function renderSeoProductImagesV333(){const target=$2(\"seoProductImagesV333\");if(!target)return;const media=Array.isArray(seoSelectedProductV333?.media)?seoSelectedProductV333.media:[];if($2(\"seoFileWriteStatusV333\")&&($2(\"seoFileWriteStatusV333\").className=\"orbit-status-pill \"+(seoCanWriteFilesV333?\"success\":\"warning\"),$2(\"seoFileWriteStatusV333\").textContent=seoCanWriteFilesV333?\"Alt editing enabled\":\"File scope required\"),!media.length){target.innerHTML=\"<div class='orbit-empty-state'><strong>No product images found</strong><span>This product has no MediaImage records in the first 25 media items.</span></div>\";return}target.innerHTML=media.map(file=>{const image=file.url?\"<img src='\"+esc(file.url)+\"' alt=''>\":\"<div class='orbit-seo-image-placeholder-v333'>No preview</div>\";return\"<div class='orbit-seo-image-row-v333' data-seo-file-row='\"+esc(file.id)+\"'>\"+image+\"<div><strong>\"+esc(file.status||\"Image\")+\"</strong><label>Alt text<input type='text' data-seo-file-alt='\"+esc(file.id)+\"' value='\"+esc(file.alt||\"\")+\"' maxlength='512' \"+(seoCanWriteFilesV333?\"\":\"disabled\")+\"></label><small>\"+(seoCanWriteFilesV333?\"Saved directly to Shopify Files.\":\"Connected token needs write_files or write_themes to edit alt text.\")+\"</small></div><button type='button' class='secondary' data-seo-file-save='\"+esc(file.id)+\"' \"+(seoCanWriteFilesV333?\"\":\"disabled\")+\">Save Alt</button></div>\"}).join(\"\")}function openSeoProductV333(product){if(seoSelectedProductV333=product||null,$2(\"seoProductEditorEmptyV333\")&&($2(\"seoProductEditorEmptyV333\").hidden=!!product),$2(\"seoProductEditorV333\")&&($2(\"seoProductEditorV333\").hidden=!product),!product){renderSeoProductListV333();return}text(\"seoProductNameV333\",product.title||product.handle),text(\"seoProductUrlV333\",\"/products/\"+product.handle+\" \\xB7 \"+(product.status||\"\")),$2(\"seoOpenProductV333\")&&($2(\"seoOpenProductV333\").href=\"https://orbitcollectorsclub.com/products/\"+encodeURIComponent(product.handle)),$2(\"seoProductTitleInputV333\")&&($2(\"seoProductTitleInputV333\").value=product.seoTitle||product.title||\"\"),$2(\"seoProductDescriptionInputV333\")&&($2(\"seoProductDescriptionInputV333\").value=product.seoDescription||\"\"),updateSeoProductPreviewV333(),renderSeoProductListV333(),renderSeoProductImagesV333()}async function loadSeoProductsV333(){const status=$2(\"seoProductConnectionStatusV333\");status&&(status.className=\"orbit-status-pill waiting\",status.textContent=\"Loading\");const data=await api(\"/api/admin/seo/products\",{cacheMs:0,timeoutMs:3e4});seoProductsV333=Array.isArray(data.products)?data.products:[],seoCanWriteFilesV333=!!data.canWriteFiles,status&&(status.className=\"orbit-status-pill \"+(data.authorised?\"success\":\"warning\"),status.textContent=data.authorised?seoProductsV333.length+\" products\":\"Reconnect Shopify\");const prior=seoSelectedProductV333?.id;return seoSelectedProductV333=prior&&seoProductsV333.find(product=>product.id===prior)||null,renderSeoProductListV333(),seoSelectedProductV333&&openSeoProductV333(seoSelectedProductV333),data}async function saveSeoProductV333(button2){if(!seoSelectedProductV333)throw new Error(\"Choose a Shopify Product first.\");const payload={seoTitle:String($2(\"seoProductTitleInputV333\")?.value||\"\").trim(),seoDescription:String($2(\"seoProductDescriptionInputV333\")?.value||\"\").trim()},result=$2(\"seoProductSaveResultV333\");setLoading(button2,!0);try{const updated=(await api(\"/api/admin/seo/products/\"+encodeURIComponent(seoSelectedProductV333.id),{method:\"PUT\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:45e3})).product;if(!updated?.id)throw new Error(\"Shopify did not return the verified Product SEO.\");seoProductsV333=seoProductsV333.map(product=>product.id===updated.id?updated:product),seoSelectedProductV333=updated,openSeoProductV333(updated),result&&(result.hidden=!1,result.classList.remove(\"error\"),result.textContent=\"Product SEO saved and read back from Shopify.\"),setNotice2(\"Shopify Product SEO saved and verified.\")}catch(error){throw result&&(result.hidden=!1,result.classList.add(\"error\"),result.textContent=error.message||String(error)),error}finally{setLoading(button2,!1)}}async function saveSeoFileAltV333(button2){const fileId=button2?.dataset?.seoFileSave;if(!fileId)return;const input=document.querySelector(\"[data-seo-file-alt='\"+CSS.escape(fileId)+\"']\"),alt=String(input?.value||\"\").trim();setLoading(button2,!0);try{const file=(await api(\"/api/admin/seo/files/\"+encodeURIComponent(fileId)+\"/alt\",{method:\"PUT\",body:JSON.stringify({alt}),cacheMs:0,timeoutMs:45e3})).file;if(!file?.id)throw new Error(\"Shopify did not return the verified image file.\");seoSelectedProductV333&&(seoSelectedProductV333.media=(seoSelectedProductV333.media||[]).map(item=>item.id===file.id?{...item,alt:file.alt,status:file.status||item.status}:item),seoProductsV333=seoProductsV333.map(product=>product.id===seoSelectedProductV333.id?seoSelectedProductV333:product)),renderSeoProductImagesV333(),setNotice2(\"Image alt text saved and verified in Shopify.\")}finally{setLoading(button2,!1)}}let seoCollectionsV333=[],seoSelectedCollectionV333=null;function updateSeoCollectionPreviewV333(){const title=String($2(\"seoCollectionTitleInputV333\")?.value||\"\"),description=String($2(\"seoCollectionDescriptionInputV333\")?.value||\"\");text(\"seoCollectionTitleCountV333\",title.length),text(\"seoCollectionDescriptionCountV333\",description.length),text(\"seoCollectionPreviewTitleV333\",title||seoSelectedCollectionV333?.title||\"Collection title\"),text(\"seoCollectionPreviewUrlV333\",seoSelectedCollectionV333?\"orbitcollectorsclub.com/collections/\"+seoSelectedCollectionV333.handle:\"orbitcollectorsclub.com/collections/\\u2026\"),text(\"seoCollectionPreviewDescriptionV333\",description||\"Meta description preview.\")}function renderSeoCollectionListV333(){const target=$2(\"seoCollectionListV333\");if(!target)return;const q=String($2(\"seoCollectionSearchV333\")?.value||\"\").trim().toLowerCase(),rows=seoCollectionsV333.filter(collection=>!q||[collection.title,collection.handle].join(\" \").toLowerCase().includes(q));if(!rows.length){target.innerHTML=\"<div class='orbit-empty-state'><strong>No matching collections</strong><span>Try another search.</span></div>\";return}target.innerHTML=rows.map(collection=>\"<button type='button' class='orbit-seo-page-row-v332\"+(seoSelectedCollectionV333?.id===collection.id?\" active\":\"\")+\"' data-seo-collection-id='\"+esc(collection.id)+\"'><span><strong>\"+esc(collection.title||collection.handle)+\"</strong><small>/collections/\"+esc(collection.handle)+\"</small></span><b>Collection</b></button>\").join(\"\")}function openSeoCollectionV333(collection){if(seoSelectedCollectionV333=collection||null,$2(\"seoCollectionEditorEmptyV333\")&&($2(\"seoCollectionEditorEmptyV333\").hidden=!!collection),$2(\"seoCollectionEditorV333\")&&($2(\"seoCollectionEditorV333\").hidden=!collection),!collection){renderSeoCollectionListV333();return}text(\"seoCollectionNameV333\",collection.title||collection.handle),text(\"seoCollectionUrlV333\",\"/collections/\"+collection.handle),$2(\"seoOpenCollectionV333\")&&($2(\"seoOpenCollectionV333\").href=\"https://orbitcollectorsclub.com/collections/\"+encodeURIComponent(collection.handle)),$2(\"seoCollectionTitleInputV333\")&&($2(\"seoCollectionTitleInputV333\").value=collection.seoTitle||collection.title||\"\"),$2(\"seoCollectionDescriptionInputV333\")&&($2(\"seoCollectionDescriptionInputV333\").value=collection.seoDescription||\"\"),updateSeoCollectionPreviewV333(),renderSeoCollectionListV333()}async function loadSeoCollectionsV333(){const status=$2(\"seoCollectionConnectionStatusV333\");status&&(status.className=\"orbit-status-pill waiting\",status.textContent=\"Loading\");const data=await api(\"/api/admin/seo/collections\",{cacheMs:0,timeoutMs:3e4});seoCollectionsV333=Array.isArray(data.collections)?data.collections:[],status&&(status.className=\"orbit-status-pill \"+(data.authorised?\"success\":\"warning\"),status.textContent=data.authorised?seoCollectionsV333.length+\" collections\":\"Reconnect Shopify\");const prior=seoSelectedCollectionV333?.id;return seoSelectedCollectionV333=prior&&seoCollectionsV333.find(row=>row.id===prior)||null,renderSeoCollectionListV333(),seoSelectedCollectionV333&&openSeoCollectionV333(seoSelectedCollectionV333),data}async function saveSeoCollectionV333(button2){if(!seoSelectedCollectionV333)throw new Error(\"Choose a Shopify Collection first.\");const payload={seoTitle:String($2(\"seoCollectionTitleInputV333\")?.value||\"\").trim(),seoDescription:String($2(\"seoCollectionDescriptionInputV333\")?.value||\"\").trim()},result=$2(\"seoCollectionSaveResultV333\");setLoading(button2,!0);try{const updated=(await api(\"/api/admin/seo/collections/\"+encodeURIComponent(seoSelectedCollectionV333.id),{method:\"PUT\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:45e3})).collection;if(!updated?.id)throw new Error(\"Shopify did not return the verified Collection SEO.\");seoCollectionsV333=seoCollectionsV333.map(row=>row.id===updated.id?updated:row),seoSelectedCollectionV333=updated,openSeoCollectionV333(updated),result&&(result.hidden=!1,result.classList.remove(\"error\"),result.textContent=\"Collection SEO saved and read back from Shopify.\"),setNotice2(\"Shopify Collection SEO saved and verified.\")}catch(error){throw result&&(result.hidden=!1,result.classList.add(\"error\"),result.textContent=error.message||String(error)),error}finally{setLoading(button2,!1)}}async function loadMetaBridgeV4484(){const status=$2(\"metaBridgeStatus\"),setup=$2(\"metaBridgeSetup\"),area=$2(\"metaBridgeCode\");status&&(status.textContent=\"Loading Orbit checkout bridge\\u2026\");try{const data=await api(\"/api/admin/shopify-pixel-bridge\",{cacheMs:0,timeoutMs:3e4});area&&(area.value=data.code||\"\"),setup&&(setup.hidden=!1);const d=data.diagnostics||{},last=d.lastEvent||null,diag=$2(\"metaBridgeDiagnostics\"),auth=d.authoritativeTicketInitiateCheckout||null;if(auth&&status){const meta=auth.meta||{};status.className=\"orbit-performance-tracking-status \"+(meta.sent?\"success\":\"warning\"),status.textContent=meta.sent?\"Authoritative Ticket InitiateCheckout sent to Orbit Show Tickets \\xB7 \"+auth.checkoutId+\" \\xB7 \"+new Date(auth.sentAt).toLocaleString():\"Ticket checkout created but Meta CAPI needs attention \\xB7 \"+auth.checkoutId+\" \\xB7 \"+String(meta.reason||meta.error||\"not sent\")}else if(last){if(status){const transportOk=last.status===\"transport_ok\",accepted=last.status===\"accepted\"||last.status===\"duplicate\";status.className=\"orbit-performance-tracking-status \"+(transportOk||accepted?\"success\":\"warning\"),status.textContent=(transportOk?\"Shopify pixel transport connected\":accepted?\"Live checkout bridge event received\":\"Bridge event received but rejected\")+\" \\xB7 \"+(last.eventName||\"unknown\")+\" \\xB7 \"+new Date(last.receivedAt).toLocaleString()}if(diag){if(auth){const am=auth.meta||{};diag.hidden=!1,diag.innerHTML=\"<strong>Authoritative Ticket Meta</strong><br>Checkout: \"+esc(auth.checkoutId||\"\\u2014\")+\"<br>Event: InitiateCheckout<br>Source: Orbit checkout creation<br>Value: \\xA3\"+Number(auth.value||0).toFixed(2)+\"<br>Meta: \"+esc(am.sent?\"Sent to Orbit Show Tickets\":am.reason||am.error||\"Not sent\")+\"<br>Event ID: \"+esc(am.eventId||\"orbit_ticket_checkout_started_\"+String(auth.checkoutId||\"\"))+\"<br>Recorded: \"+esc(auth.sentAt||\"\\u2014\")+\"<hr>\"}const prior=diag?.innerHTML||\"\",meta=last.meta||{};diag.hidden=!1,diag.innerHTML=prior+\"<strong>Last Shopify telemetry event</strong><br>Event: \"+esc(last.eventName||\"\\u2014\")+\"<br>Status: \"+esc(last.status||\"\\u2014\")+\"<br>Orbit checkout: \"+esc(last.checkoutId||\"not applicable / not recognised\")+\"<br>Result: \"+esc(last.reason||\"\\u2014\")+\"<br>Meta forwarding: \"+esc(last.status===\"transport_ok\"?\"Transport heartbeat only\":meta.sent?\"Sent to Orbit Show Tickets InitiateCheckout\":meta.skipped?\"Skipped \\xB7 \"+(meta.reason||\"\"):meta.error?\"Failed \\xB7 \"+meta.error:\"No forwarding result\")+\"<br>Received: \"+esc(last.receivedAt||\"\\u2014\")}}else status&&(status.textContent=\"Bridge installed/setup available \\xB7 no Shopify checkout event has reached Orbit diagnostics yet.\"),diag&&(diag.hidden=!1,diag.textContent=\"No bridge events recorded yet. Start an Orbit ticket checkout after the Shopify Custom Pixel is connected, then Reload this panel.\");return data}catch(error){throw status&&(status.textContent=\"Could not load bridge: \"+error.message),error}}async function copyMetaBridgeV4484(){const area=$2(\"metaBridgeCode\"),result=$2(\"metaBridgeResult\");if(area?.value)try{await navigator.clipboard.writeText(area.value),result&&(result.hidden=!1,result.textContent=\"Copied. Paste into a new Shopify Custom Pixel on the Collectors Club Shopify store.\")}catch{area.focus(),area.select(),document.execCommand(\"copy\"),result&&(result.hidden=!1,result.textContent=\"Copied.\")}}async function loadMetaIsolationHealthV4482(button2=null){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/meta-isolation-health\",{cacheMs:0,timeoutMs:45e3}),status=$2(\"metaIsolationHealthResult\"),detail=$2(\"metaIsolationHealthDetail\");if(status&&(status.className=\"orbit-performance-tracking-status \"+(data.healthy?\"success\":\"warning\"),status.textContent=data.healthy?\"Healthy \\xB7 each Orbit website has only its own Meta dataset\":\"Attention required \\xB7 a Meta dataset is appearing on the wrong website\"),detail){const rows=(data.results||[]).map(row=>{const name=row.label||{card_show:\"Orbit Card Show\",show_tickets:\"Orbit Show Tickets\",collectors_club:\"Orbit Collectors Club\",card_show_index:\"CardShowIndex\"}[row.key]||row.key||\"Website\";if(row.scanError)return\"<div><strong>\"+esc(name)+\"</strong><span>Scan failed: \"+esc(row.scanError)+\"</span></div>\";const bad=Array.isArray(row.forbidden)?row.forbidden:[],forbidden=bad.length?bad.map(item=>\"Wrong Pixel \"+esc(item.id||\"unknown\")+(item.appManaged?\" \\xB7 Shopify Facebook & Instagram app Web Pixel\":\"\")).join(\" \\xB7 \"):\"No foreign Orbit dataset detected\",own=row.allowed?.present?\"Own Pixel present\"+(row.allowed?.appManaged?\" \\xB7 app managed\":\"\"):row.allowed?\"Own Pixel not found\":\"Own Pixel not configured\";return\"<div><strong>\"+esc(name)+\"</strong><span>\"+own+\" \\xB7 \"+forbidden+\"</span></div>\"}).join(\"\");let remediation=\"\";if(data.remediation){const r=data.remediation,checks=Array.isArray(r.checks)?r.checks:[],steps=Array.isArray(r.steps)?r.steps:[];remediation=\"<section class='orbit-meta-remediation-v495'><strong>Why Show Tickets can show the Club Pixel</strong><p>\"+esc(r.cause||\"\")+\"</p><ul>\"+checks.map(x=>\"<li class='\"+(x.ok?\"ready\":\"missing\")+\"'>\"+(x.ok?\"\\u2713 \":\"\\u2717 \")+esc(x.label||x.key)+\"</li>\").join(\"\")+\"</ul><p><strong>\"+(r.ready?\"Safe to complete the manual Shopify cutover\":\"Do not disable Shopify Meta yet\")+\"</strong></p>\"+(r.ready?\"<ol>\"+steps.map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\")+\"</ol><p><strong>Important:</strong> \"+esc(r.protectedWarning||\"\")+\"</p><a class='orbit-button-link' href='https://admin.shopify.com/' target='_blank' rel='noopener'>Open Shopify Admin \\u2197</a>\":\"<p>Complete the missing red readiness checks above first. Orbit will not automatically change Shopify or Meta settings.</p>\")+\"</section>\"}detail.hidden=!1,detail.classList.toggle(\"error\",!data.healthy),detail.innerHTML=rows+(data.actionRequired?\"<p><strong>Next action:</strong> \"+esc(data.actionRequired)+\"</p>\":\"\")+remediation}return data}finally{button2&&setLoading(button2,!1)}}function renderClubMetaConversionDiagnosticsV535(data){const status=$2(\"clubMetaConversionDiagnosticsStatus\"),detail=$2(\"clubMetaConversionDiagnosticsDetail\"),health=data.health||{},rows=Array.isArray(data.events)?data.events:[],latest=rows[0]||null,labels={accepted:\"Meta API accepted\",rejected:\"Meta API rejected\",unknown:\"Outcome unknown\",attempting:\"Request in progress\",blocked:\"Not submitted\",skipped:\"Excluded from advertising\",legacy_sent_unverified:\"Previous send: acceptance unverified\",failed:\"Previous failure: no receipt recorded\"},label=row=>labels[row.status]||\"Acceptance unverified\",amount=row=>row.value!==null&&row.value!==void 0&&Number.isFinite(Number(row.value))?Number(row.value).toFixed(2)+\" \"+String(row.currency||\"\"):\"Not recorded\",when=value=>value?new Date(value).toLocaleString():\"Not recorded\";if(status){const configured=!!(health.enabled&&health.tokenConfigured&&health.pixelId),proved=latest&&latest.receiptVerified===!0&&latest.pixelId===health.pixelId;status.className=\"orbit-performance-tracking-status \"+(configured&&proved?\"success\":\"warning\"),status.textContent=health.enabled?health.tokenConfigured?health.pixelId?latest?label(latest)+(proved?\" \\xB7 \"+latest.eventsReceived+\" event received \\xB7 \"+amount(latest):\"\"):\"Configured \\xB7 no conversion receipts yet\":\"Club dataset missing\":\"Club CAPI token missing\":\"Club CAPI is disabled\"}if(!detail)return;detail.className=\"orbit-action-result orbit-club-capi-receipts-v535\",detail.hidden=!1;const mode=health.testMode?\"Test mode \\xB7 request code \"+String(health.testEventCode||\"configured\"):\"Production mode \\xB7 no test_event_code in new requests\",intro=\"<p><strong>Current settings:</strong> \"+esc(mode)+\" \\xB7 Dataset \"+esc(health.pixelId||\"not configured\")+\"</p><p>Shopify Facebook &amp; Instagram data sharing must remain OFF. API acceptance does not by itself certify ads. Match the exact event ID in Meta Test Events before marking Fixed.</p>\";detail.innerHTML=intro+(rows.length?rows.map(row=>{const code=row.testEventCode===null||row.testEventCode===void 0?\"Not recorded in this older release\":row.testEventCode?row.testEventCode+\" (included in request)\":\"Absent (production request)\",received=row.eventsReceived===null||row.eventsReceived===void 0?\"Not recorded\":String(row.eventsReceived),http=row.httpStatus===null||row.httpStatus===void 0?\"No response recorded\":String(row.httpStatus),attempts=row.attemptCount===null||row.attemptCount===void 0?\"Not recorded\":String(row.attemptCount),reason=row.suppressedFreeOrder?\"This free/fully discounted order was not sent to Meta as a Purchase.\":row.failureReason||row.error||\"\",summary=row.responseSummary?\"<details><summary>View Meta response</summary><pre style='white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;max-height:240px;overflow:auto'>\"+esc(JSON.stringify(row.responseSummary,null,2))+\"</pre></details>\":\"<p>No authoritative Meta response was retained for this record. Do not treat the old \\u2018sent\\u2019 label as proof.</p>\";return\"<section style='padding:14px 0;border-top:1px solid #d7e1ec;overflow-wrap:anywhere'><strong>Purchase \\xB7 \"+esc(label(row))+\"</strong><p style='margin:6px 0'>Value: <strong>\"+esc(amount(row))+\"</strong> \\xB7 Dataset: \"+esc(row.pixelId||\"not configured\")+\"<br>Shopify order: \"+esc(row.shopifyOrderId||\"not recorded\")+\"<br>Event ID: \"+esc(row.eventId||\"not recorded\")+\"</p><p style='margin:6px 0'>HTTP: <strong>\"+esc(http)+\"</strong> \\xB7 Meta events received: <strong>\"+esc(received)+\"</strong><br>HTTP attempts: \"+esc(attempts)+\" \\xB7 Duplicate submissions prevented: \"+esc(String(row.duplicateSuppressedCount||0))+\"<br>Test code: \"+esc(code)+\"<br>Attempted: \"+esc(when(row.attemptedAt))+\"<br>Response: \"+esc(when(row.respondedAt))+\"<br>Meta trace: \"+esc(row.providerId||\"not recorded\")+\"</p>\"+(reason?\"<p><strong>Reason:</strong> \"+esc(reason)+\"</p>\":\"\")+summary+\"<p style='margin-bottom:0'>\"+esc(row.retryState||\"No automatic historical replay\")+\". Meta deduplication and Test Events visibility are not reported by this receipt.</p></section>\"}).join(\"\"):\"<p>No Club conversion records yet. Complete the saved Acceptance Test, then reload this panel.</p>\")}async function loadMetaConversionDiagnosticsV4489(button2=null,kind=\"ticket\"){button2&&setLoading(button2,!0);try{const businessKind=kind===\"club\"?\"club\":\"ticket\",data=await api(\"/api/admin/meta-conversion-diagnostics?kind=\"+encodeURIComponent(businessKind)+\"&limit=12\",{cacheMs:0,timeoutMs:3e4}),isClub=businessKind===\"club\",status=$2(isClub?\"clubMetaConversionDiagnosticsStatus\":\"metaConversionDiagnosticsStatus\"),detail=$2(isClub?\"clubMetaConversionDiagnosticsDetail\":\"metaConversionDiagnosticsDetail\"),health=data.health||{},rows=Array.isArray(data.events)?data.events:[];if(isClub)return renderClubMetaConversionDiagnosticsV535(data),data;const latest=rows[0]||null,label=isClub?\"Club\":\"Ticket\";if(status){const ok=!!health.tokenConfigured&&!!health.enabled&&(!latest||latest.status===\"sent\");status.className=\"orbit-performance-tracking-status \"+(ok?\"success\":\"warning\"),status.textContent=health.tokenConfigured?health.enabled?latest?latest.status===\"sent\"?\"Runtime healthy \\xB7 last \"+latest.eventName+\" sent\":\"Attention \\xB7 last \"+latest.eventName+\" \"+latest.status:\"Runtime configured \\xB7 no persisted conversion events yet\":label+\" CAPI disabled\":label+\" CAPI token missing\"}return detail&&(detail.hidden=!1,rows.length?detail.innerHTML=rows.map(row=>{const when=row.sentAt||row.updatedAt||\"\",value=Number(row.value);return\"<div style='padding:8px 0;border-bottom:1px solid #d7e1ec'><strong>\"+esc(row.eventName||\"Meta event\")+\" \\xB7 \"+esc(row.status||\"unknown\")+\"</strong><br>Pixel: \"+esc(row.pixelId||\"\\u2014\")+\" \\xB7 Checkout: \"+esc(row.checkoutId||\"\\u2014\")+(row.shopifyOrderId?\" \\xB7 Shopify order: \"+esc(row.shopifyOrderId):\"\")+(Number.isFinite(value)?\" \\xB7 Value: \\xA3\"+esc(value.toFixed(2))+\" \"+esc(row.currency||\"GBP\"):\"\")+\"<br>Event ID: \"+esc(row.eventId||\"\\u2014\")+\" \\xB7 \"+(row.testEvent?\"Test event\":\"Live event\")+(when?\" \\xB7 \"+esc(new Date(when).toLocaleString()):\"\")+(row.error?\"<br><strong>Error:</strong> \"+esc(row.error):\"\")+\"</div>\"}).join(\"\"):detail.innerHTML=\"<strong>No persisted \"+esc(label)+\" CAPI events yet.</strong><br>\"+(isClub?\"Complete one genuine paid membership signup, then reload this panel to prove the server Purchase.\":\"Start a ticket checkout to create an InitiateCheckout diagnostic.\")),data}finally{button2&&setLoading(button2,!1)}}const performanceSitesV544={show_tickets:\"orbitshowtickets.co.uk\",collectors_club:\"orbitcollectorsclub.com\"};let performanceSiteV544=\"show_tickets\";const performanceReadTokensV544={};function setPerformanceWorkspaceSiteV628(routeKey=\"\"){const wanted=(adminWorkspaceConfig[routeKey]?.businessWorkspace||canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599()))===\"members-club\"?\"collectors_club\":\"show_tickets\";if(!(!Object.prototype.hasOwnProperty.call(performanceSitesV544,wanted)||performanceSiteV544===wanted)){performanceSiteV544=wanted;for(const key of Object.keys(performanceReadTokensV544))performanceReadTokensV544[key]++;seoRankingsLoadedV477=!1,showPerformanceSiteV544()}}function selectedPerformanceSiteV544(){return performanceSiteV544}function performanceDomainV544(){return performanceSitesV544[performanceSiteV544]}function siteReadV544(channel){const key=performanceSiteV544,sequence=(performanceReadTokensV544[channel]||0)+1;return performanceReadTokensV544[channel]=sequence,{site:key,id:channel+\":\"+sequence,current:()=>performanceSiteV544===key&&performanceReadTokensV544[channel]===sequence}}function siteLoadingV544(button2,token,loading){button2&&(loading?(button2.dataset.siteLoadingV544=token.id,setLoading(button2,!0)):button2.dataset.siteLoadingV544===token.id&&(delete button2.dataset.siteLoadingV544,setLoading(button2,!1)))}function siteReadFailureV544(token,id,error){if(!token.current()||!$2(id))return;const message=String(error?.message||\"Please try Refresh again.\"),auth=/authorization.+(?:expired|revoked)|reconnect google analytics|invalid_grant/i.test(message),action=auth&&id===\"analyticsOverviewStatusV468\"?\"<button type='button' class='secondary orbit-inline-reconnect-v619' data-ga-reconnect-v619>Reconnect Google Analytics</button>\":\"\";$2(id).className=\"orbit-info-banner warning\",$2(id).innerHTML=\"<strong>\"+esc(performanceDomainV544())+\" report unavailable.</strong><span>\"+esc(message)+\"</span>\"+action}function clearSiteTargetsV544(ids,message=\"Loading selected website\\u2026\"){for(const id of ids)$2(id)&&($2(id).textContent=message)}function showPerformanceSiteV544(){$2(\"performanceSiteV544\")&&($2(\"performanceSiteV544\").value=performanceSiteV544),document.querySelectorAll(\"[data-performance-domain-v544]\").forEach(e=>e.textContent=performanceDomainV544()),document.querySelectorAll(\"[data-performance-only-v544]\").forEach(e=>e.hidden=e.dataset.performanceOnlyV544!==performanceSiteV544),document.querySelectorAll(\"[data-orbit-site-card-v494]\").forEach(e=>e.hidden=e.dataset.orbitSiteCardV494!==performanceSiteV544);for(const id of[\"analyticsSiteV494\",\"seoSiteV494\",\"seoSitemapSiteV494\"]){const e=$2(id);if(e){e.value=performanceSiteV544;const label=e.closest(\"label\");label&&(label.hidden=!0)}}for(const id of[\"perfSignups\",\"perfOnePound\",\"perfUpgrades\"]){const card=$2(id)?.closest(\"article\");card&&(card.hidden=performanceSiteV544!==\"collectors_club\")}const ticket=$2(\"perfTickets\")?.closest(\"article\");ticket&&(ticket.hidden=performanceSiteV544!==\"show_tickets\");const forecast=$2(\"forecastTitle\")?.closest(\"article\");forecast&&(forecast.hidden=performanceSiteV544!==\"collectors_club\"),text(\"performanceRevenueLabelV544\",performanceSiteV544===\"collectors_club\"?\"Estimated signup receipts\":\"Ticket Centre revenue\"),text(\"performanceRevenueBasisV544\",performanceSiteV544===\"collectors_club\"?\"All Club acquisition routes; not a payment ledger\":\"Paid Ticket Centre product sales; Eventbrite excluded\");const eventPanel=$2(\"seoPageListV332\")?.closest(\"article\");eventPanel&&(eventPanel.hidden=performanceSiteV544!==\"show_tickets\"),$2(\"seoFillMissingDefaultsV335\")&&($2(\"seoFillMissingDefaultsV335\").hidden=performanceSiteV544!==\"show_tickets\"),document.querySelectorAll(\"[data-ad-performance-club-v547]\").forEach(e=>e.hidden=performanceSiteV544!==\"collectors_club\")}function siteRecordMatchesV544(row){try{return new URL(seoPublicUrlV332(row)).hostname.toLowerCase().replace(/^www\\./,\"\")===performanceDomainV544()}catch{return!1}}function renderSiteAttributionV544(targetId,data){const target=$2(targetId);if(!target)return;if(!data||data.status===\"partial\"){target.innerHTML=\"<p>Stored attribution is unavailable. No zero total has been inferred.</p>\";return}const rows=data.rows||[],c=data.coverage||{};target.innerHTML=table([\"Captured source\",\"Recorded visits\",\"Recorded signups\",\"Recorded tickets\",\"Recorded value\"],rows.map(row=>\"<tr><td>\"+esc(row.source||\"Direct\")+\"</td><td>\"+esc(row.visits||0)+\"</td><td>\"+esc(row.signups||0)+\"</td><td>\"+esc(row.tickets||0)+\"</td><td>\"+esc(performanceMoney(row.revenue))+\"</td></tr>\"),\"No matching website-attributed records for this period.\")+'<p class=\"orbit-muted\">'+esc(c.included??data.totalRecords??0)+\" matching records. \"+esc(c.unknownSiteRecords??0)+\" records with unknown destinations excluded. \"+(c.possiblyCapped?\"This bounded history may be incomplete. \":\"\")+\"Captured counters are not deduplicated paid sales.</p>\"}async function changePerformanceSiteV544(value){if(!Object.prototype.hasOwnProperty.call(performanceSitesV544,value)){showPerformanceSiteV544();return}if(value!==performanceSiteV544){if(state.currentModule===\"seo\"&&activeSeoRecordV336()){if($2(\"seoSavePageV332\")?.disabled&&!activeSeoRecordV336()?.permissionRequired){showPerformanceSiteV544(),setNotice2(\"Wait for the current SEO save to finish before changing website.\",!0);return}if(!confirm(\"Changing website closes the current SEO editor. Discard any unsaved edits?\")){showPerformanceSiteV544();return}populateSeoEditorV336(null)}performanceSiteV544=value;try{localStorage.setItem(\"orbitPerformanceWebsiteV544\",value)}catch{}for(const key of Object.keys(performanceReadTokensV544))performanceReadTokensV544[key]++;if(seoRankingsLoadedV477=!1,showPerformanceSiteV544(),renderSeoKeyPagesV336(),renderSeoPageListV332(),[\"performance\",\"analytics-overview\"].includes(state.currentModule))await Promise.allSettled([loadPerformanceOverview(null),loadAnalyticsOverviewV468(null),loadPerformanceRankingsV496(null)]);else if(state.currentModule===\"ad-performance\")await loadAdPerformanceV547(!1);else if(state.currentModule===\"analytics-sales\")await loadAnalyticsCommercialV471(null);else if(state.currentModule===\"seo\"){const pane=document.querySelector(\"[data-seo-pane-v477].active\")?.dataset.seoPaneV477;pane===\"rankings\"&&await loadSeoRankingsV477(null),pane===\"sitemaps\"&&await loadSeoSitemapV494(null)}}}let adPerformanceDataV547=null;function adPerformanceMetricV547(value,kind){const n=Number(value);return Number.isFinite(n)?kind===\"money\"?performanceMoney(n):kind===\"percent\"?(Math.round(n*100)/100).toLocaleString(\"en-GB\")+\"%\":(Math.round(n*100)/100).toLocaleString(\"en-GB\"):\"\\u2014\"}function renderAdPerformanceV547(data){adPerformanceDataV547=data||null;const meta=data?.meta||{},totals=meta.totals||{},business=data?.business||{},planning=data?.planning||{},ads=Array.isArray(meta.ads)?meta.ads:[],signals=meta.signals||{};text(\"adPerfSpendV547\",meta.available?adPerformanceMetricV547(totals.spend,\"money\"):\"\\u2014\"),text(\"adPerfPurchasesV547\",meta.available?adPerformanceMetricV547(totals.purchase):\"\\u2014\"),text(\"adPerfCpaV547\",meta.available&&totals.costPerPurchase!=null?adPerformanceMetricV547(totals.costPerPurchase,\"money\"):\"\\u2014\"),text(\"adPerfCtrV547\",meta.available?adPerformanceMetricV547(totals.ctr,\"percent\"):\"\\u2014\");const signups=business?.membership?.total;text(\"adPerfSignupsV547\",signups==null?\"\\u2014\":String(signups)),text(\"adPerfExpectedV547\",planning.expectedGrossReceiptsThroughFirstFullPayment==null?\"\\u2014\":adPerformanceMetricV547(planning.expectedGrossReceiptsThroughFirstFullPayment,\"money\")),text(\"adPerfExpectedBasisV547\",planning?.assumptions?.label||\"Planning estimate only; never sent to Meta\"),document.querySelectorAll(\"[data-ad-performance-club-v547]\").forEach(el=>el.hidden=selectedPerformanceSiteV544()!==\"collectors_club\");const status=$2(\"adPerformanceStatusV547\");if(status){const cached=meta.cached?\"Saved Meta snapshot\":\"Fresh Meta ads_read snapshot\";status.className=\"orbit-info-banner \"+(meta.available?\"success\":\"warning\"),status.innerHTML=meta.available?\"<strong>\"+esc(cached)+\" \\xB7 \"+esc(performanceDomainV544())+\"</strong><span> \"+esc(meta.generatedAt?new Date(meta.generatedAt).toLocaleString(\"en-GB\"):\"time unavailable\")+\". Orbit business/GA4 evidence is labelled separately; this page cannot change ads.</span>\":\"<strong>Meta ad-level data is not available yet.</strong><span> \"+esc(meta.error||\"Choose Refresh Meta data to request a current read-only snapshot.\")+\"</span>\"}const sig=$2(\"adPerformanceSignalsV547\");if(sig){const rows=[];signals.bestPurchase&&rows.push(\"<article><span>Best cost per Purchase</span><strong>\"+esc(signals.bestPurchase.name)+\"</strong><small>\"+esc(adPerformanceMetricV547(signals.bestPurchase.costPerPurchase,\"money\"))+\" per Meta Purchase \\xB7 \"+esc(adPerformanceMetricV547(signals.bestPurchase.spend,\"money\"))+\" spend</small></article>\"),signals.bestCtr&&rows.push(\"<article><span>Highest CTR</span><strong>\"+esc(signals.bestCtr.name)+\"</strong><small>\"+esc(adPerformanceMetricV547(signals.bestCtr.ctr,\"percent\"))+\" CTR \\xB7 \"+esc(adPerformanceMetricV547(signals.bestCtr.spend,\"money\"))+\" spend</small></article>\"),signals.worstSpendNoPurchase&&rows.push(\"<article><span>Most spend without a reported Purchase</span><strong>\"+esc(signals.worstSpendNoPurchase.name)+\"</strong><small>\"+esc(adPerformanceMetricV547(signals.worstSpendNoPurchase.spend,\"money\"))+\" spend \\xB7 0 reported Purchases</small></article>\"),sig.innerHTML=rows.join(\"\")||'<p class=\"orbit-muted\">There is not enough ad-level evidence in the selected snapshot to rank ads yet.</p>'}const target=$2(\"adPerformanceTableV547\");target&&(target.innerHTML=table([\"Ad\",\"Status\",\"Spend\",\"CTR\",\"CPC\",\"Purchases\",\"Cost / Purchase\",\"Creative evidence\"],ads.slice(0,40).map(row=>\"<tr><td><strong>\"+esc(row.name||\"Unnamed ad\")+\"</strong><small>\"+esc(row.campaignName||\"\")+\"</small></td><td>\"+esc(row.effectiveStatus||row.status||\"\\u2014\")+\"</td><td>\"+esc(adPerformanceMetricV547(row.spend,\"money\"))+\"</td><td>\"+esc(adPerformanceMetricV547(row.ctr,\"percent\"))+\"</td><td>\"+esc(adPerformanceMetricV547(row.cpc,\"money\"))+\"</td><td>\"+esc(adPerformanceMetricV547(row.purchases))+\"</td><td>\"+esc(row.costPerPurchase==null?\"\\u2014\":adPerformanceMetricV547(row.costPerPurchase,\"money\"))+\"</td><td>\"+esc(row.creative?.headline||row.creative?.creativeText||\"No stored creative text for this snapshot\")+\"</td></tr>\"),\"No ads are present in the saved snapshot.\"))}async function loadAdPerformanceV547(refreshMeta=!1){const token=siteReadV544(\"ad-performance\"),period=$2(\"adPerformancePeriodV547\")?.value||\"last_7_days\",button2=$2(\"adPerformanceRefreshV547\");refreshMeta&&siteLoadingV544(button2,token,!0);const path=\"/api/admin/performance/ad-performance\";try{const data=refreshMeta?await api(path+\"/refresh\",{method:\"POST\",body:JSON.stringify({period,site:token.site}),timeoutMs:9e4,cacheMs:0}):await api(path+\"?period=\"+encodeURIComponent(period)+\"&site=\"+encodeURIComponent(token.site),{timeoutMs:3e4,cacheMs:0});return token.current()&&renderAdPerformanceV547(data),data}catch(error){if(token.current()){const status=$2(\"adPerformanceStatusV547\");status&&(status.className=\"orbit-info-banner warning\",status.innerHTML=\"<strong>\"+esc(performanceDomainV544())+\" ad report unavailable.</strong><span> \"+esc(error.message||error)+\"</span>\")}throw error}finally{refreshMeta&&siteLoadingV544(button2,token,!1)}}async function analyseAdPerformanceV547(){const button2=$2(\"adPerformanceAnalyseV547\"),target=$2(\"adPerformanceAnalysisV547\"),period=$2(\"adPerformancePeriodV547\")?.value||\"last_7_days\",site=selectedPerformanceSiteV544();button2&&setLoading(button2,!0),target&&(target.innerHTML='<p class=\"orbit-muted\">Marketing Analyst is reviewing the current read-only evidence\\u2026</p>');try{const data=await api(\"/api/admin/performance/ad-performance/analyse\",{method:\"POST\",body:JSON.stringify({period,site}),timeoutMs:9e4,cacheMs:0});if(site!==selectedPerformanceSiteV544())return;target&&(target.innerHTML=data.analysis?orbitMarkdown(data.analysis):'<p class=\"orbit-muted\">No analysis was returned.</p>')}catch(error){throw target&&(target.innerHTML='<p class=\"error\">Marketing Analyst could not complete: '+esc(error.message||error)+\"</p>\"),error}finally{button2&&setLoading(button2,!1)}}document.getElementById(\"adPerformanceRefreshV547\")?.addEventListener(\"click\",()=>loadAdPerformanceV547(!0).catch(err=>setNotice2(\"Ad Performance refresh failed: \"+(err.message||err),!0))),document.getElementById(\"adPerformanceAnalyseV547\")?.addEventListener(\"click\",()=>analyseAdPerformanceV547().catch(err=>setNotice2(\"Marketing Analyst failed: \"+(err.message||err),!0))),document.getElementById(\"adPerformancePeriodV547\")?.addEventListener(\"change\",()=>loadAdPerformanceV547(!1).catch(err=>setNotice2(\"Ad Performance unavailable: \"+(err.message||err),!0)));async function loadPerformanceRankingsV496(button2=null){const token=siteReadV544(\"overview-rankings\");clearSiteTargetsV544([\"performanceRankingsSummaryV496\",\"performanceRankingsQueriesV496\"],\"\"),clearSiteTargetsV544([\"performanceRankingsStatusV496\"]),siteLoadingV544(button2,token,!0);try{const site=token.site,period=$2(\"analyticsPeriodV468\")?.value||\"last_30_days\",status=$2(\"performanceRankingsStatusV496\"),summary=$2(\"performanceRankingsSummaryV496\"),queries=$2(\"performanceRankingsQueriesV496\"),h=seoMetricHelpersV494(),data=await api(\"/api/admin/seo/rankings?period=\"+encodeURIComponent(period)+\"&site=\"+encodeURIComponent(site),{cacheMs:0,timeoutMs:3e4});if(!token.current())return data;const snap=data.summary||{},siteLabel=data.site?.label||{card_show:\"Orbit Card Show\",show_tickets:\"Orbit Show Tickets\",collectors_club:\"Orbit Collectors Club\",card_show_index:\"CardShowIndex\"}[site]||site;if(!data.configured)return status&&(status.innerHTML=\"<strong>\"+esc(siteLabel)+\" Search Console is not connected.</strong><span>Use SEO or Google Analytics settings to finish the connection.</span>\"),summary&&(summary.innerHTML=\"\"),queries&&(queries.innerHTML=\"\"),data;status&&(status.innerHTML=\"<strong>\"+esc(siteLabel)+\" \\xB7 \"+esc(data.periodLabel||period)+\"</strong><span>Direct Google Search Console data.</span>\"),summary&&(summary.innerHTML=[[\"Organic clicks\",h.num(snap.clicks)],[\"Impressions\",h.num(snap.impressions)],[\"CTR\",h.pct(snap.ctr)],[\"Average position\",h.pos(snap.averagePosition)]].map(x=>\"<article><span>\"+esc(x[0])+\"</span><strong>\"+esc(x[1])+\"</strong></article>\").join(\"\"));const rows=(data.queries||[]).slice(0,5);return queries&&(queries.innerHTML=rows.length?\"<table><thead><tr><th>Top search query</th><th>Clicks</th><th>Impressions</th><th>Avg. position</th></tr></thead><tbody>\"+rows.map(row=>\"<tr><td><strong>\"+esc(row.query||\"(not set)\")+\"</strong></td><td>\"+h.num(row.clicks)+\"</td><td>\"+h.num(row.impressions)+\"</td><td>\"+h.pos(row.averagePosition)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":\"<div class='orbit-empty-state'><strong>No search queries in this period</strong></div>\"),data}catch(error){siteReadFailureV544(token,\"performanceRankingsStatusV496\",error)}finally{siteLoadingV544(button2,token,!1)}}function analyticsNumberV468(value,decimals=0){const n=Number(value||0);return Number.isFinite(n)?n.toLocaleString(\"en-GB\",{minimumFractionDigits:decimals,maximumFractionDigits:decimals}):\"0\"}function analyticsMoneyV468(value,currency=\"GBP\"){const n=Number(value||0);try{return new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency:currency||\"GBP\",maximumFractionDigits:2}).format(Number.isFinite(n)?n:0)}catch{return\"\\xA3\"+analyticsNumberV468(n,2)}}function analyticsMetricV468(metrics,name){return Number(metrics&&metrics[name]!=null?metrics[name]:0)||0}function renderAnalyticsRowsV468(targetId,rows=[],kind=\"pages\"){const target=$2(targetId);if(target){if(!rows.length){target.innerHTML=\"<div class='orbit-empty-state'><strong>No data for this period</strong><span>Google Analytics returned no rows for this view.</span></div>\";return}kind===\"pages\"?target.innerHTML=\"<table><thead><tr><th>Page</th><th>Views</th><th>Users</th><th>Key events</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.pagePath||\"/\")+\"</strong></td><td>\"+analyticsNumberV468(r.screenPageViews)+\"</td><td>\"+analyticsNumberV468(r.activeUsers)+\"</td><td>\"+analyticsNumberV468(r.keyEvents)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":kind===\"sources\"?target.innerHTML=\"<table><thead><tr><th>Source / medium</th><th>Sessions</th><th>Users</th><th>Key events</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.sessionSourceMedium||\"(direct) / (none)\")+\"</strong></td><td>\"+analyticsNumberV468(r.sessions)+\"</td><td>\"+analyticsNumberV468(r.activeUsers)+\"</td><td>\"+analyticsNumberV468(r.keyEvents)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":target.innerHTML=\"<table><thead><tr><th>Event</th><th>Event count</th><th>Key events</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.eventName||\"event\")+\"</strong></td><td>\"+analyticsNumberV468(r.eventCount)+\"</td><td>\"+analyticsNumberV468(r.keyEvents)+\"</td></tr>\").join(\"\")+\"</tbody></table>\"}}async function loadAnalyticsOverviewV468(button2=null){const token=siteReadV544(\"ga4\");clearSiteTargetsV544([\"analyticsActiveUsersV468\",\"analyticsSessionsV468\",\"analyticsPageViewsV468\",\"analyticsNewUsersV468\",\"analyticsKeyEventsV468\",\"analyticsRevenueV468\"],\"\\u2014\"),clearSiteTargetsV544([\"analyticsOverviewStatusV468\",\"analyticsTopPagesV468\",\"analyticsSourcesV468\",\"analyticsKeyEventTableV468\"]),siteLoadingV544(button2,token,!0);try{const period=$2(\"analyticsPeriodV468\")?.value||\"last_30_days\",site=token.site,data=await api(\"/api/admin/google-analytics/report?period=\"+encodeURIComponent(period)+\"&site=\"+encodeURIComponent(site),{cacheMs:0,timeoutMs:3e4}),status=$2(\"analyticsOverviewStatusV468\"),m=data.metrics||{};if(!token.current())return data;const map={analyticsActiveUsersV468:analyticsNumberV468(analyticsMetricV468(m,\"activeUsers\")),analyticsSessionsV468:analyticsNumberV468(analyticsMetricV468(m,\"sessions\")),analyticsPageViewsV468:analyticsNumberV468(analyticsMetricV468(m,\"screenPageViews\")),analyticsNewUsersV468:analyticsNumberV468(analyticsMetricV468(m,\"newUsers\")),analyticsKeyEventsV468:analyticsNumberV468(analyticsMetricV468(m,\"keyEvents\")),analyticsRevenueV468:analyticsMoneyV468(analyticsMetricV468(m,\"totalRevenue\"),data.currencyCode||\"GBP\")};Object.entries(map).forEach(([id,value])=>{$2(id)&&($2(id).textContent=data.configured===!1?\"\\u2014\":value)}),$2(\"analyticsRevenueNoteV468\")&&($2(\"analyticsRevenueNoteV468\").textContent=data.configured===!1?\"Reporting not configured\":\"GA4 reported revenue\");const siteLabel=data.site?.label||{card_show:\"Orbit Card Show\",show_tickets:\"Orbit Show Tickets\",collectors_club:\"Orbit Collectors Club\",card_show_index:\"CardShowIndex\"}[site]||site;return data.configured===!1?(status&&(status.className=\"orbit-info-banner warning\",status.innerHTML=\"<strong>\"+esc(siteLabel)+\" GA4 reporting is not configured.</strong><span>Open Performance & Analytics \\u2192 Google Analytics and save this website's numeric Property ID.</span>\"),clearSiteTargetsV544([\"analyticsTopPagesV468\",\"analyticsSourcesV468\",\"analyticsKeyEventTableV468\"],\"Reporting is not configured for this website. No activity count is available.\"),data):(status&&(status.className=\"orbit-info-banner success\",status.innerHTML=\"<strong>Live \"+esc(siteLabel)+\" GA4 report</strong><span>Property \"+esc(data.propertyId||\"\\u2014\")+\" \\xB7 \"+esc(data.periodLabel||period)+\" \\xB7 \"+esc(data.timeZone||\"Google Analytics timezone\")+\" \\xB7 selected hostname only \\xB7 read-only.</span>\"),renderAnalyticsRowsV468(\"analyticsTopPagesV468\",data.topPages||[],\"pages\"),renderAnalyticsRowsV468(\"analyticsSourcesV468\",data.sources||[],\"sources\"),renderAnalyticsRowsV468(\"analyticsKeyEventTableV468\",data.events||[],\"events\"),data)}catch(error){siteReadFailureV544(token,\"analyticsOverviewStatusV468\",error),token.current()&&clearSiteTargetsV544([\"analyticsTopPagesV468\",\"analyticsSourcesV468\",\"analyticsKeyEventTableV468\"],\"Website report unavailable. Use Refresh report to retry.\")}finally{siteLoadingV544(button2,token,!1)}}function analyticsPercentV471(value){const n=Number(value||0);return Number.isFinite(n)?n.toFixed(1)+\"%\":\"0.0%\"}function renderAnalyticsCommercialRowsV471(targetId,rows=[],kind=\"sources\"){const target=$2(targetId);if(!target)return;if(!rows.length){target.innerHTML=\"<div class='orbit-empty-state'><strong>No paid Orbit ticket sales for this period</strong><span>Canonical Ticket Centre sales will appear here when available.</span></div>\";return}const money2=value=>analyticsMoneyV468(Number(value||0),\"GBP\");kind===\"sources\"?target.innerHTML=\"<table><thead><tr><th>Captured source</th><th>Orders</th><th>Tickets</th><th>Revenue</th><th>Revenue share</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.sourceMedium||\"(direct) / (none)\")+\"</strong></td><td>\"+analyticsNumberV468(r.orders)+\"</td><td>\"+analyticsNumberV468(r.tickets)+\"</td><td>\"+money2(r.revenue)+\"</td><td>\"+analyticsPercentV471(r.revenueSharePct)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":kind===\"campaigns\"?target.innerHTML=\"<table><thead><tr><th>Campaign</th><th>Orders</th><th>Tickets</th><th>Revenue</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.campaign||\"(not tagged)\")+\"</strong></td><td>\"+analyticsNumberV468(r.orders)+\"</td><td>\"+analyticsNumberV468(r.tickets)+\"</td><td>\"+money2(r.revenue)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":kind===\"landing\"?target.innerHTML=\"<table><thead><tr><th>Landing page captured at checkout</th><th>Orders</th><th>Tickets</th><th>Revenue</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.landingPage||\"(not captured)\")+\"</strong></td><td>\"+analyticsNumberV468(r.orders)+\"</td><td>\"+analyticsNumberV468(r.tickets)+\"</td><td>\"+money2(r.revenue)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":kind===\"events\"?target.innerHTML=\"<table><thead><tr><th>Orbit event</th><th>Orders</th><th>Tickets</th><th>Revenue</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.eventName||\"Unassigned event\")+\"</strong></td><td>\"+analyticsNumberV468(r.orders)+\"</td><td>\"+analyticsNumberV468(r.tickets)+\"</td><td>\"+money2(r.revenue)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":kind===\"ga\"&&(target.innerHTML=\"<table><thead><tr><th>GA4 source / medium</th><th>Sessions</th><th>Users</th><th>Key events</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.sessionSourceMedium||\"(direct) / (none)\")+\"</strong></td><td>\"+analyticsNumberV468(r.sessions)+\"</td><td>\"+analyticsNumberV468(r.activeUsers)+\"</td><td>\"+analyticsNumberV468(r.keyEvents)+\"</td></tr>\").join(\"\")+\"</tbody></table>\")}async function loadAnalyticsCommercialV471(button2=null){const token=siteReadV544(\"commercial\");showPerformanceSiteV544(),clearSiteTargetsV544([\"analyticsSalesOrdersV471\",\"analyticsSalesTicketsV471\",\"analyticsSalesRevenueV471\",\"analyticsSalesAovV471\",\"analyticsSalesCoverageV471\",\"analyticsSalesGaSessionsV471\"],\"\\u2014\"),clearSiteTargetsV544([\"analyticsSalesStatusV471\",\"analyticsSalesSourcesV471\",\"analyticsSalesCampaignsV471\",\"analyticsSalesLandingV471\",\"analyticsSalesEventsV471\",\"analyticsSalesGaSourcesV471\",\"analyticsClubAcquisitionV544\",\"analyticsSiteAttributionV544\"]),siteLoadingV544(button2,token,!0);try{const period=$2(\"analyticsSalesPeriodV471\")?.value||\"last_30_days\",data=await api(\"/api/admin/analytics/commercial?period=\"+encodeURIComponent(period)+\"&site=\"+encodeURIComponent(token.site),{cacheMs:0,timeoutMs:3e4}),sales=data.ticketSales||{},revenue=Number(sales.revenue||0);if(!token.current())return data;renderSiteAttributionV544(\"analyticsSiteAttributionV544\",data.attribution);const club=data.clubAcquisition,clubTarget=$2(\"analyticsClubAcquisitionV544\");if(token.site===\"collectors_club\"&&clubTarget){const m=club?.membership;clubTarget.innerHTML=m?[[\"New Club memberships\",m.total],[\"\\xA31 route signups\",m.onePound],[\"Direct full-price joins\",m.upgrades]].map(x=>\"<article><span>\"+esc(x[0])+\"</span><strong>\"+esc(x[1]??\"\\u2014\")+\"</strong></article>\").join(\"\"):\"<p>Club acquisition records are unavailable. No zero count is inferred.</p>\"}const values={analyticsSalesOrdersV471:analyticsNumberV468(sales.orders||0),analyticsSalesTicketsV471:analyticsNumberV468(sales.tickets||0),analyticsSalesRevenueV471:analyticsMoneyV468(revenue,\"GBP\"),analyticsSalesAovV471:analyticsMoneyV468(sales.averageOrderValue||0,\"GBP\"),analyticsSalesCoverageV471:analyticsPercentV471(sales.trackingCoveragePct||0),analyticsSalesGaSessionsV471:!data.ga4||data.ga4.configured===!1?\"\\u2014\":analyticsNumberV468(data.ga4?.metrics?.sessions||0)};Object.entries(values).forEach(([id,value])=>{$2(id)&&($2(id).textContent=id!==\"analyticsSalesGaSessionsV471\"&&!data.ticketSales?\"\\u2014\":value)});const sources=(sales.sources||[]).map(r=>({...r,revenueSharePct:revenue?Number(r.revenue||0)/revenue*100:0}));renderAnalyticsCommercialRowsV471(\"analyticsSalesSourcesV471\",sources,\"sources\"),renderAnalyticsCommercialRowsV471(\"analyticsSalesCampaignsV471\",sales.campaigns||[],\"campaigns\"),renderAnalyticsCommercialRowsV471(\"analyticsSalesLandingV471\",sales.landingPages||[],\"landing\"),renderAnalyticsCommercialRowsV471(\"analyticsSalesEventsV471\",sales.events||[],\"events\"),data.ga4?.configured?renderAnalyticsRowsV468(\"analyticsSalesGaSourcesV471\",data.ga4.sources||[],\"sources\"):clearSiteTargetsV544([\"analyticsSalesGaSourcesV471\"],\"GA4 is unavailable or not configured for this website.\"),token.site===\"show_tickets\"&&!data.ticketSales&&clearSiteTargetsV544([\"analyticsSalesSourcesV471\",\"analyticsSalesCampaignsV471\",\"analyticsSalesLandingV471\",\"analyticsSalesEventsV471\"],\"Ticket Centre report unavailable. Use Refresh report to retry.\");const status=$2(\"analyticsSalesStatusV471\");if(status){const warning=(data.warnings||[]).join(\" \\xB7 \");status.className=\"orbit-info-banner \"+(warning?\"warning\":\"info\"),status.innerHTML=\"<strong>\"+esc(performanceDomainV544())+\" \\xB7 \"+esc(data.ga4?.periodLabel||period)+\"</strong><span>\"+esc(data.boundaries?.commercial||\"Selected website report\")+(warning?\" \"+esc(warning):\"\")+\"</span>\"}return data}catch(error){siteReadFailureV544(token,\"analyticsSalesStatusV471\",error),token.current()&&clearSiteTargetsV544([\"analyticsSalesSourcesV471\",\"analyticsSalesCampaignsV471\",\"analyticsSalesLandingV471\",\"analyticsSalesEventsV471\",\"analyticsSalesGaSourcesV471\",\"analyticsClubAcquisitionV544\",\"analyticsSiteAttributionV544\"],\"Report unavailable. Use Refresh report to retry.\")}finally{siteLoadingV544(button2,token,!1)}}function siteProfilesPayloadV494(current={}){const p=current.siteProfiles||{},get=(id,fallback=\"\")=>String($2(id)?.value??fallback).trim(),checked=(id,fallback=!0)=>$2(id)?!!$2(id).checked:fallback!==!1;return{card_show:{...p.card_show||{},googleAnalyticsMeasurementId:get(\"siteCardShowGaMeasurementV494\",p.card_show?.googleAnalyticsMeasurementId),googleAnalyticsPropertyId:get(\"siteCardShowGaPropertyV494\",p.card_show?.googleAnalyticsPropertyId),searchConsoleSiteUrl:get(\"siteCardShowSearchConsoleV494\",p.card_show?.searchConsoleSiteUrl),sitemapUrl:get(\"siteCardShowSitemapV494\",p.card_show?.sitemapUrl),metaPixelId:get(\"performanceCardShowPixelId\",p.card_show?.metaPixelId),googleAnalyticsEnabled:checked(\"siteCardShowGaEnabledV494\",p.card_show?.googleAnalyticsEnabled),metaPixelEnabled:checked(\"performanceCardShowPixelEnabled\",p.card_show?.metaPixelEnabled)},show_tickets:{...p.show_tickets||{},googleAnalyticsMeasurementId:get(\"siteTicketsGaMeasurementV494\",p.show_tickets?.googleAnalyticsMeasurementId),googleAnalyticsPropertyId:get(\"siteTicketsGaPropertyV494\",p.show_tickets?.googleAnalyticsPropertyId),searchConsoleSiteUrl:get(\"siteTicketsSearchConsoleV494\",p.show_tickets?.searchConsoleSiteUrl),sitemapUrl:get(\"siteTicketsSitemapV494\",p.show_tickets?.sitemapUrl),metaPixelId:get(\"performanceTicketPixelId\",p.show_tickets?.metaPixelId),googleAnalyticsEnabled:p.show_tickets?.googleAnalyticsEnabled!==!1,metaPixelEnabled:checked(\"performanceTicketPixelEnabled\",p.show_tickets?.metaPixelEnabled)},collectors_club:{...p.collectors_club||{},googleAnalyticsMeasurementId:get(\"siteClubGaMeasurementV494\",p.collectors_club?.googleAnalyticsMeasurementId),googleAnalyticsPropertyId:get(\"siteClubGaPropertyV494\",p.collectors_club?.googleAnalyticsPropertyId),searchConsoleSiteUrl:get(\"siteClubSearchConsoleV494\",p.collectors_club?.searchConsoleSiteUrl),sitemapUrl:get(\"siteClubSitemapV494\",p.collectors_club?.sitemapUrl),metaPixelId:get(\"performanceClubPixelId\",p.collectors_club?.metaPixelId),googleAnalyticsEnabled:p.collectors_club?.googleAnalyticsEnabled!==!1,metaPixelEnabled:checked(\"performanceClubPixelEnabled\",p.collectors_club?.metaPixelEnabled)},card_show_index:{...p.card_show_index||{},googleAnalyticsMeasurementId:get(\"siteCardShowIndexGaMeasurementV625\",p.card_show_index?.googleAnalyticsMeasurementId),googleAnalyticsPropertyId:get(\"siteCardShowIndexGaPropertyV625\",p.card_show_index?.googleAnalyticsPropertyId),searchConsoleSiteUrl:get(\"siteCardShowIndexSearchConsoleV625\",p.card_show_index?.searchConsoleSiteUrl),sitemapUrl:get(\"siteCardShowIndexSitemapV625\",p.card_show_index?.sitemapUrl),googleAnalyticsEnabled:p.card_show_index?.googleAnalyticsEnabled!==!1,metaPixelEnabled:!1}}}async function savePerformanceTrackingV327(kind,button2){setLoading(button2,!0);try{const current=state.trackingSettings||await loadTrackingSettings(),payload={siteProfiles:siteProfilesPayloadV494(current),clubMetaCapiEnabled:current.clubMetaCapiEnabled!==!1,clubMetaCapiTestEventCode:current.clubMetaCapiTestEventCode||\"\",ticketMetaCapiEnabled:current.ticketMetaCapiEnabled!==!1,ticketMetaCapiTestEventCode:current.ticketMetaCapiTestEventCode||\"\"};if(kind===\"ga\"){payload.googleAnalyticsOauthClientId=$2(\"performanceGaOauthClientIdV469\")?.value||\"\";const secret2=String($2(\"performanceGaOauthClientSecretV469\")?.value||\"\").trim();secret2&&(payload.googleAnalyticsOauthClientSecret=secret2)}await api(\"/api/admin/tracking-settings\",{method:\"PUT\",body:JSON.stringify(payload),cacheMs:0}),await loadTrackingSettings();const result=$2(kind===\"ga\"?\"performanceGaResult\":\"performanceMetaResult\");result&&(result.hidden=!1,result.textContent=kind===\"ga\"?\"Saved website GA4/Search Console profiles. Orbit preserves every stored profile but suppresses Show Tickets storefront GA4 whenever it matches the Collectors Club stream, preventing cross-site acquisition contamination. GA4 reporting remains read-only.\":\"Saved three separate website Pixel IDs. Orbit's hostname boundary will not intentionally load another site's configured Pixel.\"),setNotice2(kind===\"ga\"?\"Website Analytics profiles saved.\":\"Website Meta Pixel profiles saved.\")}finally{setLoading(button2,!1)}}async function connectGoogleAnalyticsV470(button2){const popup=window.open(\"about:blank\",\"orbitGoogleAnalyticsOauth\",\"popup,width=620,height=760,resizable=yes,scrollbars=yes\");if(!popup)throw new Error(\"Your browser blocked the Google connection popup. Allow popups for Orbit Admin and try again.\");setLoading(button2,!0);try{popup.document.write(\"<!doctype html><title>Connecting Google Analytics</title><body style='font-family:Arial;padding:28px'>Preparing secure Google connection\\u2026</body>\"),await savePerformanceTrackingV327(\"ga\",null);const launch=await api(\"/api/admin/google-analytics/oauth/launch\",{method:\"POST\",body:\"{}\",cacheMs:0}),target=String(launch?.url||\"\");if(!/^https:\\/\\/accounts\\.google\\.com\\//i.test(target))throw new Error(\"Orbit did not return a valid Google authorization URL.\");popup.location.replace(target),setNotice2(\"Complete the Google sign-in/consent window. Orbit requests Analytics read-only access only.\")}catch(error){try{popup.close()}catch{}throw error}finally{setLoading(button2,!1)}}async function disconnectGoogleAnalyticsV469(button2){if(confirm(\"Disconnect Orbit's read-only Google Analytics reporting connection? Storefront measurement and your GA4 Property/Measurement IDs will remain unchanged.\")){setLoading(button2,!0);try{await api(\"/api/admin/google-analytics/oauth/disconnect\",{method:\"POST\",body:\"{}\",cacheMs:0}),await loadTrackingSettings(),setNotice2(\"Google Analytics reporting disconnected. Storefront measurement was not changed.\")}finally{setLoading(button2,!1)}}}function applyRecommendedSearchConsolePropertiesV495(){Object.entries({siteCardShowSearchConsoleV494:\"sc-domain:orbitcardshow.co.uk\",siteTicketsSearchConsoleV494:\"sc-domain:orbitshowtickets.co.uk\",siteClubSearchConsoleV494:\"sc-domain:orbitcollectorsclub.com\",siteCardShowIndexSearchConsoleV625:\"sc-domain:cardshowindex.co.uk\"}).forEach(([id,value])=>{$2(id)&&($2(id).value=value)}),setNotice2(\"Recommended Search Console Domain property values filled in. Save website profiles before connecting.\")}async function copySearchConsoleValueV495(value){try{await navigator.clipboard.writeText(String(value||\"\")),setNotice2(\"Copied: \"+value)}catch{window.prompt(\"Copy this domain:\",String(value||\"\"))}}async function loadSearchConsolePropertiesV495(button2=null){button2&&setLoading(button2,!0);const target=$2(\"searchConsolePropertyCheckV495\");try{const data=await api(\"/api/admin/google-search-console/properties\",{cacheMs:0,timeoutMs:3e4});return target&&(target.hidden=!1,data.connected?((Array.isArray(data.properties)?data.properties:[]).forEach(row=>{const node=document.querySelector('[data-sc-property-status-v495=\"'+row.siteKey+'\"]');node&&(node.className=row.exactDomainProperty?\"success\":\"warning\",node.textContent=row.exactDomainProperty?\"Found in Google \\xB7 \"+(row.permissionLevel||\"verified\"):row.found?\"Found as a URL property, but use the recommended Domain property\":\"Missing from this Google account\")}),target.className=\"orbit-action-result \"+(data.allRequiredPresent?\"success\":\"warning\"),target.innerHTML=data.allRequiredPresent?\"<strong>All 4 Domain properties found.</strong><br>Orbit can read each site's Search Console rankings and index state. Sitemap submission remains separately permissioned.\":\"<strong>Some Domain properties are still missing.</strong><br>Create/verify the amber properties in Google Search Console, then press Check 4 properties again.\"):(target.className=\"orbit-action-result warning\",target.innerHTML=\"<strong>Search Console is not connected yet.</strong><br>Add the four Domain properties in Google, verify each by DNS, then click Connect Search Console read-only once.\")),data}finally{button2&&setLoading(button2,!1)}}async function connectGoogleSearchConsoleV494(button2){const popup=window.open(\"about:blank\",\"orbitGoogleSearchConsoleOauth\",\"popup,width=620,height=760,resizable=yes,scrollbars=yes\");if(!popup)throw new Error(\"Your browser blocked the Google connection popup.\");setLoading(button2,!0);try{await savePerformanceTrackingV327(\"ga\",null);const launch=await api(\"/api/admin/google-search-console/oauth/launch\",{method:\"POST\",body:\"{}\",cacheMs:0}),target=String(launch?.url||\"\");if(!/^https:\\/\\/accounts\\.google\\.com\\//i.test(target))throw new Error(\"Orbit did not return a valid Google authorization URL.\");popup.location.replace(target),setNotice2(\"Complete Google consent for read-only Search Console reporting and URL Inspection. Sitemap-write access is not requested here.\")}catch(error){try{popup.close()}catch{}throw error}finally{setLoading(button2,!1)}}async function disconnectGoogleSearchConsoleV494(button2){if(confirm(\"Disconnect read-only Search Console reporting and URL Inspection? GA4 and separately authorized sitemap-write access are unchanged.\")){setLoading(button2,!0);try{await api(\"/api/admin/google-search-console/oauth/disconnect\",{method:\"POST\",body:\"{}\",cacheMs:0}),await loadTrackingSettings(),setNotice2(\"Search Console read-only access disconnected. Google Analytics was not changed.\")}finally{setLoading(button2,!1)}}}async function connectGoogleSearchConsoleWriteV625(button2){const popup=window.open(\"about:blank\",\"orbitGoogleSearchConsoleWriteOauth\",\"popup,width=620,height=760,resizable=yes,scrollbars=yes\");if(!popup)throw new Error(\"Your browser blocked the Google connection popup.\");setLoading(button2,!0);try{await savePerformanceTrackingV327(\"ga\",null);const launch=await api(\"/api/admin/google-search-console/oauth/write/launch\",{method:\"POST\",body:\"{}\",cacheMs:0}),target=String(launch?.url||\"\");if(!/^https:\\/\\/accounts\\.google\\.com\\//i.test(target))throw new Error(\"Orbit did not return a valid Google authorization URL.\");popup.location.replace(target),setNotice2(\"This separate Google consent grants sitemap submission only when you explicitly press Submit to Google.\")}catch(error){try{popup.close()}catch{}throw error}finally{setLoading(button2,!1)}}async function disconnectGoogleSearchConsoleWriteV625(button2){if(confirm(\"Disconnect the separately gated Search Console sitemap-write permission? Read-only rankings and URL Inspection will remain connected.\")){setLoading(button2,!0);try{await api(\"/api/admin/google-search-console/oauth/write/disconnect\",{method:\"POST\",body:\"{}\",cacheMs:0}),await loadTrackingSettings(),setNotice2(\"Search Console sitemap-write permission disconnected. Read-only reporting remains unchanged.\")}finally{setLoading(button2,!1)}}}async function loadCardShowIndexSearchConsoleStatusV625(){const target=$2(\"cardShowIndexSearchConsoleStatusV625\"),last=$2(\"cardShowIndexSearchConsoleLastSyncV625\");if(!target&&!last&&!$2(\"directoryAnalyticsSearchConsoleV628\"))return null;const[data,oauth]=await Promise.all([api(\"/api/admin/seo/search-console/sync-status?site=card_show_index\",{cacheMs:0,timeoutMs:3e4}),api(\"/api/admin/google-search-console/oauth/status\",{cacheMs:0,timeoutMs:15e3}).catch(()=>null)]);if(target&&(target.textContent=data.connected?\"Read-only connection ready for CardShowIndex Search Intelligence.\":\"Read-only Search Console is not connected. Exact Google redirect URI: \"+String(oauth?.redirectUri||\"unavailable\"),target.className=data.connected?\"success\":\"warning\"),last){const state2=data.state||{};last.textContent=state2.lastSyncAt?\"Last sync: \"+prettyDate(state2.lastSyncAt)+\" \\xB7 \"+Number(state2.queryRows||0)+\" queries \\xB7 \"+Number(state2.pageRows||0)+\" pages\":state2.lastError?\"Last sync failed: \"+state2.lastError:\"Last sync: never\"}return renderDirectoryAnalyticsSearchConsoleV628(data,oauth),{...data,oauth}}function directoryMetricCardV628(label,value,detail=\"\"){return`<article class=\"orbit-finance-card\"><span>${esc(label)}</span><strong>${esc(String(value??\"\\u2014\"))}</strong><small>${esc(detail||\"\")}</small></article>`}function renderDirectoryAnalyticsSearchConsoleV628(data={},oauth={}){const target=$2(\"directoryAnalyticsSearchConsoleV628\"),last=$2(\"directoryAnalyticsLastSyncV628\"),settings=state.trackingSettings||{},profile=settings.siteProfiles?.card_show_index||{},setv=(id,value)=>{$2(id)&&document.activeElement!==$2(id)&&($2(id).value=value||\"\")};setv(\"directoryGoogleOauthClientIdV628\",settings.googleAnalyticsOauthClientId),setv(\"directorySearchConsoleRedirectV628\",oauth?.redirectUri||\"\"),setv(\"directorySearchConsolePropertyV628\",profile.searchConsoleSiteUrl||\"sc-domain:cardshowindex.co.uk\"),setv(\"directorySitemapUrlV628\",profile.sitemapUrl||\"https://cardshowindex.co.uk/sitemap.xml\"),setv(\"directoryGaMeasurementIdV628\",profile.googleAnalyticsMeasurementId),setv(\"directoryGaPropertyIdV628\",profile.googleAnalyticsPropertyId);const connected=!!(data?.connected||oauth?.readConnected||settings.googleSearchConsoleOauthConnected),redirect=String(oauth?.redirectUri||\"\");if(target&&(target.className=\"orbit-info-banner \"+(connected?\"success\":\"warning\"),target.innerHTML=connected?\"<strong>Search Console read-only is connected.</strong><span>CardShowIndex can sync rankings and indexing evidence without leaving Directory.</span>\":`<strong>Search Console is not connected.</strong><span>In Google Cloud, Authorized redirect URI must exactly equal <code>${esc(redirect||\"unavailable\")}</code>. Save the client details here, then connect.</span>`),last){const sync=data?.state||{};last.textContent=sync.lastSyncAt?\"Last sync: \"+prettyDate(sync.lastSyncAt)+\" \\xB7 \"+Number(sync.queryRows||0)+\" queries \\xB7 \"+Number(sync.pageRows||0)+\" pages\":sync.lastError?\"Last sync failed: \"+sync.lastError:\"Last sync: never\"}const connect=$2(\"directorySearchConsoleConnectV628\"),hasClient=!!(settings.googleAnalyticsOauthClientId&&(settings.googleAnalyticsOauthClientSecretConfigured||String($2(\"directoryGoogleOauthClientSecretV628\")?.value||\"\").trim()));connect&&(connect.disabled=!hasClient,connect.title=hasClient?\"Authorize CardShowIndex Search Console read-only\":\"Save the Google OAuth Client ID and Client Secret first\")}function renderDirectoryAnalyticsGaV628(data={}){const target=$2(\"directoryAnalyticsGaV628\");if(!target)return;if(data.configured===!1){target.innerHTML=\"<div class='orbit-empty-state'><strong>GA4 reporting not configured</strong><span>Save the CardShowIndex GA4 Property ID in Directory Analytics. No zero traffic has been inferred.</span></div>\";return}const m=data.metrics||{};target.innerHTML=table([\"Metric\",\"Last 30 days\"],[[\"Active users\",analyticsNumberV468(m.activeUsers)],[\"Sessions\",analyticsNumberV468(m.sessions)],[\"Page views\",analyticsNumberV468(m.screenPageViews)],[\"New users\",analyticsNumberV468(m.newUsers)],[\"Key events\",analyticsNumberV468(m.keyEvents)]].map(row=>`<tr><td><strong>${esc(row[0])}</strong></td><td>${esc(row[1])}</td></tr>`),\"No GA4 rows returned.\")}function renderDirectoryAnalyticsSearchV628(data={}){const target=$2(\"directoryAnalyticsSearchV628\");if(!target)return;if(data.configured===!1||data.connected===!1){target.innerHTML=\"<div class='orbit-empty-state'><strong>Search Console not connected</strong><span>Connect read-only Search Console above. No zero search visibility has been inferred.</span></div>\";return}const rows=(data.queries||[]).slice(0,12);target.innerHTML=table([\"Query\",\"Clicks\",\"Impressions\",\"Position\"],rows.map(row=>`<tr><td><strong>${esc(row.query||\"(not set)\")}</strong></td><td>${analyticsNumberV468(row.clicks)}</td><td>${analyticsNumberV468(row.impressions)}</td><td>${Number(row.averagePosition||0).toFixed(1)}</td></tr>`),\"No Search Console query rows for this period.\")}async function saveDirectoryAnalyticsV628(button2=null){setLoading(button2,!0);try{const current=state.trackingSettings||await loadTrackingSettings(),profiles={...current.siteProfiles||{}},cardIndex={...profiles.card_show_index||{}};Object.assign(cardIndex,{googleAnalyticsMeasurementId:String($2(\"directoryGaMeasurementIdV628\")?.value||\"\").trim(),googleAnalyticsPropertyId:String($2(\"directoryGaPropertyIdV628\")?.value||\"\").trim(),searchConsoleSiteUrl:String($2(\"directorySearchConsolePropertyV628\")?.value||\"\").trim(),sitemapUrl:String($2(\"directorySitemapUrlV628\")?.value||\"\").trim(),googleAnalyticsEnabled:!0,metaPixelEnabled:!1}),profiles.card_show_index=cardIndex;const payload={siteProfiles:profiles,googleAnalyticsOauthClientId:String($2(\"directoryGoogleOauthClientIdV628\")?.value||\"\").trim()},secret2=String($2(\"directoryGoogleOauthClientSecretV628\")?.value||\"\").trim();return secret2&&(payload.googleAnalyticsOauthClientSecret=secret2),await api(\"/api/admin/tracking-settings\",{method:\"PUT\",body:JSON.stringify(payload),cacheMs:0}),await loadTrackingSettings(),await loadCardShowIndexSearchConsoleStatusV625(),setNotice2(\"CardShowIndex analytics settings saved.\"),state.trackingSettings}finally{setLoading(button2,!1)}}async function connectDirectorySearchConsoleV628(button2=null){const popup=window.open(\"about:blank\",\"orbitGoogleSearchConsoleOauth\",\"popup,width=620,height=760,resizable=yes,scrollbars=yes\");if(!popup)throw new Error(\"Your browser blocked the Google connection popup.\");setLoading(button2,!0);try{await saveDirectoryAnalyticsV628(null);const launch=await api(\"/api/admin/google-search-console/oauth/launch\",{method:\"POST\",body:\"{}\",cacheMs:0}),target=String(launch?.url||\"\");if(!/^https:\\/\\/accounts\\.google\\.com\\//i.test(target))throw new Error(\"Orbit did not return a valid Google authorization URL.\");popup.location.replace(target),setNotice2(\"Complete Google consent for CardShowIndex Search Console read-only access.\")}catch(error){try{popup.close()}catch{}throw error}finally{setLoading(button2,!1)}}async function loadDirectoryAnalyticsV628(force=!1,button2=null){button2&&setLoading(button2,!0);try{await loadTrackingSettings();const[statusResult,gaResult,searchResult]=await Promise.allSettled([loadCardShowIndexSearchConsoleStatusV625(),api(\"/api/admin/google-analytics/report?period=last_30_days&site=card_show_index\",{cacheMs:force?0:5e3,timeoutMs:3e4}),api(\"/api/admin/seo/rankings?period=last_30_days&site=card_show_index\",{cacheMs:force?0:5e3,timeoutMs:3e4})]),ga=gaResult.status===\"fulfilled\"?gaResult.value:{configured:!1,error:gaResult.reason?.message||\"GA4 unavailable\"},search=searchResult.status===\"fulfilled\"?searchResult.value:{configured:!1,connected:!1,error:searchResult.reason?.message||\"Search Console unavailable\"};renderDirectoryAnalyticsGaV628(ga),renderDirectoryAnalyticsSearchV628(search);const metrics=$2(\"directoryAnalyticsMetricsV628\"),sm=search.summary||{},gm=ga.metrics||{};return metrics&&(metrics.innerHTML=[directoryMetricCardV628(\"Search clicks\",search.configured===!1?\"\\u2014\":analyticsNumberV468(sm.clicks),\"Last 30 days\"),directoryMetricCardV628(\"Search impressions\",search.configured===!1?\"\\u2014\":analyticsNumberV468(sm.impressions),\"Last 30 days\"),directoryMetricCardV628(\"Average position\",search.configured===!1?\"\\u2014\":Number(sm.averagePosition||0).toFixed(1),\"Search Console\"),directoryMetricCardV628(\"GA4 sessions\",ga.configured===!1?\"\\u2014\":analyticsNumberV468(gm.sessions),\"Last 30 days\")].join(\"\")),statusResult.status===\"rejected\"&&$2(\"directoryAnalyticsSearchConsoleV628\")&&($2(\"directoryAnalyticsSearchConsoleV628\").className=\"orbit-info-banner warning\",$2(\"directoryAnalyticsSearchConsoleV628\").innerHTML=`<strong>Search Console status unavailable.</strong><span>${esc(statusResult.reason?.message||\"Retry\")}</span>`),{ga,search,status:statusResult.status===\"fulfilled\"?statusResult.value:null}}finally{button2&&setLoading(button2,!1)}}async function testCardShowIndexSearchConsoleV625(button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/seo/search-console/test?site=card_show_index\",{cacheMs:0,timeoutMs:3e4});if(!data.connected){const redirect=data.oauth?.redirectUri||\"\";throw new Error((data.reason||\"Connect Search Console read-only first.\")+(redirect?\" Google Cloud Authorized redirect URI must exactly equal: \"+redirect:\"\"))}return setNotice2(\"CardShowIndex Search Console connected \\xB7 \"+(data.permissionLevel||\"verified property\")+\".\"),await loadCardShowIndexSearchConsoleStatusV625(),data}finally{setLoading(button2,!1)}}async function syncCardShowIndexSearchConsoleV625(button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/seo/search-console/sync\",{method:\"POST\",body:JSON.stringify({site:\"card_show_index\",period:\"last_30_days\"}),cacheMs:0,timeoutMs:9e4});return setNotice2(\"CardShowIndex Search Console synced \\xB7 \"+Number(data.queryRows||0)+\" query rows \\xB7 \"+Number(data.pageRows||0)+\" page rows.\"),await loadCardShowIndexSearchConsoleStatusV625(),data}finally{setLoading(button2,!1)}}window.addEventListener(\"message\",function(event){let backendOrigin=\"\";try{backendOrigin=new URL(API_BASE).origin}catch{}if(event.origin!==backendOrigin||![\"orbit-google-analytics-oauth\",\"orbit-google-search-console-oauth\"].includes(event.data?.type))return;const sc=event.data.type===\"orbit-google-search-console-oauth\";loadTrackingSettings().then(()=>{event.data.status===\"connected\"?(setNotice2(sc?event.data.mode===\"write\"?\"Search Console sitemap-write permission connected separately.\":\"Search Console read-only connected. Now checking the 4 Orbit Domain properties.\":\"Google Analytics connected with read-only access.\"),sc&&Promise.allSettled([loadSearchConsolePropertiesV495(null),loadCardShowIndexSearchConsoleStatusV625()]),(state.currentModule===\"analytics-overview\"||state.currentModule===\"performance\")&&loadAnalyticsOverviewV468(null).catch(()=>{}),state.currentModule===\"seo\"&&loadSeoRankingsV477(null).catch(()=>{})):setNotice2((sc?\"Search Console\":\"Google Analytics\")+\" connection was not completed.\",!0)}).catch(err=>setNotice2(err.message||err,!0))});async function loadAttendance(){const events=await api(\"/api/admin/attendance/events?limit=250&scope=all\");state.attendance={events:events.events||[]},renderAttendanceCentre(state.attendance)}async function loadAttendanceDetail(eventId){const target=$2(\"attendanceDetailTable\");target&&(target.innerHTML=\"Loading attendance detail...\");const detail=await api(\"/api/admin/attendance/events/\"+encodeURIComponent(eventId));state.attendanceDetail=detail,renderAttendanceDetail(detail)}async function loadAll(button2){setLoading(button2,!0);try{if(orbitGetCache.clear(),!secret){setNotice2(\"Missing ADMIN_SECRET. Open this as /pages/admin-os?secret=YOUR_ADMIN_SECRET\",!0);return}text(\"commandCentreState\",\"Refreshing all dashboard data\"),setNotice2(\"Refreshing Command Centre...\");const workspaces=[[\"Backend health\",loadBackendHealth],[\"Home summary\",function(){return loadSummary(null,!0)}],[\"Fulfilment\",loadFulfilment],[\"Shipping configuration\",loadShippingConfig],[\"Monthly Draw\",loadDraws],[\"Golden Tickets\",loadGolden],[\"Events\",loadEvents],[\"Scheduler\",loadScheduler],[\"Communications\",loadCommunications],[\"Eventbrite\",loadEventbrite],[\"Tracking\",loadTrackingSettings],[\"Attendance\",loadAttendance],[\"Tickets\",loadShopify],[\"Tasks\",function(){return loadOperationsV74(null)}],[\"Support\",function(){return loadSupportInbox(null,!0)}]],failures=(await Promise.all(workspaces.map(function(entry){return loadWorkspace(entry[0],entry[1])}))).filter(function(result){return!result.ok});text(\"lastUpdated\",\"Updated \"+new Date().toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"})),updateCommandCentre(),text(\"commandCentreState\",failures.length?\"Some checks need attention\":\"All checks completed\"),failures.length?setNotice2(failures.map(function(f){return f.name+\": \"+(f.error?.message||\"request failed\")}).join(\" \\xB7 \")+\". Other Orbit OS areas remain available. Use Refresh to retry.\",!0):setNotice2(\"Command Centre refreshed successfully.\")}finally{setLoading(button2,!1)}}let homeHealthPromiseV554=null;function setHomeHealthCheckingV554(){[[\"healthBackend\",\"Backend\",\"Checking live connection\"],[\"healthMongo\",\"MongoDB\",\"Checking database\"],[\"healthRecharge\",\"Recharge\",\"Checking billing provider\"],[\"healthScheduler\",\"Scheduler\",\"Checking scheduler\"],[\"healthEventbrite\",\"Eventbrite\",\"Checking events connection\"],[\"healthShopify\",\"Shopify\",\"Checking ticket connection\"],[\"healthShipEngine\",\"ShipStation\",\"Checking label provider\"],[\"healthResend\",\"Email\",\"Checking delivery configuration\"],[\"healthScanner\",\"Scanner\",\"Checking dependencies\"],[\"healthWebhooks\",\"Monthly Draw\",\"Checking schedule\"]].forEach(([id,label,detail])=>healthCard(id,label,\"checking\",detail))}function transientHealthErrorV554(error){const message=String(error?.message||error||\"\").toLowerCase();return error?.status==null||error?.status>=500||/network|fetch|timeout|timed out|abort|temporar/.test(message)}async function withHealthRetryV554(fn){try{return await fn()}catch(error){if(!transientHealthErrorV554(error))throw error;return await new Promise(resolve=>setTimeout(resolve,450)),fn()}}async function probeSchedulerHealthV554(){const data=await api(\"/api/admin/scheduler/status\",{cacheMs:0,timeoutMs:2e4});if(!data||data.success===!1)throw new Error(data?.error||\"Scheduler health check failed.\");state.scheduler=data,renderSystemHealth(data.systemHealth||{});const automatic=!!(data.automationEnabled&&data.midMonthDrawEnabled);return healthCard(\"healthWebhooks\",\"Monthly Draw\",automatic?\"enabled\":\"disabled\",automatic?\"Automatic \\xB7 Next draw \"+prettyDate(data.nextMidMonthDrawAt):\"Automatic draw is disabled \\u2014 open Draw Automation\"),data}async function probeEventbriteHealthV554(){const[status,events]=await Promise.all([api(\"/api/admin/eventbrite/status\",{cacheMs:0,timeoutMs:12e3}),api(\"/api/admin/eventbrite/events?limit=1&metrics=0\",{cacheMs:0,timeoutMs:12e3})]),ok=!!status?.connected;if(healthCard(\"healthEventbrite\",\"Eventbrite\",ok?\"connected\":\"warning\",ok?`${Number(events?.count||events?.events?.length||0)}+ synced event records available`:status?.error||\"Eventbrite needs attention\"),!ok)throw Object.assign(new Error(status?.error||\"Eventbrite is not connected.\"),{healthRendered:!0});return{status,events}}function dashboardCheckoutHealthMarkupV558(status={}){const journey=status.journeyHealth||{},routeCard=(label,item)=>{const healthy=item?.healthy===!0;return\"<div class='orbit-shopify-status-card \"+(healthy?\"\":\"is-warning\")+\"'><span>\"+esc(label)+\"</span><strong><i class='orbit-status-dot \"+(healthy?\"\":\"bad\")+\"'></i>\"+(healthy?\"Ready\":\"Check\")+\"</strong><small>\"+esc(item?.detail||\"Health unavailable\")+\"</small></div>\"},shop=\"<div class='orbit-shopify-status-card'><span>Shopify</span><strong><i class='orbit-status-dot \"+(status.connected?\"\":\"bad\")+\"'></i>\"+(status.connected?\"Connected\":\"Not connected\")+\"</strong><small>\"+esc(status.shop||\"Shop unavailable\")+\" \\xB7 Paid-order webhook \"+(status.webhookExists?\"confirmed\":\"requires attention\")+\"</small></div>\",workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599());return workspace===\"card-shows\"?shop+routeCard(\"Ticket Purchase\",journey.ticketPurchase):workspace===\"members-club\"?shop+routeCard(\"\\xA31 Signup\",journey.directSignup)+routeCard(\"Event Upgrade\",journey.eventUpgrade):shop}function renderDashboardCheckoutHealthV558(status={}){const target=$2(\"dashboardCheckoutHealth\");target&&(target.innerHTML=dashboardCheckoutHealthMarkupV558(status))}function renderDashboardCheckoutHealthFailureV558(message){const target=$2(\"dashboardCheckoutHealth\");target&&(target.innerHTML=\"<div class='orbit-empty-state'><strong>Checkout health unavailable</strong><span>\"+esc(message||\"Shopify health could not be checked.\")+\" Use Check all now to retry.</span></div>\")}async function probeShopifyHealthV554(forceFresh=!1){try{const data=await api(\"/api/admin/shopify/status\"+(forceFresh?\"?force=1\":\"\"),{cacheMs:0,timeoutMs:12e3});renderDashboardCheckoutHealthV558(data||{});const ok=data?.connected!==!1&&data?.configured!==!1&&data?.success!==!1;if(healthCard(\"healthShopify\",\"Shopify\",ok?\"connected\":\"warning\",data?.shop||data?.shopDomain||data?.store||data?.message||\"Ticket sales connection\"),!ok)throw Object.assign(new Error(data?.error||\"Shopify needs attention.\"),{healthRendered:!0});return data}catch(error){throw renderDashboardCheckoutHealthFailureV558(error?.message||String(error||\"Shopify health check failed.\")),error}}async function probeShippingHealthV554(){const data=await api(\"/api/admin/shipengine/test\",{cacheMs:0,timeoutMs:12e3});return healthCard(\"healthShipEngine\",\"ShipStation\",\"operational\",data?.carrierName||data?.message||\"Live label-provider connection confirmed\"),data}async function probeEmailHealthV554(){const data=await api(\"/api/admin/communications/status\",{cacheMs:0,timeoutMs:1e4}),ok=!!(data?.configured||data?.resendConfigured||data?.ready||data?.success);if(healthCard(\"healthResend\",\"Email\",ok?\"configured\":\"warning\",data?.fromEmail||data?.sender||data?.error||\"Email delivery configuration\"),!ok)throw Object.assign(new Error(data?.error||\"Email delivery is not configured.\"),{healthRendered:!0});return data}async function runHomeHealthChecksV554({announce=!1,forceFresh=!1}={}){if(homeHealthPromiseV554){if(!forceFresh)return homeHealthPromiseV554;const prior=homeHealthPromiseV554;try{await prior}catch{}if(homeHealthPromiseV554&&homeHealthPromiseV554!==prior)return runHomeHealthChecksV554({announce,forceFresh:!0})}setHomeHealthCheckingV554();const run=(async()=>{const checks=[[\"Backend\",()=>loadBackendHealth()],[\"Core services\",()=>probeSchedulerHealthV554()],[\"Eventbrite\",()=>probeEventbriteHealthV554()],[\"Shopify\",()=>probeShopifyHealthV554(forceFresh)],[\"ShipStation\",()=>probeShippingHealthV554()],[\"Email\",()=>probeEmailHealthV554()]],results=await Promise.all(checks.map(async([name,fn])=>{try{return{name,ok:!0,value:await withHealthRetryV554(fn)}}catch(error){return{name,ok:!1,error}}})),failed=results.filter(x=>!x.ok);for(const item of failed){if(item.error?.healthRendered)continue;const map={Backend:[\"healthBackend\",\"Backend\"],\"Core services\":[\"healthMongo\",\"MongoDB\"],Eventbrite:[\"healthEventbrite\",\"Eventbrite\"],Shopify:[\"healthShopify\",\"Shopify\"],ShipStation:[\"healthShipEngine\",\"ShipStation\"],Email:[\"healthResend\",\"Email\"]},[id,label]=map[item.name]||[];id&&healthCard(id,label,\"unavailable\",item.error?.message||\"Live health probe failed\"),item.name===\"Core services\"&&(healthCard(\"healthRecharge\",\"Recharge\",\"unavailable\",\"Core health probe failed\"),healthCard(\"healthScheduler\",\"Scheduler\",\"unavailable\",\"Core health probe failed\"),healthCard(\"healthScanner\",\"Scanner\",\"unavailable\",\"Backend/database health could not be confirmed\"),healthCard(\"healthWebhooks\",\"Monthly Draw\",\"unavailable\",\"Scheduler health could not be confirmed\"))}return text(\"lastUpdated\",(failed.length?\"Health check attempted \":\"Health checked \")+new Date().toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"})),text(\"commandCentreState\",failed.length?\"Critical service checks need attention\":\"All critical services checked\"),announce&&setNotice2(failed.length?\"Critical service checks need attention: \"+failed.map(x=>x.name).join(\", \")+\". Use the red card to diagnose, then Check all now to retry.\":\"All critical Orbit services checked successfully.\",!!failed.length),{success:!failed.length,failures:failed.map(x=>({name:x.name,error:x.error?.message||String(x.error||\"\")})),results}})();homeHealthPromiseV554=run;try{return await run}finally{homeHealthPromiseV554=null}}let homeRefreshPromiseV542=null;async function refreshHomeV542(button2){if(homeRefreshPromiseV542)return homeRefreshPromiseV542;setLoading(button2,!0);const run=(async()=>{orbitGetCache.clear(),text(\"commandCentreState\",\"Refreshing Home\"),setNotice2(\"Refreshing Home figures and task counts\\u2026\");const jobs=[[\"Critical service health\",()=>runHomeHealthChecksV554({announce:!1,forceFresh:!0})],[\"Home figures\",()=>loadSummary(null,!0)],[\"Tasks\",async()=>{if(await loadOperationsV74(null,!0),state.operationsCountErrorV539)throw new Error(\"Tasks could not refresh\")}],[\"Acceptance tasks\",()=>refreshAcceptanceTaskCountV296(!0)]],failures=(await Promise.all(jobs.map(([name,fn])=>loadWorkspace(name,fn)))).filter(r=>!r.ok);return updateCommandCentre(),text(\"commandCentreState\",failures.length?\"Home refresh needs attention\":\"Home refreshed\"),text(\"lastUpdated\",(failures.length?\"Last refresh attempted \":\"Updated \")+new Date().toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"})),setNotice2(failures.length?\"Some Home checks could not refresh: \"+failures.map(f=>f.name).join(\", \")+\". Press Check all now to retry.\":\"Home refreshed: critical service health, operations and tasks are up to date.\",!!failures.length),{success:!failures.length,failures:failures.map(f=>f.name)}})();homeRefreshPromiseV542=run;try{return await run}finally{homeRefreshPromiseV542=null,setLoading(button2,!1)}}function dotClass(status){const value=String(status||\"\").toLowerCase();return[\"online\",\"connected\",\"configured\",\"installed\",\"enabled\",\"healthy\",\"success\",\"ready\",\"ok\",\"operational\"].includes(value)?\"\":[\"missing_token\",\"disabled\",\"not_started\",\"paused\"].includes(value)?\"warning\":[\"checking\",\"unknown\",\"not yet checked\",\"not_checked\"].includes(value)?\"neutral\":\"bad\"}const healthDestinations={healthBackend:{module:\"settings\",anchor:\"settingsBackendCard\"},healthMongo:{module:\"settings\",anchor:\"settingsMongoCard\"},healthRecharge:{module:\"settings\",anchor:\"settingsRechargeCard\"},healthScheduler:{module:\"settings\",anchor:\"settingsSchedulerCard\"},healthEventbrite:{module:\"settings\",anchor:\"settingsEventbriteCard\"},healthShopify:{module:\"settings\",anchor:\"settingsShopifyCard\"},healthShipEngine:{module:\"settings\",anchor:\"shippingSettingsPanel\"},healthResend:{module:\"settings\",anchor:\"settingsResendCard\"},healthScanner:{module:\"settings\",anchor:\"settingsScannerCard\"},healthWebhooks:{module:\"automation\",anchor:\"drawAutomationSummaryV83\",drawPane:\"automation\"}};function operatorHealthStatus(status){const value=String(status||\"\").toLowerCase();return[\"online\",\"connected\",\"configured\",\"installed\",\"enabled\",\"healthy\",\"success\",\"ready\",\"ok\",\"operational\"].includes(value)?\"Operational\":[\"running\",\"in_progress\"].includes(value)?\"Running\":[\"disabled\",\"paused\",\"missing_token\",\"not_started\"].includes(value)?\"Needs setup\":[\"warning\",\"attention\",\"degraded\"].includes(value)?\"Needs attention\":[\"checking\"].includes(value)?\"Checking live connection\":[\"unknown\",\"not yet checked\"].includes(value)?\"Not checked\":status||\"Unavailable\"}function healthCard(id,label,status,detail){const el=$2(id);if(!el)return;const dot=dotClass(status),destination=healthDestinations[id]||{module:\"settings\",anchor:\"\"};el.dataset.healthModule=destination.module,el.dataset.healthAnchor=destination.anchor||\"\",destination.drawPane?el.dataset.healthDrawPane=destination.drawPane:delete el.dataset.healthDrawPane;const checkedAt=new Date;el.dataset.lastChecked=checkedAt.toISOString(),el.classList.remove(\"orbit-health-warning\",\"orbit-health-error\",\"orbit-health-good\",\"orbit-health-neutral\"),el.classList.add(dot===\"bad\"?\"orbit-health-error\":dot===\"warning\"?\"orbit-health-warning\":dot===\"neutral\"?\"orbit-health-neutral\":\"orbit-health-good\");const actionLabel=dot===\"bad\"?\"Diagnose now\":dot===\"warning\"?\"Open settings\":dot===\"neutral\"?\"Checking\":\"View details\";el.title=(detail||label)+\" \\u2014 checked \"+checkedAt.toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"})+\"; \"+actionLabel.toLowerCase(),el.setAttribute(\"aria-label\",label+\": \"+operatorHealthStatus(status)+\". \"+(detail||\"\")+\". \"+actionLabel),el.innerHTML=\"<i class='orbit-status-dot \"+esc(dot)+\"'></i><span>\"+esc(label)+\"</span><strong>\"+esc(operatorHealthStatus(status))+\"</strong><small>\"+esc(detail||\"Open for details\")+\"</small><em class='orbit-health-action'>\"+esc(actionLabel)+\"</em><b aria-hidden='true'>\\u203A</b>\"}function updateHealthCheckedLabelsV834(){document.querySelectorAll(\".orbit-health-card[data-last-checked]\").forEach(function(card){const target=card.querySelector(\".orbit-health-checked\"),checked=Date.parse(card.dataset.lastChecked||\"\");if(!target||Number.isNaN(checked))return;const mins=Math.max(0,Math.floor((Date.now()-checked)/6e4));target.textContent=mins<1?\"Checked just now\":mins===1?\"Checked 1 min ago\":\"Checked \"+mins+\" mins ago\"})}window.setInterval(updateHealthCheckedLabelsV834,3e4);function integrationSummaryRows(targetId,rows){const target=$2(targetId);target&&(target.innerHTML=rows.map(function(row){return\"<strong>\"+esc(row[0])+\": \"+esc(row[1])+\"</strong>\"+(row[2]?\"<span>\"+esc(row[2])+\"</span>\":\"\")}).join(\"\"))}function setRepairStatus(id,status){const target=$2(id);if(!target)return;const label=operatorHealthStatus(status);target.textContent=label,target.classList.remove(\"is-good\",\"is-warning\",\"is-bad\");const dot=dotClass(status);target.classList.add(dot===\"bad\"?\"is-bad\":dot===\"warning\"?\"is-warning\":\"is-good\")}function resolveStaleSettingsChecks(){document.querySelectorAll(\".orbit-repair-status\").forEach(function(target){if(!/^checking$/i.test(String(target.textContent||\"\").trim()))return;target.textContent=\"Not checked\",target.classList.remove(\"is-good\",\"is-bad\"),target.classList.add(\"is-warning\");const summary=target.closest(\".orbit-settings-card\")?.querySelector(\".orbit-settings-summary\");summary&&/loading|checking/i.test(summary.textContent||\"\")&&(summary.innerHTML=\"<strong>Status: Not checked</strong><span>The live check did not return in time.</span><span>Use the Retest button below. If it still does not resolve, open Developer & Testing to inspect the backend connection.</span>\")})}window.setInterval(resolveStaleSettingsChecks,5e3);function renderRepairCentreHealth(health){health=health||{};const backend=health.backend||health,mongo=health.mongo||{},scheduler=health.scheduler||state.scheduler?.systemHealth?.scheduler||{},recharge=health.recharge||{},scannerReady=[\"healthy\",\"online\",\"ready\",\"ok\"].includes(String(backend.status||\"\").toLowerCase())&&[\"healthy\",\"connected\",\"ready\",\"ok\"].includes(String(mongo.status||\"\").toLowerCase());setRepairStatus(\"settingsBackendStatus\",backend.status||\"unknown\"),setRepairStatus(\"settingsMongoStatus\",mongo.status||\"unknown\"),setRepairStatus(\"settingsSchedulerStatus\",scheduler.status||\"unknown\"),setRepairStatus(\"settingsRechargeStatus\",recharge.status||\"unknown\"),setRepairStatus(\"settingsScannerStatus\",scannerReady?\"ready\":\"warning\");const rechargeState=String(recharge.status||\"unknown\").toLowerCase(),rechargeReason=recharge.error||recharge.note||(recharge.warningCount?recharge.warningCount+\" recent member billing warning(s) need review\":recharge.configured===!1?\"Recharge credentials are not configured in the backend environment\":rechargeState===\"checking\"?\"The live Recharge check is still running\":\"Recharge is configured and the live probe completed\"),rechargeAction=recharge.configured===!1?\"Add the Recharge API token in the backend environment, redeploy, then retest\":rechargeState===\"authentication_error\"?\"Replace the rejected Recharge credentials, redeploy, then retest\":recharge.warningCount?\"Open Member Billing to inspect the affected members, then retest\":\"Use Retest Recharge whenever you want a fresh live check\";integrationSummaryRows(\"settingsRechargeSummary\",[[\"Status\",operatorHealthStatus(recharge.status||\"unknown\"),rechargeReason],[\"Configuration\",recharge.configured===!1?\"Missing\":\"Present\",\"Credentials remain masked\"],[\"Next action\",rechargeAction,\"Open Member Billing for subscription-level detail\"]]),integrationSummaryRows(\"settingsScannerSummary\",[[\"Status\",scannerReady?\"Ready\":\"Needs attention\",scannerReady?\"Backend and MongoDB dependencies are available\":\"Repair Backend or MongoDB first\"],[\"Backend\",operatorHealthStatus(backend.status||\"unknown\"),\"Required for ticket validation\"],[\"MongoDB\",operatorHealthStatus(mongo.status||\"unknown\"),\"Required for attendance records\"]]);const drawAutomatic=state.scheduler?.automationEnabled!==!1&&state.scheduler?.midMonthDrawEnabled!==!1;setRepairStatus(\"settingsDrawStatus\",drawAutomatic?\"enabled\":\"disabled\")}function renderIntegrationSettings(health){health=health||{};const backend=health.backend||health,mongo=health.mongo||{},scheduler=health.scheduler||state.scheduler?.systemHealth?.scheduler||{};integrationSummaryRows(\"settingsBackendSummary\",[[\"Status\",operatorHealthStatus(backend.status||\"unknown\"),\"Version \"+(backend.version||health.version||\"\\u2014\")],[\"Last check\",new Date().toLocaleString(\"en-GB\"),\"Live /health diagnostic\"],[\"Admin API\",\"Available\",\"Sensitive environment values remain masked\"]]),integrationSummaryRows(\"settingsMongoSummary\",[[\"Status\",operatorHealthStatus(mongo.status||\"unknown\"),\"Database \"+(mongo.database||\"\\u2014\")],[\"Latency\",String(mongo.latencyMs??\"\\u2014\")+\" ms\",\"Measured by the live backend\"],[\"Credentials\",\"Masked\",\"Connection secrets are managed in the backend environment\"]]),integrationSummaryRows(\"settingsSchedulerSummary\",[[\"Status\",operatorHealthStatus(scheduler.status||\"unknown\"),scheduler.tickInProgress?\"Scheduler tick is running\":\"Scheduler is standing by\"],[\"Global automation\",state.scheduler?.automationEnabled===!1?\"Disabled\":\"Enabled\",\"Controls whether scheduled jobs can run\"],[\"Automatic draw\",state.scheduler?.midMonthDrawEnabled?\"Enabled\":\"Disabled\",\"Monthly Draw configuration is managed in Prizes\"],[\"Next draw\",prettyDate(state.scheduler?.nextMidMonthDrawAt),\"Open Monthly Draw for editable automation settings\"]]),renderRepairCentreHealth(health)}function renderSystemHealth(health){state.health||healthCard(\"healthBackend\",\"Backend\",health.backend?.status||\"unknown\",\"Version \"+(health.backend?.version||\"\\u2014\")),healthCard(\"healthMongo\",\"MongoDB\",health.mongo?.status||\"unknown\",(health.mongo?.database||\"\\u2014\")+\" / \"+(health.mongo?.latencyMs??\"\\u2014\")+\"ms\"),healthCard(\"healthRecharge\",\"Recharge\",health.recharge?.status||\"unknown\",health.recharge?.warningCount?health.recharge.warningCount+\" recent operational warning\"+(health.recharge.warningCount===1?\"\":\"s\"):health.recharge?.error||\"Billing integration\"),healthCard(\"healthScheduler\",\"Scheduler\",health.scheduler?.tickInProgress?health.scheduler?.status||\"running\":\"ready\",health.scheduler?.tickInProgress?\"Tick running now\":\"Standing by for next scheduled run\");const backendHealthy=[\"healthy\",\"online\",\"ready\",\"ok\"].includes(String(health.backend?.status||\"\").toLowerCase()),mongoHealthy=[\"healthy\",\"connected\",\"ready\",\"ok\"].includes(String(health.mongo?.status||\"\").toLowerCase()),scannerReady=backendHealthy&&mongoHealthy;healthCard(\"healthScanner\",\"Scanner\",scannerReady?\"ready\":\"warning\",scannerReady?\"Scanner dependencies are healthy: backend and MongoDB are available\":\"Scanner depends on both the backend and MongoDB; check any unhealthy dependency\");const schedulerState=health.scheduler||state.scheduler?.systemHealth?.scheduler||{},globalAutomationEnabled=state.scheduler?.automationEnabled!==!1&&schedulerState.automationEnabled!==!1&&schedulerState.enabled!==!1,drawEnabled=state.scheduler?.midMonthDrawEnabled!==!1,drawAutomatic=globalAutomationEnabled&&drawEnabled,drawStatus=drawAutomatic?\"enabled\":\"disabled\",nextDraw=state.scheduler?.nextMidMonthDrawAt?prettyDate(state.scheduler.nextMidMonthDrawAt):\"No next draw date available\";healthCard(\"healthWebhooks\",\"Monthly Draw\",drawStatus,drawAutomatic?\"Automatic \\xB7 Next draw \"+nextDraw:\"Automatic draw is disabled \\u2014 open Draw Automation\"),renderRepairCentreHealth(health)}function renderDashboardAutomation(status){const target=$2(\"dashboardAutomationDetails\"),explanation=$2(\"automationExplanation\");if(!target)return;const enabled=!!status.automationEnabled;explanation&&(explanation.textContent=enabled?\"Automation is enabled. Orbit checks hourly and runs enabled jobs when their scheduled time is due.\":\"Automation is disabled because ORBIT_AUTOMATION_ENABLED is not enabled in the backend environment. Manual controls still work, but scheduled month-start and draw jobs will not run automatically.\");const recent=Array.isArray(status.recentRuns)?status.recentRuns:[],lastSuccess=recent.find(function(row){return String(row.status||\"\").toLowerCase()===\"completed\"}),lastFailure=recent.find(function(row){return[\"failed\",\"error\"].includes(String(row.status||\"\").toLowerCase())}),rows=[[\"Global automation\",enabled?\"Enabled\":\"Disabled\"],[\"Scheduler runner\",status.runningInProcess?\"Running in this backend process\":\"Not running\"],[\"Month-start job\",status.monthStartEnabled?\"Enabled\":\"Disabled\"],[\"Monthly draw job\",status.midMonthDrawEnabled?\"Enabled\":\"Disabled\"],[\"Next month start\",prettyDate(status.nextMonthStartAt)],[\"Next monthly draw\",prettyDate(status.nextMidMonthDrawAt)],[\"Last successful run\",lastSuccess?prettyDate(lastSuccess.finished_at||lastSuccess.created_at):\"None recorded\"],[\"Last failed run\",lastFailure?(lastFailure.summary||lastFailure.error||\"Failed\")+\" \\xB7 \"+prettyDate(lastFailure.finished_at||lastFailure.created_at):\"None recorded\"]];target.innerHTML=rows.map(function(row){return\"<div><span>\"+esc(row[0])+\"</span><strong>\"+esc(row[1]||\"\\u2014\")+\"</strong></div>\"}).join(\"\")}function renderSchedulerStatus(status){const target=$2(\"schedulerSummary\");if(!target)return;const config=status.config||{},lastRun=(status.recentRuns||[])[0],automationState=status.automationEnabled?\"Enabled\":\"Disabled\",monthStartState=status.monthStartEnabled?\"Enabled\":\"Disabled\",drawState=status.midMonthDrawEnabled?\"Enabled\":\"Disabled\";text(\"automationStateLabel\",automationState);const stateBadge=$2(\"automationStateBadge\");stateBadge&&(stateBadge.classList.toggle(\"enabled\",!!status.automationEnabled),stateBadge.classList.toggle(\"disabled\",!status.automationEnabled)),text(\"nextMonthStartAt\",prettyDate(status.nextMonthStartAt)),text(\"nextMidMonthDrawAt\",prettyDate(status.nextMidMonthDrawAt)),text(\"monthStartSchedule\",\"Day \"+(config.monthStartDay||1)+\" after \"+String(config.monthStartHourUtc??1).padStart(2,\"0\")+\":00 UTC / \"+monthStartState),text(\"drawSchedule\",\"Day \"+(config.midMonthDrawDay||15)+\" at \"+String(config.midMonthDrawHourLocal??config.midMonthDrawHourUtc??14).padStart(2,\"0\")+\":00 UK time / \"+drawState);const rows=[[\"Automation\",automationState],[\"Runner\",status.runningInProcess?\"Installed\":\"Not running\"],[\"Month Start\",monthStartState],[\"Prize Draw\",drawState],[\"Last Tick\",prettyDate(status.lastTickAt)],[\"Last Scheduled Run\",lastRun?(lastRun.workflow_type||\"Workflow\")+\" / \"+(lastRun.status||\"\\u2014\"):\"None yet\"]];target.innerHTML=rows.map(([label,value])=>\"<div><span>\"+esc(label)+\"</span><strong>\"+esc(value)+\"</strong></div>\").join(\"\")}function renderShopifyCentre(status,recent){renderDashboardCheckoutHealthV558(status||{});const statusTarget=$2(\"shopifyStatusPanel\");statusTarget&&(statusTarget.innerHTML=\"\",statusTarget.hidden=!0);const checkoutTarget=$2(\"ticketCheckoutsTable\");if(checkoutTarget){const search=String($2(\"ticketAdminSearch\")?.value||\"\").trim().toLowerCase(),eventFilter=$2(\"ticketAdminEventFilter\")?.value||\"all\",statusFilter=$2(\"ticketAdminStatusFilter\")?.value||\"all\",visibleRows=(recent?.checkouts||[]).filter(function(row){return!(String(row.status||\"\").toLowerCase()===\"shopify_checkout_created\"||!row.shopifyOrderId&&!!row.shopifyDraftOrderId&&!row.fulfilledAt)}),eventSelect=$2(\"ticketAdminEventFilter\");if(eventSelect&&eventSelect.options.length<=1){const current=eventSelect.value||\"all\",names=(recent?.eventOptions||Array.from(new Set(visibleRows.map(r=>r.eventName).filter(Boolean)))).sort();eventSelect.innerHTML=\"<option value='all'>All events</option>\"+names.map(name=>\"<option value='\"+esc(name)+\"'>\"+esc(name)+\"</option>\").join(\"\"),names.includes(current)&&(eventSelect.value=current)}const filteredRows=visibleRows.filter(function(row){const status2=String(row.status||\"\"),createdMs=row.createdAt?Date.parse(row.createdAt):0,hasCustomer=!!(row.customerEmail||row.email),hasTickets=Number(row.ticketCount||0)>0,base=!!(row.shopifyOrderId||row.fulfilledAt||status2===\"fulfilled\"||status2===\"paid\")||hasCustomer&&hasTickets,hay=[row.customerEmail,row.customerName,row.shopifyOrderId,row.shopifyDraftOrderId,row.checkoutId,row.eventName,row.eventDate].join(\" \").toLowerCase(),statusValue=String(row.status||(row.lastSyncError?\"failed\":\"\")).toLowerCase(),statusMatches=statusFilter===\"all\"||statusFilter===\"fulfilled\"&&[\"fulfilled\",\"tickets_issued\",\"completed\",\"paid\",\"order_paid\"].includes(statusValue)||statusValue===statusFilter||statusFilter===\"failed\"&&!!row.lastSyncError;return base&&(!search||hay.includes(search))&&(eventFilter===\"all\"||row.eventName===eventFilter)&&statusMatches}),rows=ticketSortRowsV497(filteredRows);rows.length?(checkoutTarget.innerHTML=\"<table class='orbit-sortable-table-v497'><thead><tr><th>\"+ticketSortButtonV497(\"created\",\"Created\")+\"</th><th>\"+ticketSortButtonV497(\"status\",\"Status\")+\"</th><th>\"+ticketSortButtonV497(\"event\",\"Event\")+\"</th><th>\"+ticketSortButtonV497(\"order\",\"Shopify order\")+\"</th><th>\"+ticketSortButtonV497(\"email\",\"Email\")+\"</th><th>\"+ticketSortButtonV497(\"tickets\",\"Tickets\")+\"</th><th>Actions</th></tr></thead><tbody>\"+rows.map(row=>{const debugText=row.lastSyncDebug?JSON.stringify(row.lastSyncDebug):\"\",syncLine=row.lastSyncStatus||row.lastSyncError||row.fulfilledAt?\"<br><small class='orbit-sync-line'>\"+(row.fulfilledAt?\"Fulfilled: \"+esc(prettyShortDate(row.fulfilledAt))+\"<br>\":\"\")+\"Sync: \"+esc(row.lastSyncStatus||\"\\u2014\")+(row.lastSyncError?\"<br>Error: \"+esc(row.lastSyncError):\"\")+\"</small>\":\"\",journeyLine=row.checkoutRoute||row.journeyStep||row.discountCode||row.adminTrackingNote?\"<br><small class='orbit-sync-line'>Route: \"+esc(row.checkoutRoute||\"ticket only\")+(row.journeyStep?\"<br>Step: \"+esc(row.journeyStep):\"\")+(row.discountCode?\"<br>Code: \"+esc(row.discountCode):\"\")+(row.adminTrackingNote?\"<br>\"+esc(row.adminTrackingNote):\"\")+\"</small>\":\"\",invoiceLink=row.shopifyInvoiceUrl?\"<br><a href='\"+esc(row.shopifyInvoiceUrl)+\"' target='_blank' rel='noopener noreferrer'>Open Shopify checkout</a>\":\"\",statusClass=checkoutStatusClass(row.status||(row.lastSyncError?\"failed\":\"\")),checkoutLines=Array.isArray(row.lines)?row.lines:[],ticketBreakdown=checkoutLines.length?\"<details class='orbit-ticket-order-expand'><summary>\"+esc(row.ticketCount||checkoutLines.length)+\" items \\xB7 Show details</summary><div class='orbit-ticket-line-breakdown'>\"+checkoutLines.map(function(line){const qty=Number(line.quantity||line.count||0),name=line.name||line.ticketName||\"Ticket item\",isAddon=!!line.addOn||String(line.ticketKind||\"\").toLowerCase()===\"add_on\"||/add[ -]?on|mystery box/i.test(String(name));return\"<div><span class='orbit-pill \"+(isAddon?\"info\":\"\")+\"'>\"+(isAddon?\"Add-on\":\"Admission\")+\"</span><strong>\"+esc(name)+\"</strong><b>\\xD7 \"+esc(qty||1)+\"</b></div>\"}).join(\"\")+\"</div></details>\":\"<small>No item breakdown recorded</small>\";return\"<tr class='\"+(row.status===\"fulfilled\"?\"orbit-row-fulfilled\":\"\")+\"'><td>\"+esc(prettyShortDate(row.createdAt||row.updatedAt))+\"</td><td><span class='orbit-pill \"+statusClass+\"'>\"+esc(checkoutStatusLabel(row))+\"</span>\"+(row.discountCode?\"<br><span class='orbit-pill orbit-ticket-discount-pill'>Discount \\xB7 \"+esc(row.discountCode)+(Number(row.discountPercentage||0)>0?\" \\xB7 \"+esc(row.discountPercentage)+\"%\":\"\")+\"</span>\":\"\")+(row.isAdminFreeTest?\"<br><small>\\xA30 admin test</small>\":\"\")+(row.lastResendAt?\"<br><small>Resent: \"+esc(prettyShortDate(row.lastResendAt))+\"</small>\":\"\")+\"</td><td><strong>\"+esc(row.eventName||\"\\u2014\")+\"</strong>\"+(row.eventDate?\"<br><small><strong>\"+esc(row.eventDate)+\"</strong></small>\":\"\")+\"<br><small>\"+esc(row.checkoutId||\"\\u2014\")+journeyLine+\"</small></td><td><strong>\"+esc(row.shopifyOrderName||\"\\u2014\")+\"</strong></td><td>\"+esc(row.customerEmail||\"\\u2014\")+\"</td><td><strong>\"+esc(row.ticketCount||0)+\" issued</strong>\"+ticketBreakdown+\"</td><td><div class='orbit-row-actions'><button type='button' class='secondary' data-ticket-details='\"+esc(row.checkoutId||\"\")+\"'>View Details</button>\"+(row.status===\"fulfilled\"?\"<button type='button' class='secondary' data-resend-public-tickets='\"+esc(row.checkoutId||\"\")+\"' data-ticket-email='\"+esc(row.customerEmail||\"\")+\"'>Resend Tickets</button><button type='button' class='danger' data-delete-fulfilled-ticket-order='\"+esc(row.checkoutId||\"\")+\"'>Delete Order</button>\":\"\")+(row.status===\"shopify_checkout_created\"?\"<button type='button' class='secondary' data-dismiss-pending-ticket-order='\"+esc(row.checkoutId||\"\")+\"'>Dismiss Pending</button>\":\"\")+\"</div></td></tr>\"}).join(\"\")+\"</tbody></table>\"+(Number(recent?.pages||1)>1?\"<div class='orbit-ticket-pagination-v457'><button type='button' class='secondary' data-ticket-page-v457='\"+Math.max(1,Number(recent.page||1)-1)+\"' \"+(Number(recent.page||1)<=1?\"disabled\":\"\")+\">Previous</button><span>Page \"+Number(recent.page||1)+\" of \"+Number(recent.pages||1)+\" \\xB7 \"+Number(recent.total||0)+\" orders</span><button type='button' class='secondary' data-ticket-page-v457='\"+(Number(recent.page||1)+1)+\"' \"+(Number(recent.page||1)>=Number(recent.pages||1)?\"disabled\":\"\")+\">Next</button></div>\":\"\"),checkoutTarget.querySelectorAll(\"[data-ticket-sort-v497]\").forEach(button2=>button2.addEventListener(\"click\",()=>{const key=button2.dataset.ticketSortV497;ticketAdminSortV497.key===key?ticketAdminSortV497.direction=ticketAdminSortV497.direction===\"asc\"?\"desc\":\"asc\":ticketAdminSortV497={key,direction:\"asc\"},renderShopifyCentre(state.shopify||status,state.ticketCheckouts||recent)})),checkoutTarget.querySelectorAll(\"[data-ticket-page-v457]\").forEach(b=>b.addEventListener(\"click\",()=>loadTicketOrderPageV457(Number(b.dataset.ticketPageV457)).catch(err=>setNotice2(err.message||err,!0))))):checkoutTarget.innerHTML=recent?.success===!1?\"Could not load recent checkouts: \"+esc(recent.error||\"Unknown error\"):\"No Orbit Shopify ticket checkouts found yet.\"}}function openTicketDetails(checkoutId){const row=(state.ticketCheckouts?.checkouts||[]).find(function(item){return String(item.checkoutId||\"\")===String(checkoutId||\"\")});if(!row){setNotice2(\"Ticket order could not be found.\",!0);return}const body=$2(\"ticketDetailsBody\"),dialog=$2(\"ticketDetailsDialog\");text(\"ticketDetailsTitle\",(row.eventName||\"Ticket order\")+(row.eventDate?\" \\xB7 \"+row.eventDate:\"\"));const lines=Array.isArray(row.lines)?row.lines:[],admissionTickets=(Array.isArray(row.issuedTickets)?row.issuedTickets:[]).filter(t=>!/add[ -]?on|mystery box|merch/i.test(String(t.ticketName||\"\"))),extras=lines.filter(line=>!!line.addOn||String(line.ticketKind||\"\").toLowerCase()===\"add_on\"||/add[ -]?on|mystery box|merch/i.test(String(line.name||line.ticketName||\"\")));body.innerHTML=\"<div class='orbit-ticket-detail-grid'><div class='orbit-customer-card'><span>Customer</span><strong title='\"+esc(row.customerName||(row.customerEmail?row.customerEmail.split(\"@\")[0].replace(/[._-]+/g,\" \").replace(/\\b\\w/g,c=>c.toUpperCase()):\"Unknown Customer\"))+\"'>\"+esc(row.customerName||(row.customerEmail?row.customerEmail.split(\"@\")[0].replace(/[._-]+/g,\" \").replace(/\\b\\w/g,c=>c.toUpperCase()):\"Unknown Customer\"))+\"</strong><small title='\"+esc(row.customerEmail||\"\")+\"'>\"+esc(row.customerEmail||\"\\u2014\")+\"</small></div><div><span>Shopify order</span><strong>\"+esc(row.shopifyOrderId||\"\\u2014\")+\"</strong><small>Checkout \"+esc(row.checkoutId||\"\\u2014\")+\"</small></div><div><span>Status</span><strong>\"+esc(checkoutStatusLabel(row))+\"</strong><small>Created \"+esc(prettyShortDate(row.createdAt||row.updatedAt))+\"</small>\"+(row.discountCode?\"<span class='orbit-pill orbit-ticket-discount-pill'>Discount \\xB7 \"+esc(row.discountCode)+(Number(row.discountPercentage||0)>0?\" \\xB7 \"+esc(row.discountPercentage)+\"%\":\"\")+\"</span>\":\"\")+\"</div><div><span>Tickets issued</span><strong>\"+esc(row.ticketCount||0)+\"</strong><small>Last resend \"+esc(prettyShortDate(row.lastResendAt)||\"Never\")+\"</small></div></div><h3>Admission Tickets</h3>\"+(admissionTickets.length?\"<div class='orbit-mini-list'>\"+admissionTickets.map(function(ticket){return\"<div><strong>\"+esc(ticket.isCarer?\"Carer Ticket\":ticket.ticketName||\"Admission Ticket\")+\"</strong><span>\"+esc(ticket.holderName||ticket.email||\"Ticket holder\")+(ticket.isCarer?\" \\xB7 Issued by Admin\":\"\")+\"</span></div>\"}).join(\"\")+\"</div><p class='orbit-muted'>Total admission tickets: \"+esc(admissionTickets.length)+\"</p>\":\"<p class='orbit-muted'>No admission tickets are currently stored for this order.</p>\")+\"<h3>Extras</h3>\"+(extras.length?\"<div class='orbit-mini-list'>\"+extras.map(function(line){return\"<div><strong>\"+esc(line.name||line.ticketName||\"Extra\")+\"</strong><span>Quantity \"+esc(line.quantity||line.count||1)+\"</span></div>\"}).join(\"\")+\"</div>\":\"<p class='orbit-muted'>No extras on this order.</p>\")+\"<h3>Audit summary</h3><div class='orbit-mini-list'><div><strong>Fulfilled</strong><span>\"+esc(prettyShortDate(row.fulfilledAt)||\"Not yet\")+\"</span></div><div><strong>Last sync</strong><span>\"+esc(row.lastSyncStatus||row.lastSyncError||\"No sync result\")+\"</span></div><div><strong>Route</strong><span>\"+esc(row.checkoutRoute||row.journeyStep||\"Ticket only\")+\"</span></div></div>\";const actions=$2(\"ticketDetailsActions\");actions&&(actions.innerHTML=\"<button type='button' data-resend-public-tickets='\"+esc(row.checkoutId||\"\")+\"' data-ticket-email='\"+esc(row.customerEmail||\"\")+\"'>Resend Tickets</button><button type='button' data-issue-carer-ticket='\"+esc(row.checkoutId||\"\")+\"'>Issue Carer Ticket</button><button type='button' class='secondary' data-ticket-quick-action='recipient' data-checkout-id='\"+esc(row.checkoutId||\"\")+\"'>Change Email</button><button type='button' class='secondary' data-ticket-quick-action='type' data-checkout-id='\"+esc(row.checkoutId||\"\")+\"'>Transfer / Change Ticket</button><button type='button' class='secondary' data-ticket-quick-action='cancel' data-checkout-id='\"+esc(row.checkoutId||\"\")+\"'>Cancel Tickets</button>\"),dialog&&typeof dialog.showModal==\"function\"&&dialog.showModal()}function closeTicketActionDialog(){const d=$2(\"ticketActionDialog\");d?.open&&d.close()}function ticketActionRow(checkoutId){return(state.ticketCheckouts?.checkouts||[]).find(item=>String(item.checkoutId||\"\")===String(checkoutId||\"\"))}function actionReasonOptions(action){return\"<label>Reason<select id='ticketActionReason'>\"+(action===\"recipient\"?[\"Wrong email entered\",\"Typo correction\",\"Customer requested change\",\"Email bounced\",\"Test order\",\"Other\"]:action===\"type\"?[\"Customer requested change\",\"Customer illness\",\"Cannot attend\",\"Upgrade\",\"Downgrade\",\"Admin correction\",\"Other\"]:[\"Customer requested cancellation\",\"Duplicate order\",\"Admin correction\",\"Other\"]).map(v=>\"<option>\"+esc(v)+\"</option>\").join(\"\")+\"</select></label><label id='ticketActionOtherWrap' hidden>Notes<input id='ticketActionOther' placeholder='Optional note'></label>\"}function openTicketAction(action,checkoutId){const d=$2(\"ticketActionDialog\"),title=$2(\"ticketActionTitle\"),body=$2(\"ticketActionBody\"),row=ticketActionRow(checkoutId);if(!d||!body||!row)return;const labels={recipient:\"Change Email\",type:\"Transfer / Change Ticket\",cancel:\"Cancel Tickets\",carer:\"Issue Carer Ticket\"};title.textContent=labels[action]||\"Edit Ticket Order\";let fields=\"\";if(action===\"recipient\"&&(fields=\"<div class='orbit-current-value'><span>Current email</span><strong>\"+esc(row.customerEmail||\"\\u2014\")+\"</strong></div><label>New email<input id='ticketActionEmail' type='email' required></label>\"+actionReasonOptions(action)+\"<label class='orbit-inline-check'><input id='ticketActionResend' type='checkbox' checked> Resend tickets immediately</label>\"),action===\"type\"){const tickets=(row.issuedTickets||[]).filter(t=>!t.isCarer&&!/add[ -]?on|mystery box|merch/i.test(String(t.ticketName||\"\"))),events=(state.eventbrite?.events||[]).filter(e=>String(e.status||\"\").toLowerCase()!==\"completed\");fields=\"<label>Ticket to change<select id='ticketActionTicketId' required><option value=''>Choose a ticket</option>\"+tickets.map((t,i)=>\"<option value='\"+esc(t.ticketId||\"\")+\"'>\"+esc((t.ticketName||\"Admission Ticket\")+\" #\"+(i+1))+\"</option>\").join(\"\")+\"</select></label><label>Event<select id='ticketActionEvent'><option value='\"+esc(row.eventbriteEventId||\"\")+\"'>Keep current event \\xB7 \"+esc(row.eventName||\"Orbit event\")+\"</option>\"+events.filter(e=>String(e.eventbriteEventId)!==String(row.eventbriteEventId)).map(e=>\"<option value='\"+esc(e.eventbriteEventId||\"\")+\"'>Transfer to \\xB7 \"+esc(e.name||\"Orbit event\")+\"</option>\").join(\"\")+\"</select></label><label>Change to <small>(optional when transferring)</small><select id='ticketActionType'><option value=''>Keep existing ticket type</option></select></label>\"+actionReasonOptions(action)+\"<label>Custom email message <small>(optional)</small><textarea id='ticketActionCustomMessage' rows='4' placeholder='Add a personal note for the customer'></textarea></label><label class='orbit-inline-check'><input id='ticketActionResend' type='checkbox' checked> Email updated ticket immediately</label>\"}action===\"carer\"&&(fields=\"<div class='orbit-ticket-carer-confirm'><strong>Send a Carer Ticket to the original purchaser</strong><p>Customer: \"+esc(row.customerName||\"Customer\")+\"<br>Email: \"+esc(row.customerEmail||\"\\u2014\")+\"<br>Event: \"+esc(row.eventName||\"Orbit event\")+\"</p></div><label>Custom email message <small>(optional)</small><textarea id='ticketActionCustomMessage' rows='4' placeholder='On arrival, please ask for Mark or Sabina at the entrance if you need any assistance.'></textarea></label>\"),action===\"cancel\"&&(fields=actionReasonOptions(action)),body.innerHTML=\"<form id='ticketActionForm' class='orbit-ticket-action-form'><input type='hidden' id='ticketActionCheckoutId' value='\"+esc(checkoutId)+\"'><input type='hidden' id='ticketActionKind' value='\"+esc(action)+\"'>\"+fields+\"<div class='orbit-action-row'><button id='submitTicketActionButton' type='submit'>\"+(action===\"carer\"?\"Issue & Send Ticket\":action===\"type\"?\"Apply Ticket Change\":\"Save Changes\")+\"</button></div><div id='ticketActionResult' class='orbit-result' hidden></div></form>\";const reason=$2(\"ticketActionReason\");reason?.addEventListener(\"change\",()=>{$2(\"ticketActionOtherWrap\").hidden=reason.value!==\"Other\"});const eventSelect=$2(\"ticketActionEvent\"),typeSelect=$2(\"ticketActionType\");function populateTypes(){if(!typeSelect)return;const eventId=eventSelect?.value||row.eventbriteEventId,classes=((state.eventbrite?.events||[]).find(e=>String(e.eventbriteEventId)===String(eventId))?.ticketClasses||[]).filter(tc=>!tc.hidden&&!/mystery box|add[ -]?on|collector box/i.test(String(tc.name||\"\")));typeSelect.innerHTML=\"<option value=''>Keep existing ticket type</option>\"+classes.map(tc=>\"<option value='\"+esc(tc.name||\"Ticket\")+\"' data-class-id='\"+esc(tc.id||\"\")+\"'>\"+esc(tc.name||\"Ticket\")+\"</option>\").join(\"\")}eventSelect?.addEventListener(\"change\",populateTypes),populateTypes(),body.querySelector(\"form\").addEventListener(\"submit\",submitTicketAction),d.showModal()}async function submitTicketAction(event){event.preventDefault();const button2=$2(\"submitTicketActionButton\"),action=$2(\"ticketActionKind\").value,checkoutId=$2(\"ticketActionCheckoutId\").value,reasonSelect=$2(\"ticketActionReason\"),reason=action===\"carer\"?\"Carer Ticket issued to original purchaser\":(reasonSelect?.value||\"Admin correction\")+(reasonSelect?.value===\"Other\"&&$2(\"ticketActionOther\")?.value.trim()?\": \"+$2(\"ticketActionOther\").value.trim():\"\");setLoading(button2,!0);const resultBox=$2(\"ticketActionResult\");try{let result;if(action===\"carer\")try{result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/complimentary-ticket\",{method:\"POST\",body:JSON.stringify({reason,customMessage:$2(\"ticketActionCustomMessage\")?.value.trim()})})}catch(err){if(/already been issued/i.test(err.message||\"\")){if(!window.confirm(\"A Carer Ticket has already been issued for this order. Are you sure you want to issue another?\"))throw new Error(\"Additional Carer Ticket cancelled.\");result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/complimentary-ticket\",{method:\"POST\",body:JSON.stringify({reason:\"Additional Carer Ticket approved by Admin\",override:!0,customMessage:$2(\"ticketActionCustomMessage\")?.value.trim()})})}else throw err}else{const selectedType=$2(\"ticketActionType\")?.selectedOptions?.[0];result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/admin-action\",{method:\"POST\",body:JSON.stringify({action,email:$2(\"ticketActionEmail\")?.value.trim(),ticketId:$2(\"ticketActionTicketId\")?.value,ticketType:$2(\"ticketActionType\")?.value,targetEventId:$2(\"ticketActionEvent\")?.value,ticketClassId:selectedType?.dataset.classId||null,resend:$2(\"ticketActionResend\")?.checked!==!1,reason,customMessage:$2(\"ticketActionCustomMessage\")?.value.trim()})})}const message=result.message||result.ticket?.message||(action===\"carer\"?\"Carer Ticket issued successfully.\":\"Ticket order updated successfully.\");resultBox&&(resultBox.hidden=!1,resultBox.classList.remove(\"error\"),resultBox.textContent=message),setNotice2(message),await loadShopify(),setTimeout(()=>{closeTicketActionDialog(),$2(\"ticketDetailsDialog\")?.open&&openTicketDetails(checkoutId)},500)}catch(err){resultBox&&(resultBox.hidden=!1,resultBox.classList.add(\"error\"),resultBox.textContent=err.message||\"Action failed.\"),setNotice2(err.message||\"Action failed.\",!0)}finally{setLoading(button2,!1)}}function renderQueueSummary(summary){const rows=[[\"Total\",summary.total||0],[\"Ready for label\",summary.readyForLabel||0],[\"Needs delivery\",summary.needsDeliveryDetails||0],[\"Labels generated\",summary.labelGenerated||0],[\"Packed\",summary.packed||0],[\"Shipped\",summary.shipped||0],[\"Fulfilled\",summary.fulfilled||0]],target=$2(\"queueSummary\");target&&(target.innerHTML=rows.map(([label,value])=>\"<div><span>\"+esc(label)+\"</span><strong>\"+esc(value)+\"</strong></div>\").join(\"\"))}function table(headers,rows,empty){return rows.length?\"<table><thead><tr>\"+headers.map(h=>\"<th>\"+esc(h)+\"</th>\").join(\"\")+\"</tr></thead><tbody>\"+rows.join(\"\")+\"</tbody></table>\":\"<p class='orbit-muted'>\"+esc(empty||\"No records yet.\")+\"</p>\"}function compactVenue(event){return event.venueName||event.venue&&event.venue.name||\"Venue pending\"}function eventStartValue(event){return event.start&&(event.start.local||event.start.utc)||null}function formatEventShortDate(value){if(!value)return\"Date TBC\";const date=new Date(value);return Number.isNaN(date.getTime())?value:date.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\"})}function eventStatusClass(event){const status=String(event.status||\"\").toLowerCase();return status===\"live\"||status===\"started\"?\"live\":status===\"draft\"?\"draft\":\"other\"}function publicSalesPresentation(value){const label=String(value||\"On Sale\").trim()||\"On Sale\",key=label.toLowerCase().replace(/[^a-z0-9]+/g,\"-\").replace(/^-+|-+$/g,\"\")||\"on-sale\";return{label,key,icon:{\"on-sale\":\"\\u2705\",\"selling-fast\":\"\\u{1F525}\",\"running-low\":\"\\u26A0\\uFE0F\",\"nearly-sold-out\":\"\\u23F3\",\"sold-out\":\"\\u274C\"}[key]||\"\\u{1F3F7}\\uFE0F\"}}function eventHasPassed(event){const raw=event.end?.utc||event.end?.local||event.endAt||event.end_at||eventStartValue(event),time=raw?new Date(raw).getTime():NaN;return Number.isFinite(time)&&time<Date.now()}function renderEventbriteCentre(data){const status=data.status||{},allEvents=(Array.isArray(data.events)?data.events:[]).filter(e=>String(e.status||\"\").toLowerCase()!==\"draft\"),events=allEvents.filter(e=>!e.archived&&!eventHasPassed(e)),target=$2(\"eventbriteEventsTable\"),statusTarget=$2(\"eventbriteStatus\"),connected=!!status.connected,connectButton=$2(\"connectEventbriteButton\");if(connectButton&&(connectButton.hidden=connected,connectButton.disabled=connected),statusTarget&&(statusTarget.innerHTML=\"<div class='orbit-communications-status-card \"+(connected?\"configured\":\"warning\")+\"'><span>Eventbrite</span><strong>\"+(connected?\"Connected\":\"Needs connection\")+\"</strong><small>\"+(connected?\"Events and ticket data available\":\"Connect in System\")+\"</small></div><div class='orbit-communications-status-card'><span>Upcoming events</span><strong>\"+events.length+\"</strong><small>Drafts and completed shows excluded</small></div><div class='orbit-communications-status-card'><span>Last event sync</span><strong>\"+esc(prettyDate(status.lastSyncAt))+\"</strong><small>\"+esc(status.lastSyncCount||0)+\" checked</small></div>\"),!target)return;const upcomingMarkup=events.length?\"<div class='orbit-events-ops-grid'>\"+events.map(function(event){const sold=Number(event.eventbriteSold??event.ticketsSold??0),orbitSold=Number(event.orbitSold||0),claims=Number(event.memberClaimCount||0),doorAdmissions=Number(event.doorAdmissions||0),carers=Number(event.carerAdmissions||0),expected=sold+orbitSold+claims+doorAdmissions+carers,synced=Number(event.preparedAdmissions??event.totalSynced??event.scannerSynced??event.eventbriteAttendeeCount??expected),unsynced=Math.max(0,expected-synced),cap=Number(event.capacity||event.ticketCapacity||0),pct=cap?Math.min(100,Math.round(sold/cap*100)):0,image=event.logoUrl?\"<img src='\"+esc(event.logoUrl)+\"' alt='' loading='lazy'>\":\"<div class='orbit-event-placeholder'>Orbit Card Show</div>\",visibleTag=event.publicTagEnabled&&event.publicTag?event.publicTag:\"On Sale\",salesPresentation=publicSalesPresentation(visibleTag),tag=\"<span class='orbit-public-sales-tag status-\"+esc(salesPresentation.key)+\"' data-event-tag-preview='\"+esc(event.eventbriteEventId)+\"'><i aria-hidden='true'>\"+esc(salesPresentation.icon)+\"</i>\"+esc(salesPresentation.label)+\"</span>\";return\"<article class='orbit-event-ops-card'><div class='orbit-event-ops-art'>\"+image+tag+\"</div><div class='orbit-event-ops-body'><div class='orbit-event-ops-heading'><div><h3>\"+esc(event.name||\"Orbit event\")+\"</h3><p>\"+esc(formatEventShortDate(eventStartValue(event)))+\" \\xB7 \"+esc(compactVenue(event))+\"</p></div><span class='orbit-event-status-pill \"+eventStatusClass(event)+\"'>\"+esc(event.statusLabel||event.status||\"Scheduled\")+\"</span></div><div class='orbit-event-ops-metrics'><div><span>Eventbrite sold</span><strong>\"+sold+\"</strong></div><div><span>Orbit sold</span><strong>\"+orbitSold+\"</strong></div><div><span>Member claims</span><strong>\"+claims+\"</strong></div><div><span>Door admissions</span><strong>\"+doorAdmissions+\"</strong></div><div><span>Add-ons sold</span><strong>\"+Number(event.addOnsExcluded||event.addOnsSold||0)+\"</strong></div><div><span>Total admissions</span><strong>\"+(synced+unsynced)+\"</strong></div><div class='\"+(unsynced?\"warning\":\"good\")+\"'><span>Scanner loaded</span><strong>\"+synced+\" / \"+(synced+unsynced)+\"</strong></div></div>\"+(cap?\"<div class='orbit-event-progress'><span style='width:\"+pct+\"%'></span></div><small>\"+sold+\" of \"+cap+\" sold \\xB7 \"+Math.max(0,cap-sold)+\" remaining</small>\":\"\")+\"<div class='orbit-event-sync-line'><div><span class='orbit-scanner-state-dot \"+(unsynced?\"warning\":\"ready\")+\"'></span><strong>\"+(unsynced?\"Sync required\":\"Scanner ready\")+\"</strong><small>\"+synced+\" of \"+(synced+unsynced)+\" admissions loaded</small></div><span>Last sync \"+esc(prettyShortDate(event.lastSyncedAt))+\"</span></div><div class='orbit-event-card-actions'><button type='button' class='orbit-prepare-event-button' data-prepare-event='\"+esc(event.eventbriteEventId)+\"'>Prepare This Event</button><label class='orbit-event-tag-editor'><span>Public Sales Status</span><select data-event-tag-select='\"+esc(event.eventbriteEventId)+\"'><option value=''>On Sale</option>\"+[\"Selling Fast\",\"Running Low\",\"Nearly Sold Out\",\"Sold Out\"].map(x=>\"<option \"+(event.publicTag===x?\"selected\":\"\")+\">\"+x+\"</option>\").join(\"\")+\"</select><small data-event-tag-state='\"+esc(event.eventbriteEventId)+\"'>\"+(event.publicTagEnabled&&event.publicTag?\"Published: \"+esc(event.publicTag):\"Published: On Sale\")+\"</small></label></div></div></article>\"}).join(\"\")+\"</div>\":\"<div class='orbit-empty-state'><strong>No upcoming events</strong><span>Future live events will appear here automatically after Eventbrite sync.</span></div>\";target.innerHTML=upcomingMarkup}[\"eventClashDateV485\",\"eventClashEndDateV618\",\"eventClashTownV485\",\"eventClashPostcodeV485\",\"eventClashRadiusV485\"].forEach(id=>$2(id)?.addEventListener(\"input\",()=>{invalidateEventCheckV618();const result=$2(\"eventClashResultV485\");result&&(result.textContent=\"Details changed. Check our Directory again before booking.\")})),$2(\"eventPlanBeginV618\")?.addEventListener(\"click\",()=>{try{beginEventBookingV618()}catch(error){setNotice2(error.message,!0)}});function eventPlanningIsoDateV485(value){if(!value)return\"\";const raw=String(value);if(/^\\d{4}-\\d{2}-\\d{2}/.test(raw))return raw.slice(0,10);const d=new Date(value);return Number.isNaN(d.getTime())?\"\":d.toISOString().slice(0,10)}function eventPlanningOrbitRowsV485(){return(state.eventbrite?.events||[]).filter(event=>String(event.status||\"\").toLowerCase()!==\"draft\").map(event=>({id:\"orbit:\"+(event.eventbriteEventId||event.id||[event.name,eventPlanningIsoDateV485(eventStartValue(event))].join(\"|\")),title:event.name||\"Orbit Card Show\",date:eventPlanningIsoDateV485(eventStartValue(event)),endDate:eventPlanningIsoDateV485(event.end?.local||event.end?.utc||event.endAt||event.end_at||eventStartValue(event)),location:compactVenue(event)||\"\",type:\"orbit\",source:\"Eventbrite\",orbit:!0})).filter(row=>row.date)}function eventPlanningCalendarKeyV71613(row){const norm=value=>String(value||\"\").normalize(\"NFKC\").toLowerCase().replace(/[^a-z0-9]+/g,\" \").trim();return[String(row?.date||\"\").slice(0,10),norm(row?.title),norm(row?.postcode||row?.venue||row?.location)].join(\"|\")}function eventPlanningAllRowsV485(){const seen=new Set,rows=[],append=(row,orbit)=>{if(!row?.date)return;const key=eventPlanningCalendarKeyV71613(row);seen.has(key)||(seen.add(key),rows.push({...row,orbit}))};return eventPlanningOrbitRowsV485().forEach(row=>append(row,!0)),(state.eventPlanningDirectoryV618||[]).forEach(row=>append(row,!1)),(state.eventPlanningEntriesV485||[]).forEach(row=>append(row,!1)),rows}function eventPlanningMonthKeyV485(date){return date.getFullYear()+\"-\"+String(date.getMonth()+1).padStart(2,\"0\")}function eventPlanningDisplayDateV485(value){if(!value)return\"Date TBC\";const d=new Date(value+\"T12:00:00\");return Number.isNaN(d.getTime())?value:d.toLocaleDateString(\"en-GB\",{weekday:\"short\",day:\"numeric\",month:\"short\",year:\"numeric\"})}function eventPlanningCalendarEndDateV704(row){const start=String(row?.date||\"\").slice(0,10),rawEnd=String(row?.endDate||start).slice(0,10);if(!start||![\"directory\",\"orbit\"].includes(row?.type))return rawEnd||start;const span=(Date.parse(rawEnd)-Date.parse(start))/864e5;return Number.isFinite(span)&&span>=0&&span<=2?rawEnd:start}function eventPlanningRowsOnDateV485(date,rows=eventPlanningAllRowsV485()){return rows.filter(row=>{const start=row.date,end=eventPlanningCalendarEndDateV704(row)||row.date;return start&&date>=start&&date<=end})}function renderEventPlanningSavedV485(){const target=$2(\"eventPlanSavedListV485\");if(!target)return;const rows=[...state.eventPlanningEntriesV485||[]].sort((a,b)=>String(a.date||\"\").localeCompare(String(b.date||\"\")));target.innerHTML=rows.length?rows.map(row=>\"<div class='orbit-event-plan-saved-row-v485'><div><strong>\"+esc(row.title||\"Planning event\")+\"</strong><small>\"+esc(eventPlanningDisplayDateV485(row.date))+(row.endDate&&row.endDate!==row.date?\" \\u2192 \"+esc(eventPlanningDisplayDateV485(row.endDate)):\"\")+\" \\xB7 \"+esc(row.location||\"No location\")+(row.postcode?\" \\xB7 \"+esc(row.postcode):\"\")+\" \\xB7 \"+esc(row.type===\"show_booking\"?\"Show booking\":row.type===\"competitor\"?\"Other card show\":row.type===\"venue_hold\"?\"Venue hold\":\"Planning\")+\"</small>\"+(row.organiser?\"<small>Organiser: \"+esc(row.organiser)+\"</small>\":\"\")+(row.notes?\"<p class='orbit-calendar-notes-v618'>\"+esc(row.notes)+\"</p>\":\"\")+\"</div><div class='orbit-action-row compact'>\"+(row.sourceUrl?\"<a class='orbit-admin-link-button secondary' href='\"+esc(safeLinkV618(row.sourceUrl))+\"' target='_blank' rel='noopener noreferrer'>Source \\u2197</a>\":\"\")+\"<button type='button' class='secondary' data-event-plan-archive-v485='\"+esc(row.id)+\"'>Remove</button></div></div>\").join(\"\"):\"<div class='orbit-empty-state'><strong>No saved planning dates</strong><span>Check a date above, then confirm and save your proposed booking.</span></div>\"}function renderEventCalendarV485(){const target=$2(\"eventCalendarGridV485\");if(!target)return;if(!document.getElementById(\"orbit-calendar-colour-v71613\")){const style=document.createElement(\"style\");style.id=\"orbit-calendar-colour-v71613\",style.textContent=\"#eventCalendarGridV485 .orbit-event-calendar-chip-v485.orbit{background:#155d36!important;color:#fff!important;border:1px solid #249457!important;font-weight:700}\",document.head.appendChild(style)}const month=state.eventPlanningMonthV485 instanceof Date?state.eventPlanningMonthV485:new Date,first=new Date(month.getFullYear(),month.getMonth(),1),start=new Date(first),mondayOffset=(first.getDay()+6)%7;start.setDate(first.getDate()-mondayOffset),text(\"eventCalendarMonthV485\",first.toLocaleDateString(\"en-GB\",{month:\"long\",year:\"numeric\"}));const monthPicker=$2(\"eventCalendarMonthPickerV487\");monthPicker&&(monthPicker.value=first.getFullYear()+\"-\"+String(first.getMonth()+1).padStart(2,\"0\"));const rows=eventPlanningAllRowsV485(),monthKey=eventPlanningMonthKeyV485(first),monthRows=rows.filter(row=>String(row.date||\"\").slice(0,7)===monthKey||String(eventPlanningCalendarEndDateV704(row)||\"\").slice(0,7)===monthKey);text(\"eventCalendarSummaryV485\",monthRows.filter(x=>x.orbit).length+\" Orbit show\"+(monthRows.filter(x=>x.orbit).length===1?\"\":\"s\")+\" \\xB7 \"+monthRows.filter(x=>!x.orbit).length+\" Directory / saved planning date\"+(monthRows.filter(x=>!x.orbit).length===1?\"\":\"s\"));const weekdays=[\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\",\"Sun\"].map(day=>\"<div class='orbit-event-calendar-weekday-v485'>\"+day+\"</div>\").join(\"\"),today=new Date().toISOString().slice(0,10),cells=[];for(let i=0;i<42;i++){const d=new Date(start);d.setDate(start.getDate()+i);const iso=d.getFullYear()+\"-\"+String(d.getMonth()+1).padStart(2,\"0\")+\"-\"+String(d.getDate()).padStart(2,\"0\"),events=eventPlanningRowsOnDateV485(iso,rows);cells.push(\"<button type='button' class='orbit-event-calendar-day-v485 \"+(d.getMonth()===first.getMonth()?\"\":\"outside\")+\" \"+(iso===today?\"today\":\"\")+\"' data-event-calendar-date-v485='\"+iso+\"'><span class='orbit-event-calendar-day-number-v485'>\"+d.getDate()+\"</span>\"+events.slice(0,5).map(row=>\"<span class='orbit-event-calendar-chip-v485 \"+esc(row.orbit?\"orbit\":row.type||\"planning\")+\"' title='\"+esc(row.title||\"\")+\"'>\"+esc(row.title||\"Event\")+\"</span>\").join(\"\")+(events.length>5?\"<small>+\"+(events.length-5)+\" more</small>\":\"\")+\"</button>\")}target.innerHTML=weekdays+cells.join(\"\"),state.eventPlanningSelectedDateV618&&renderEventCalendarDayV618(state.eventPlanningSelectedDateV618),renderEventPlanningSavedV485()}function renderEventCalendarDayV618(date){const grid=$2(\"eventCalendarGridV485\");if(!grid)return;let target=$2(\"eventCalendarDayDetailsV618\");target||(target=document.createElement(\"section\"),target.id=\"eventCalendarDayDetailsV618\",target.className=\"orbit-calendar-day-details-v618\",target.setAttribute(\"aria-live\",\"polite\"),grid.insertAdjacentElement(\"afterend\",target)),state.eventPlanningSelectedDateV618=date;const rows=eventPlanningRowsOnDateV485(date);target.innerHTML=\"<h4>\"+esc(eventPlanningDisplayDateV485(date))+\"</h4>\"+(rows.length?rows.map(row=>\"<div><strong>\"+esc(row.title||\"Event\")+\"</strong><p>\"+esc(row.location||row.venue||\"Location not stated\")+\" \\xB7 \"+esc(row.orbit?\"Orbit show\":row.source||\"Saved booking\")+(row.type===\"directory\"?row.verified?\" \\xB7 Approved\":\" \\xB7 Not yet approved\":\"\")+\"</p>\"+(row.sourceUrl?\"<a href='\"+esc(safeLinkV618(row.sourceUrl))+\"' target='_blank' rel='noopener noreferrer'>View source \\u2197</a>\":\"\")+\"</div>\").join(\"\"):\"<p>No shows recorded on this date. Use Check our Directory before booking.</p>\")}let eventPlanningReadV618=0,eventClashReadV618=0,eventClashCheckedV618=null;function eventClashInputV618(){return{date:$2(\"eventClashDateV485\")?.value||\"\",endDate:$2(\"eventClashEndDateV618\")?.value||$2(\"eventClashDateV485\")?.value||\"\",location:String($2(\"eventClashTownV485\")?.value||\"\").trim(),postcode:String($2(\"eventClashPostcodeV485\")?.value||\"\").trim().toUpperCase().replace(/\\s+/g,\"\"),radiusKm:Number($2(\"eventClashRadiusV485\")?.value||50)}}function invalidateEventCheckV618(){eventClashReadV618++,eventClashCheckedV618=null,$2(\"eventPlanBeginV618\")&&($2(\"eventPlanBeginV618\").hidden=!0),$2(\"eventPlanBookingV618\")&&($2(\"eventPlanBookingV618\").hidden=!0)}async function loadEventPlanningV485(button2=null){const read=++eventPlanningReadV618,month=eventPlanningMonthKeyV485(state.eventPlanningMonthV485 instanceof Date?state.eventPlanningMonthV485:new Date);button2&&setLoading(button2,!0);try{const entriesResult=await api(\"/api/admin/event-planning/entries?month=\"+encodeURIComponent(month),{cacheMs:0,timeoutMs:15e3});if(read!==eventPlanningReadV618)return;if(entriesResult?.success===!1)throw new Error(\"The Calendar could not load.\");return state.eventPlanningEntriesV485=entriesResult.entries||[],state.eventPlanningDirectoryV618=entriesResult.directoryEvents||[],state.eventPlanningLoadedV485=!0,renderEventCalendarV485(),entriesResult.directoryComplete===!1&&text(\"eventCalendarSummaryV485\",\"This month has more Directory records than can be shown. Narrow your date check before booking.\"),state.eventbrite||loadEventbrite().then(()=>{read===eventPlanningReadV618&&renderEventCalendarV485()}).catch(()=>{read===eventPlanningReadV618&&text(\"eventCalendarSummaryV485\",\"Directory and saved bookings loaded. Live Orbit event details are temporarily unavailable.\")}),entriesResult}catch(error){throw read===eventPlanningReadV618&&text(\"eventCalendarSummaryV485\",\"Calendar could not load. Select the month again to retry.\"),error}finally{button2&&setLoading(button2,!1)}}function beginEventBookingV618(){const check=eventClashCheckedV618;if(!check||JSON.stringify(eventClashInputV618())!==check.fingerprint)throw new Error(\"Check this date and location again before booking.\");const form=$2(\"eventPlanBookingV618\");if(form){for(const[id,value]of Object.entries({eventPlanDateV485:check.data.target.date,eventPlanEndDateV485:check.data.target.endDate,eventPlanLocationV485:check.data.target.location,eventPlanPostcodeV485:check.data.target.postcode}))$2(id)&&($2(id).value=value);$2(\"eventPlanConflictLabelV618\")&&($2(\"eventPlanConflictLabelV618\").hidden=!(check.data.clashes||[]).length),$2(\"eventPlanConflictsV618\")&&($2(\"eventPlanConflictsV618\").checked=!1),form.hidden=!1,$2(\"eventPlanTitleV485\")?.focus()}}async function saveEventPlanningEntryV485(button2){const check=eventClashCheckedV618;if(!check||JSON.stringify(eventClashInputV618())!==check.fingerprint)throw new Error(\"Check the current dates and location before saving.\");const payload={...check.data.target,title:String($2(\"eventPlanTitleV485\")?.value||\"\").trim(),type:\"show_booking\",checkId:check.data.checkId,conflictsAcknowledged:$2(\"eventPlanConflictsV618\")?.checked===!0,organiser:String($2(\"eventPlanOrganiserV485\")?.value||\"\").trim(),sourceUrl:String($2(\"eventPlanUrlV485\")?.value||\"\").trim(),notes:String($2(\"eventPlanNotesV485\")?.value||\"\").trim()};if(!payload.title)throw new Error(\"Add the show name.\");if((check.data.clashes||[]).length&&!payload.conflictsAcknowledged)throw new Error(\"Confirm that you have reviewed the listed shows.\");setLoading(button2,!0);try{const result=await api(\"/api/admin/event-planning/entries\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0});if(!result.entry?.id)throw new Error(\"Orbit did not return the saved booking.\");if(state.eventPlanningMonthV485=new Date(result.entry.date+\"T12:00:00\"),await loadEventPlanningV485(),!(state.eventPlanningEntriesV485||[]).some(row=>row.id===result.entry.id))throw new Error(\"Booking saved, but Calendar read-back is unavailable. Retry to check the same booking.\");invalidateEventCheckV618(),$2(\"eventPlanTitleV485\")&&($2(\"eventPlanTitleV485\").value=\"\"),setNotice2(\"Saved to Calendar: \"+result.entry.title+\". No public event or tickets were created.\")}finally{setLoading(button2,!1)}}async function archiveEventPlanningEntryV485(id,button2){setLoading(button2,!0);try{await api(\"/api/admin/event-planning/entries/\"+encodeURIComponent(id)+\"/archive\",{method:\"POST\",body:\"{}\",cacheMs:0}),await loadEventPlanningV485(),setNotice2(\"Planning date removed from Calendar.\")}finally{setLoading(button2,!1)}}function renderEventClashResultsV485(data){const target=$2(\"eventClashResultV485\");if(!target)return;const rows=data.clashes||[],warning=data.complete===!1?\"Results are incomplete. Narrow the date range and check again.\":data.geoWarning||\"\";target.innerHTML=\"<div class='orbit-notice \"+(rows.length||warning?\"warning\":\"success\")+\"'><strong>\"+rows.length+\" show / booking\"+(rows.length===1?\"\":\"s\")+\" on these dates \\xB7 \"+Number(data.nearbyCount||0)+\" within \"+Number(data.target?.radiusKm||50)+\" km</strong><p>Checked our CardShowIndex records and saved Orbit bookings. This is not a guarantee that no other show exists.</p>\"+(warning?\"<p>\"+esc(warning)+\"</p>\":\"\")+\"</div>\"+rows.map(row=>\"<div class='orbit-event-clash-row-v485 \"+(row.nearby?\"is-clash\":\"\")+\"'><div><strong>\"+esc(row.title||\"Card show\")+\"</strong><small>\"+esc(eventPlanningDisplayDateV485(row.date))+(row.endDate!==row.date?\" to \"+esc(eventPlanningDisplayDateV485(row.endDate)):\"\")+\" \\xB7 \"+esc(row.venue||row.location||\"Location not stated\")+\" \\xB7 \"+(row.distanceKm==null?\"distance unavailable\":Number(row.distanceKm).toFixed(1)+\" km away\")+\"</small><small>\"+esc(row.source||\"CardShowIndex\")+\" \\xB7 \"+esc(row.verified?\"Approved / saved\":\"Not yet approved: \"+(row.status||\"needs checking\"))+\"</small></div>\"+(row.sourceUrl?\"<a class='orbit-admin-link-button secondary' href='\"+esc(safeLinkV618(row.sourceUrl))+\"' target='_blank' rel='noopener noreferrer'>Source \\u2197</a>\":\"\")+\"</div>\").join(\"\")}function safeLinkV618(value){try{const url=new URL(value,location.href);return[\"http:\",\"https:\"].includes(url.protocol)?url.href:\"#\"}catch{return\"#\"}}async function checkEventClashesV485(button2){const payload=eventClashInputV618();if(!payload.date||!payload.location||!payload.postcode)throw new Error(\"Enter the proposed date, town or venue, and postcode.\");invalidateEventCheckV618();const read=eventClashReadV618,fingerprint=JSON.stringify(payload);setLoading(button2,!0);const result=$2(\"eventClashResultV485\");result&&(result.innerHTML=\"<p role='status'>Checking our Directory and saved bookings\\u2026</p>\");try{const data=await api(\"/api/admin/event-planning/clash-check\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:25e3});if(read!==eventClashReadV618||JSON.stringify(eventClashInputV618())!==fingerprint)return;if(data.success===!1||!data.checkId)throw new Error(\"The date check did not finish. Please retry.\");return renderEventClashResultsV485(data),data.complete!==!1&&(eventClashCheckedV618={data,fingerprint},$2(\"eventPlanBeginV618\")&&($2(\"eventPlanBeginV618\").hidden=!1)),data}catch(error){throw read===eventClashReadV618&&result&&(result.innerHTML=\"<p role='alert'>Could not check these dates: \"+esc(error.message||error)+\". Use Check our Directory to retry.</p>\"),error}finally{setLoading(button2,!1)}}function renderCommunicationsCentre(data){const statusTarget=$2(\"communicationsStatus\"),templatesTarget=$2(\"communicationsTemplates\");if(!statusTarget||!templatesTarget)return;const status=data.status||{},safety=data.safety||{},configured=!!status.configured;statusTarget.innerHTML=\"\",statusTarget.hidden=!0;const banner=$2(\"communicationsTemplateSafetyBanner\");banner&&(banner.innerHTML=\"<strong>Protected Customer Communications \\xB7 approved designs live</strong><span>The eight designs approved in Review are now connected through code-authoritative production renderers. Preview Current shows the live renderer. Approved Design shows the same approved production design with representative data. Latest Historical Send preserves what was actually sent at that time. Editable template storage, direct publishing and template test-send remain disabled.</span>\");const workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599()),heading=$2(\"communicationsTemplatesHeadingV643\"),intro=$2(\"communicationsTemplatesIntroV643\"),vendorSection=$2(\"vendorClubEmailTemplatesSectionV643\");heading&&(heading.textContent=workspace===\"card-shows\"?\"Card Shows Email Templates\":\"Members Club Email Templates\"),intro&&(intro.textContent=workspace===\"card-shows\"?\"Ticketing, vendor-event and Vendor Club emails using Orbit Card Show branding.\":\"Membership, billing, fulfilment, rewards and member-support emails using Orbit Collectors Club branding.\"),vendorSection&&(vendorSection.hidden=workspace!==\"card-shows\");const templates=(Array.isArray(data.templates)?data.templates:[]).filter(t=>{const category=String(t.category||\"Other\"),cardShow=[\"Tickets\",\"Vendor \\xB7 Protected\"].includes(category);return workspace===\"card-shows\"?cardShow:workspace===\"members-club\"?!cardShow:!0}),groups=[];templates.forEach(t=>{const category=t.category||\"Other\";let g=groups.find(x=>x.category===category);g||(g={category,items:[]},groups.push(g)),g.items.push(t)}),templatesTarget.innerHTML=groups.map(group=>{const cards=group.items.map(t=>{const live=/^live/.test(String(t.status||\"\")),planned=String(t.status||\"\")===\"planned\",internal=String(t.status||\"\")===\"internal\",latest=t.latestAvailable?\"<span class='orbit-comms-source-badge success'>Exact live send captured</span>\":live?\"<span class='orbit-comms-source-badge'>Production renderer available</span>\":internal?\"<span class='orbit-comms-source-badge'>Internal sender available</span>\":\"<span class='orbit-comms-source-badge muted'>No live sender</span>\",currentAction=planned?\"\":\"<button type='button' class='secondary' data-template-preview='\"+esc(t.key)+\"' data-template-preview-mode='current'>Preview current email</button>\",proposedAction=t.designCandidateAvailable?\"<button type='button' class='secondary orbit-comms-candidate-button' data-template-preview='\"+esc(t.key)+\"' data-template-preview-mode='candidate'>Preview approved live design</button>\":\"\",historicalAction=t.latestAvailable?\"<button type='button' class='secondary' data-template-preview='\"+esc(t.key)+\"' data-template-preview-mode='latest'>Latest historical send</button>\":\"\",action=currentAction+proposedAction+historicalAction+(planned&&!t.designCandidateAvailable?\"<button type='button' class='secondary' disabled>No live sender yet</button>\":\"\");return\"<article class='orbit-template-card orbit-template-editor orbit-comms-template-v504'><div class='orbit-comms-template-topline'><span>\"+esc(t.status||\"live\")+\"</span>\"+latest+\"</div><strong>\"+esc(t.name||t.key)+\"</strong><p>\"+esc(t.description||\"\")+\"</p><small class='orbit-muted'><b>Category:</b> \"+esc(t.category||\"Other\")+\"</small><small class='orbit-muted'><b>Production source:</b> \"+esc(t.productionSource||\"No sender exists yet\")+\"</small>\"+(t.from?\"<small class='orbit-muted'><b>From:</b> \"+esc(t.from)+\"</small>\":\"\")+(t.latestSubject?\"<small class='orbit-muted'><b>Last historical subject:</b> \"+esc(t.latestSubject)+\"</small>\":\"\")+(t.designCandidateAvailable?\"<small class='orbit-comms-candidate-note'><b>Approved design:</b> Live in production</small>\":\"\")+(t.attachment?\"<small class='orbit-muted'><b>Attachments:</b> \"+esc(t.attachment)+\"</small>\":\"\")+\"<div class='orbit-action-row'>\"+action+\"</div></article>\"}).join(\"\");return\"<section class='orbit-comms-category-v504'><div class='orbit-comms-category-heading-v504'><h3>\"+esc(group.category)+\"</h3><span>\"+group.items.length+\" email\"+(group.items.length===1?\"\":\"s\")+\"</span></div><div class='orbit-template-grid'>\"+cards+\"</div></section>\"}).join(\"\")||\"<p class='orbit-muted'>No production email senders were discovered.</p>\"}function renderTemplateEditor(template){const target=$2(\"communicationsTemplateEditor\");if(!target)return;if(!template){target.style.display=\"none\",target.innerHTML=\"\";return}target.style.display=\"block\";const editDialog=$2(\"communicationsEditDialog\");editDialog&&typeof editDialog.showModal==\"function\"&&!editDialog.open&&editDialog.showModal(),state.selectedTemplateKey=template.key,target.innerHTML=\"<p class='orbit-kicker'>Editing Template</p><h2>\"+esc(template.name||template.key)+\"</h2><p class='orbit-muted'>Variables: \"+esc((template.variables||[]).join(\", \"))+\"</p><div class='orbit-form-grid'><label>Name<input id='templateNameInput' value='\"+esc(template.name||\"\")+\"'></label><label>Status<select id='templateStatusInput'><option value='live'\"+(template.status===\"live\"?\" selected\":\"\")+\">live</option><option value='planned'\"+(template.status===\"planned\"?\" selected\":\"\")+\">planned</option><option value='disabled'\"+(template.status===\"disabled\"?\" selected\":\"\")+\">disabled</option></select></label></div><label>Trigger / conditions<textarea id='templateTriggerInput'>\"+esc(template.trigger||template.description||\"\")+\"</textarea></label><label>Subject<textarea id='templateSubjectInput'>\"+esc(template.subject||\"\")+\"</textarea></label><label>HTML<textarea id='templateHtmlInput' class='orbit-code-box' style='min-height:220px;'>\"+esc(template.html||\"\")+\"</textarea></label><label>Plain text<textarea id='templateTextInput'>\"+esc(template.text||\"\")+\"</textarea></label><div class='orbit-form-grid'><label>Test recipient<input id='templateTestToInput' placeholder='you@example.com'></label><label>Preview member name<input id='templatePreviewNameInput' value='Orbit Test Member'></label></div><div class='orbit-action-row'><button type='button' id='saveTemplateButton'>Save Template</button><button type='button' id='previewTemplateButton' class='secondary'>Preview</button><button type='button' id='testSendTemplateButton' class='secondary'>Send Test</button><button type='button' id='resetTemplateButton' class='danger'>Reset Default</button></div><div id='templatePreviewResult' class='orbit-action-result'>Template preview will appear here.</div>\"}function templatePayload(){return{name:$2(\"templateNameInput\")?.value||\"\",status:$2(\"templateStatusInput\")?.value||\"live\",trigger:$2(\"templateTriggerInput\")?.value||\"\",subject:$2(\"templateSubjectInput\")?.value||\"\",html:$2(\"templateHtmlInput\")?.value||\"\",text:$2(\"templateTextInput\")?.value||\"\"}}async function editTemplate(key,button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/communications/templates/\"+encodeURIComponent(key));renderTemplateEditor(data.template),setNotice2(\"Template loaded for editing.\")}finally{setLoading(button2,!1)}}async function saveTemplate(button2){if(!state.selectedTemplateKey)throw new Error(\"Select a template first.\");setLoading(button2,!0);try{const data=await api(\"/api/admin/communications/templates/\"+encodeURIComponent(state.selectedTemplateKey),{method:\"POST\",body:JSON.stringify(templatePayload())});$2(\"communicationsTemplateResult\").textContent=data.message||\"Template saved.\",await loadCommunications(),renderTemplateEditor(data.template),setNotice2(\"Template saved.\")}finally{setLoading(button2,!1)}}async function previewTemplate(button2){if(!state.selectedTemplateKey)throw new Error(\"Select a template first.\");setLoading(button2,!0);try{const previewMode=button2?.dataset?.templatePreviewMode||\"current\",preferLatest=previewMode===\"latest\",designCandidate=previewMode===\"candidate\",data=await api(\"/api/admin/communications/templates/\"+encodeURIComponent(state.selectedTemplateKey)+\"/preview\",{method:\"POST\",body:JSON.stringify({preferLatest,designCandidate,mode:previewMode}),cacheMs:0,timeoutMs:12e3});if(!data.available){setNotice2(data.message||\"No live sender is available for this item yet.\",!0);return}const dialog=$2(\"communicationsPreviewDialog\"),frame=$2(\"communicationsPreviewFrame\"),meta=$2(\"communicationsPreviewMeta\");if(frame&&(frame.srcdoc=data.html||\"<p>No HTML preview returned.</p>\"),meta){const sourceLabel=data.proposedDesign?data.source===\"approved_live_design\"?\"Approved design \\xB7 LIVE production renderer\":\"Proposed design \\xB7 preview only \\xB7 NOT LIVE\":data.exactLiveSend?\"Exact payload from a historical successful Resend send\":\"Live production design \\xB7 representative data \\xB7 no successful historical send yet\";meta.innerHTML=\"<div><span>Source</span><strong>\"+esc(sourceLabel)+\"</strong></div><div><span>Subject</span><strong>\"+esc(data.subject||\"\\u2014\")+\"</strong></div><div><span>From</span><strong>\"+esc(data.from||\"\\u2014\")+\"</strong></div><div><span>Reply-to</span><strong>\"+esc(data.replyTo||\"\\u2014\")+\"</strong></div>\"+(data.attachment?\"<div><span>Attachments</span><strong>\"+esc(data.attachment)+\"</strong></div>\":\"\")+(data.sentAt?\"<div><span>Captured send</span><strong>\"+esc(prettyShortDate(data.sentAt))+\"</strong></div>\":\"\")}dialog&&typeof dialog.showModal==\"function\"&&!dialog.open&&dialog.showModal(),setNotice2(data.proposedDesign?data.source===\"approved_live_design\"?\"Opened the approved live production design with representative preview data.\":\"Opened a proposed design preview. It is not connected to live sending.\":data.exactLiveSend?\"Opened exact HTML from the latest historical successful send.\":\"Opened the live production design with representative data because no successful historical send exists yet. Nothing was saved or sent.\")}finally{setLoading(button2,!1)}}async function testSendTemplate(button2){if(!state.selectedTemplateKey)throw new Error(\"Select a template first.\");const to=String($2(\"templateTestToInput\")?.value||\"\").trim();if(!to||!to.includes(\"@\"))throw new Error(\"Enter a test recipient email.\");setLoading(button2,!0);try{await api(\"/api/admin/communications/templates/\"+encodeURIComponent(state.selectedTemplateKey),{method:\"POST\",body:JSON.stringify(templatePayload())});const data=await api(\"/api/admin/communications/templates/\"+encodeURIComponent(state.selectedTemplateKey)+\"/test-send\",{method:\"POST\",body:JSON.stringify({to,variables:{memberName:$2(\"templatePreviewNameInput\")?.value||\"Orbit Test Member\",memberEmail:to,memberNumber:\"OCC000999\",trackingNumber:\"ORBIT-TEST-123\",trackingUrl:\"https://www.royalmail.com/track-your-item#/tracking-results/ORBIT-TEST-123\",message:\"Template test send\"}})});$2(\"communicationsTemplateResult\").textContent=data.message||\"Test email sent.\",await loadCommunications()}finally{setLoading(button2,!1)}}async function resetTemplate(button2){if(!state.selectedTemplateKey)throw new Error(\"Select a template first.\");if(window.confirm(\"Reset this email template to the Orbit default?\")){setLoading(button2,!0);try{const data=await api(\"/api/admin/communications/templates/\"+encodeURIComponent(state.selectedTemplateKey)+\"/reset\",{method:\"POST\",body:JSON.stringify({})});$2(\"communicationsTemplateResult\").textContent=data.message||\"Template reset.\",await loadCommunications(),renderTemplateEditor(data.template)}finally{setLoading(button2,!1)}}}function getMonthlyContentPayload(){return{monthKey:($2(\"monthlyContentMonthKey\")?.value||currentMonthKey()).trim(),headline:($2(\"monthlyContentHeadline\")?.value||\"\").trim(),currentDrawTitle:($2(\"monthlyContentCurrentDrawTitle\")?.value||\"\").trim(),currentDrawImageUrl:($2(\"monthlyContentCurrentDrawImageUrl\")?.value||\"\").trim(),currentDrawDate:($2(\"monthlyContentCurrentDrawDate\")?.value||\"\").trim(),currentDrawDescription:($2(\"monthlyContentCurrentDrawDescription\")?.value||\"\").trim(),nextMonthTitle:($2(\"monthlyContentNextMonthTitle\")?.value||\"\").trim(),nextMonthImageUrl:($2(\"monthlyContentNextMonthImageUrl\")?.value||\"\").trim(),nextMonthDrawDate:($2(\"monthlyContentNextMonthDrawDate\")?.value||\"\").trim(),nextMonthDescription:($2(\"monthlyContentNextMonthDescription\")?.value||\"\").trim(),goldenTicketTitle:($2(\"monthlyContentGoldenTicketTitle\")?.value||\"\").trim(),goldenTicketValue:($2(\"monthlyContentGoldenTicketValue\")?.value||\"\").trim(),goldenTicketImageUrl:($2(\"monthlyContentGoldenTicketImageUrl\")?.value||\"\").trim(),goldenTicketDescription:($2(\"monthlyContentGoldenTicketDescription\")?.value||\"\").trim()}}function fillMonthlyContentForm(content){const item=content||{},fields={monthlyContentMonthKey:item.monthKey,monthlyContentHeadline:item.headline,monthlyContentCurrentDrawTitle:item.currentDrawTitle,monthlyContentCurrentDrawImageUrl:item.currentDrawImageUrl,monthlyContentCurrentDrawDate:item.currentDrawDate,monthlyContentCurrentDrawDescription:item.currentDrawDescription,monthlyContentNextMonthTitle:item.nextMonthTitle,monthlyContentNextMonthImageUrl:item.nextMonthImageUrl,monthlyContentNextMonthDrawDate:item.nextMonthDrawDate,monthlyContentNextMonthDescription:item.nextMonthDescription,monthlyContentGoldenTicketTitle:item.goldenTicketTitle,monthlyContentGoldenTicketValue:item.goldenTicketValue,monthlyContentGoldenTicketImageUrl:item.goldenTicketImageUrl,monthlyContentGoldenTicketDescription:item.goldenTicketDescription};Object.keys(fields).forEach(id=>{$2(id)&&($2(id).value=fields[id]||\"\")})}function renderMonthlyContentPreview(){[[\"monthlyContentCurrentPreview\",\"Current draw\",$2(\"monthlyContentCurrentDrawImageUrl\")?.value],[\"monthlyContentNextPreview\",\"Next month\",$2(\"monthlyContentNextMonthImageUrl\")?.value],[\"monthlyContentGoldenPreview\",\"Golden Ticket\",$2(\"monthlyContentGoldenTicketImageUrl\")?.value]].forEach(function(entry){const target=$2(entry[0]);target&&(target.innerHTML=entry[2]?\"<img src='\"+esc(entry[2])+\"' alt='\"+esc(entry[1])+\" preview'>\":\"<div class='orbit-empty'><strong>\"+esc(entry[1])+\" image</strong><span>Add or select an image to preview it here.</span></div>\")})}async function loadMonthlyContent(button2){setLoading(button2,!0);const result=$2(\"monthlyContentResult\");result&&(result.textContent=\"Loading monthly content...\");try{const monthKey=($2(\"monthlyContentMonthKey\")?.value||currentMonthKey()).trim(),data=await api(\"/api/admin/monthly-content?monthKey=\"+encodeURIComponent(monthKey));return fillMonthlyContentForm(data.content||{}),renderMonthlyContentPreview(),result&&(result.textContent=\"Loaded monthly content for \"+(data.content&&data.content.monthKey||monthKey)+\".\"),data}catch(err){throw result&&(result.textContent=\"Monthly content failed: \"+(err.message||err)),err}finally{setLoading(button2,!1)}}async function saveMonthlyContent(button2){setLoading(button2,!0);const result=$2(\"monthlyContentResult\");result&&(result.textContent=\"Saving monthly content...\");try{const data=await api(\"/api/admin/monthly-content\",{method:\"POST\",body:JSON.stringify(getMonthlyContentPayload())});return fillMonthlyContentForm(data.content||{}),renderMonthlyContentPreview(),result&&(result.textContent=\"Saved. Monthly Content API now has the latest My Orbit content.\"),setNotice2(\"Monthly Content saved.\"),data}catch(err){throw result&&(result.textContent=\"Save failed: \"+(err.message||err)),setNotice2(\"Monthly Content save failed: \"+(err.message||err),!0),err}finally{setLoading(button2,!1)}}function renderSupportInbox(data){const target=$2(\"supportInboxTable\"),result=$2(\"supportInboxResult\");if(!target)return;const rawTickets=Array.isArray(data?.tickets)?data.tickets:[],filter=String($2(\"supportStatusFilter\")?.value||\"active\").toLowerCase(),search=String($2(\"supportSearchInput\")?.value||\"\").toLowerCase().trim(),tickets=rawTickets.filter(function(ticket){const status=String(ticket.status||\"open\").toLowerCase();return filter===\"active\"&&[\"resolved\",\"closed\"].includes(status)||filter!==\"active\"&&filter!==\"all\"&&status!==filter?!1:search?[ticket.subject,ticket.email,ticket.member_number,ticket.memberNumber,ticket.message,ticket.latestMessagePreview,ticket.ticket_id,ticket.ticketId].join(\" \").toLowerCase().includes(search):!0});result&&(result.classList.remove(\"error\"),result.textContent=tickets.length?tickets.length+\" member message\"+(tickets.length===1?\"\":\"s\")+\" loaded.\":\"No open member messages found.\");const rows=tickets.map(ticket=>{const id=ticket.ticket_id||ticket.ticketId||ticket.id||\"\",preview=Array.isArray(ticket.messages)&&ticket.messages.length?ticket.messages[ticket.messages.length-1].message:ticket.message||ticket.latestMessagePreview||\"\";return\"<tr class='\"+(!!(ticket.requires_admin_reply||ticket.requiresAdminReply||ticket.awaiting_reply||ticket.awaitingReply||String(ticket.status||\"\").toLowerCase()===\"waiting\")?\"orbit-support-needs-reply\":\"\")+\"'><td><strong>\"+esc(ticket.subject||\"Member message\")+\"</strong><br><span class='orbit-muted'>\"+esc(id)+\" \\xB7 \"+esc(ticket.category||\"General\")+\"</span></td><td>\"+esc(ticket.email||\"\\u2014\")+\"<br><span class='orbit-muted'>Member #\"+esc(ticket.member_number||ticket.memberNumber||\"\\u2014\")+\"</span></td><td><span class='orbit-pill'>\"+esc(ticket.status||\"open\")+\"</span></td><td>\"+esc(preview||\"\\u2014\")+\"</td><td>\"+esc(prettyShortDate(ticket.last_message_at||ticket.lastMessageAt||ticket.updated_at||ticket.updatedAt||ticket.created_at||ticket.createdAt))+\"</td><td><button type='button' data-support-open='\"+esc(id)+\"'>Open</button></td></tr>\"});target.innerHTML=table([\"Message\",\"Member\",\"Status\",\"Latest\",\"Updated\",\"Action\"],rows,\"No member support messages have been created yet.\")}async function loadSupportInbox(button2,quiet){setLoading(button2,!0);const result=$2(\"supportInboxResult\");result&&!quiet&&(result.classList.remove(\"error\"),result.textContent=\"Loading member messages...\");try{const data=await api(\"/api/admin/support?limit=200\",{cacheMs:0});return state.supportInbox=data,updateMemberSupportBadgesV688(data),renderSupportInbox(data),quiet||setNotice2(\"Support Inbox refreshed.\"),data}catch(err){throw result&&(result.classList.add(\"error\"),result.textContent=\"Support Inbox failed: \"+(err.message||err)),quiet||setNotice2(\"Support Inbox failed: \"+(err.message||err),!0),err}finally{setLoading(button2,!1)}}function closeSupportModal(){const modal=$2(\"supportConversationModal\");modal&&(typeof modal.close==\"function\"&&modal.open&&modal.close(),modal.removeAttribute(\"open\"),modal.classList.remove(\"is-open\"),state.currentSupportTicketId=null)}function renderSupportConversation(ticket){if(!ticket)return;const id=ticket.ticket_id||ticket.ticketId||\"\",messages=Array.isArray(ticket.messages)?ticket.messages:[],modal=$2(\"supportConversationModal\");if(!modal)throw new Error(\"Support popup is missing from the Admin page.\");state.currentSupportTicketId=id,text(\"supportModalTitle\",ticket.subject||\"Member message\"),text(\"supportModalMeta\",(ticket.email||\"\\u2014\")+\" \\xB7 \"+id+\" \\xB7 \"+(ticket.status||\"open\"));const thread=$2(\"supportModalThread\");thread&&(thread.innerHTML=messages.length?messages.map(message=>\"<div class='orbit-support-message \"+esc(message.from||\"member\")+\"'><strong>\"+esc(message.from===\"admin\"?\"Orbit\":\"Member\")+\"</strong><small>\"+esc(prettyShortDate(message.created_at||message.createdAt))+\"</small><p class='orbit-support-message-body'>\"+esc(message.message||\"\")+\"</p></div>\").join(\"\"):\"<p class='orbit-muted'>No message history found.</p>\");const reply=$2(\"supportReplyText\");reply&&(reply.value=\"\"),modal.classList.add(\"is-open\"),typeof modal.showModal==\"function\"?modal.open||modal.showModal():modal.setAttribute(\"open\",\"\")}async function openSupportConversation(ticketId,button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/support/\"+encodeURIComponent(ticketId)),ticket=data&&(data.ticket||data.supportTicket||data);if(!ticket||!(ticket.ticket_id||ticket.ticketId))throw new Error(\"Support conversation loaded without a valid ticket record.\");setLoading(button2,!1),renderSupportConversation(ticket),setNotice2(\"Support conversation opened.\")}catch(err){throw setNotice2(\"Could not open support conversation: \"+(err.message||err),!0),err}finally{button2&&button2.isConnected&&setLoading(button2,!1)}}async function updateSupportStatus(ticketId,status,button2){setLoading(button2,!0);try{const note=status===\"resolved\"?\"Marked resolved by Orbit.\":\"Conversation reopened by Orbit.\",data=await api(\"/api/admin/support/\"+encodeURIComponent(ticketId)+\"/status\",{method:\"POST\",body:JSON.stringify({status,note})});renderSupportConversation(data.ticket),await loadSupportInbox(null,!0),await loadSummary(null,!0),setNotice2(\"Support conversation updated.\")}finally{setLoading(button2,!1)}}async function replyToSupport(ticketId,button2){const box=$2(\"supportReplyText\"),message=(box?.value||\"\").trim();if(!message){setNotice2(\"Write a reply before sending.\",!0);return}setLoading(button2,!0);try{const data=await api(\"/api/admin/support/\"+encodeURIComponent(ticketId)+\"/status\",{method:\"POST\",body:JSON.stringify({status:\"open\",note:message,notifyMember:!0})});box&&(box.value=\"\"),renderSupportConversation(data.ticket),await loadSupportInbox(null,!0),await loadSummary(null,!0),setNotice2(\"Reply saved to the support conversation.\")}finally{setLoading(button2,!1)}}function renderFulfilmentCentre(centre){if(!centre)return;const counts=centre.counts||{},cycle=centre.cycle||{},ship=centre.shipEngine||{},breakdown=centre.queueBreakdown||{};text(\"fulfilmentMonthLabel\",counts.total||0),text(\"fulfilmentCurrentCycleCount\",breakdown.currentCycle||0),text(\"fulfilmentOlderCount\",breakdown.olderOutstanding||0),text(\"fulfilmentReissueCount\",breakdown.reissuesReplacements||0),text(\"fulfilmentReviewCount\",breakdown.needsReview||0),text(\"fulfilmentReadyCount\",counts.ready||0),text(\"fulfilmentLabelCount\",counts.labelsGenerated||0),text(\"fulfilmentAddressCount\",counts.needsAddress||0),text(\"fulfilmentLockLabel\",\"Current + older outstanding + replacements + review\");const breakdownTarget=$2(\"fulfilmentQueueBreakdownV667\");if(breakdownTarget){const parts=[[\"Current cycle\",Number(breakdown.currentCycle||0),\"good\"],[\"Older outstanding\",Number(breakdown.olderOutstanding||0),\"warning\"],[\"Reissues / replacements\",Number(breakdown.reissuesReplacements||0),\"\"],[\"Needs review\",Number(breakdown.needsReview||0),Number(breakdown.needsReview||0)?\"bad\":\"good\"]];breakdownTarget.innerHTML=parts.map(([label,count,tone])=>\"<span class='orbit-pill \"+tone+\"'><strong>\"+count+\"</strong> \"+esc(label)+\"</span>\").join(\"\")}const staleButton=$2(\"reconcileSafeStaleParcelsButton\");if(staleButton){const safe=Number(breakdown.safeStale||0);staleButton.hidden=safe<1,staleButton.disabled=safe<1,staleButton.textContent=safe>0?\"Reconcile \"+safe+\" safe stale parcel\"+(safe===1?\"\":\"s\"):\"Reconcile safe stale parcels\"}text(\"fulfilmentDispatchStatus\",counts.labelsGenerated?\"Labels ready\":counts.ready?\"Awaiting labels\":\"Nothing ready\"),text(\"shipEngineStatus\",ship.testLabelMode?\"TEST MODE\":ship.configured?ship.buyingEnabled?\"Ready\":\"Configured\":\"Needs setup\"),text(\"shipEngineBuying\",ship.testLabelMode?\"\\u{1F9EA} TEST LABEL MODE ACTIVE \\u2014 no ShipEngine calls, no paid postage\":ship.buyingEnabled?\"Live label buying enabled\":\"Safe mode: label buying disabled until SHIPENGINE_LABEL_BUYING_ENABLED=true\"),renderShipEngineBalanceV442(ship);const testModeBanner=$2(\"orbitLabelTestModeBanner\");testModeBanner&&(testModeBanner.hidden=!ship.testLabelMode,testModeBanner.textContent=ship.testLabelMode?\"\\u{1F9EA} TEST LABEL MODE ACTIVE \\u2014 fake Royal Mail labels only. No postage is being purchased.\":\"\"),healthCard(\"healthShipEngine\",ship.testLabelMode?\"Test Labels\":\"ShipStation\",ship.configured?ship.testLabelMode?\"test mode\":ship.buyingEnabled?\"ready\":\"safe mode\":\"needs setup\",(ship.missing||[]).length?\"Missing: \"+(ship.missing||[]).join(\", \"):ship.testLabelMode?\"ORBIT_LABEL_TEST_MODE=true \\xB7 ShipEngine is bypassed\":(ship.buyingEnabled?\"Live labels enabled\":\"Safe mode\")+\" \\xB7 Royal Mail \\xB7 Tracked 48 \\xB7 Small Parcel\"),updateCommandCentre();const noteTarget=$2(\"fulfilmentNotifications\");if(noteTarget){const notifications=(centre.notifications||[]).filter(item=>/fail|error|missing|invalid|attention/i.test(String(item.type||\"\")+\" \"+String(item.title||\"\")+\" \"+String(item.message||\"\")));noteTarget.hidden=!notifications.length,noteTarget.innerHTML=notifications.map(item=>\"<div><strong>\"+esc(item.title||\"Fulfilment needs attention\")+\"</strong><br><span class='orbit-muted'>\"+esc(item.message||\"Review this exception before shipping.\")+\"</span></div>\").join(\"\")}const missingTarget=$2(\"shipEngineMissing\");missingTarget&&(missingTarget.textContent=ship.configured?\"ShipEngine has the required configuration for label creation.\":\"Missing: \"+((ship.missing||[]).join(\", \")||\"unknown\"));const helpTarget=$2(\"shipEngineSetupHelp\");if(helpTarget){const defaults=ship.defaults||{};helpTarget.textContent=[\"Render env vars needed before buying live labels:\",\"SHIPENGINE_API_KEY=your ShipEngine production API key\",\"SHIPENGINE_CARRIER_ID=\"+(defaults.carrierId||\"needed from ShipEngine carriers list\"),\"SHIPENGINE_SERVICE_CODE=\"+(defaults.serviceCode||\"rm_cnd_walleted_tracked48\"),\"ORBIT_LABEL_TEST_MODE=true for free fake-label workflow testing\",\"SHIPENGINE_LABEL_BUYING_ENABLED=true (only when ready to buy live labels)\",\"ORBIT_SHIP_FROM_ADDRESS_1 / CITY / POSTCODE / COUNTRY_CODE\",\"ORBIT_FULFILMENT_EMAIL_TO=where the print pack is emailed\"].join(`\n`)}}function optionList(items,selected,valueKey,labelFn){return(items||[]).map(item=>{const value=item[valueKey]||item.service_code||item.package_code||item.carrier_id||\"\",label=labelFn?labelFn(item):value;return\"<option value='\"+esc(value)+\"'\"+(String(value)===String(selected||\"\")?\" selected\":\"\")+\">\"+esc(label)+\"</option>\"}).join(\"\")}function formatShipEngineBalanceV442(balance){if(!balance?.available||balance.amount===null||balance.amount===void 0)return\"\\u2014\";const currency=String(balance.currency||\"GBP\").toUpperCase();try{return new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency}).format(Number(balance.amount||0))}catch{return(currency===\"GBP\"?\"\\xA3\":currency+\" \")+Number(balance.amount||0).toFixed(2)}}function renderShipEngineBalanceV442(config){const balance=config?.balance||{},formatted=formatShipEngineBalanceV442(balance),available=!!balance.available,fulfilment=$2(\"shipEngineBalance\"),hint=$2(\"shipEngineBalanceHint\");fulfilment&&(fulfilment.textContent=available?formatted:config?.testLabelMode?\"TEST MODE\":\"Unavailable\"),hint&&(hint.innerHTML=available?\"Available postage credit \\xB7 <a href='https://app.shipengine.com/' target='_blank' rel='noopener'>Top up in ShipEngine \\u2197</a>\":config?.testLabelMode?\"Live balance is hidden while Test Label Mode is active.\":\"Open Shipping Settings to retest the live ShipEngine account.\");const settingsBalance=$2(\"shipEngineSettingsBalance\"),settingsHint=$2(\"shipEngineSettingsBalanceHint\");settingsBalance&&(settingsBalance.textContent=available?formatted:config?.testLabelMode?\"TEST MODE\":\"Unavailable\"),settingsHint&&(settingsHint.textContent=available?balance.requiresFunding?\"Prepaid carrier balance returned by ShipEngine.\":\"Carrier balance returned by ShipEngine.\":config?.testLabelMode?\"Test Label Mode does not use paid ShipEngine postage.\":\"No live balance was returned for the selected carrier.\")}function renderShippingConfig(config){if(!config)return;const target=$2(\"shippingConfigPanel\");if(!target)return;const settings=config.settings||{},selectedCarrier=(config.selected||{}).carrier||{},carriers=config.carriers||[],services=selectedCarrier.services||config.domesticServices||[],packages=config.packages||selectedCarrier.packages||[],selected=config.selected||{},warning=!selected.serviceFound||!selected.packageFound?\"<div class='orbit-warning'>The currently saved service/package was not found for this carrier. Select one below and save before buying labels.</div>\":\"<div class='orbit-success'>Shipping configuration verified against your ShipStation account.</div>\";target.innerHTML=warning+\"<div class='orbit-shipengine-credit-panel'><div><span>ShipEngine postage balance</span><strong id='shipEngineSettingsBalance'>\\u2014</strong><small id='shipEngineSettingsBalanceHint'>Checking live carrier balance\\u2026</small></div><a class='orbit-button-link secondary' href='https://app.shipengine.com/' target='_blank' rel='noopener'>Top up in ShipEngine \\u2197</a></div><div class='orbit-shipping-pricing-explainer'><strong>ShipEngine live quote</strong><p>Orbit uses the amount returned by ShipEngine as the provider quote and does not add its own VAT on top. Royal Mail's public online Tracked 48 prices are VAT-inclusive, while ShipEngine can return a different account/carrier rate. If ShipEngine explicitly returns a separate tax amount, Orbit includes that once and labels it as provider tax.</p><p><b>Important:</b> the final purchased label response is saved against the parcel as the actual ShipEngine shipment cost, so preview and purchase can be audited without guessing.</p></div><div class='orbit-current-shipping-service'><span>Currently saved service</span><strong>\"+esc(selected.service?.name||settings.serviceCode||\"Not selected\")+\"</strong><small>\"+esc(selectedCarrier.friendly_name||selectedCarrier.nickname||\"Royal Mail\")+\" \\xB7 \"+esc(selected.package?.name||settings.packageCode||\"Package not selected\")+\"</small><div class='orbit-service-limits'><b>Saved quote weight:</b> \"+esc(settings.weightValue||500)+\"g<br><b>Maximum service weight:</b> \"+(/tracked\\s*48|tracked48/i.test(String(selected.service?.name||settings.serviceCode||\"\"))?\"2 kg\":\"Confirm in live rate results\")+\"<br><b>Maximum parcel size:</b> \"+(/tracked\\s*48|tracked48/i.test(String(selected.service?.name||settings.serviceCode||\"\"))?\"45 \\xD7 35 \\xD7 16 cm\":\"Confirm in live rate results\")+\"<br><b>Price treatment:</b> ShipEngine provider quote \\xB7 Orbit adds no synthetic VAT</div></div><div class='orbit-hidden-shipping-selects' hidden><select id='shippingCarrierSelect'>\"+optionList(carriers,settings.carrierId,\"carrier_id\",c=>c.friendly_name||c.nickname||c.carrier_code||c.carrier_id)+\"</select><select id='shippingServiceSelect'>\"+optionList(services,settings.serviceCode,\"service_code\",s=>s.name||s.service_code)+\"</select><select id='shippingPackageSelect'>\"+optionList(packages,settings.packageCode,\"package_code\",p=>p.name||p.package_code)+\"</select></div><div class='orbit-action-row'><button id='saveShippingConfigButton' type='button'>Save Selected Service</button><button id='loadShippingRatesButton' type='button' class='secondary'>Load Live Services & Prices</button><button id='useRoyalMailTracked48Button' type='button' class='secondary'>Use Royal Mail Tracked 48 Small Parcel</button><button id='toggleTestLabelModeButton' type='button' class='secondary'>\"+(settings.testLabelMode?\"Turn Test Mode Off\":\"Turn Test Mode On\")+\"</button></div><div id='shippingSaveResult' class='orbit-action-result' hidden>Ready.</div><div id='shippingRatesPanel' class='orbit-shipping-rate-list'><p class='orbit-muted'>Load live services and prices to compare available postage options.</p></div>\",renderShipEngineBalanceV442(config),$2(\"shippingCarrierSelect\")?.addEventListener(\"change\",saveShippingConfigFromForm),$2(\"saveShippingConfigButton\")?.addEventListener(\"click\",function(){saveShippingConfigFromForm(this)}),$2(\"loadShippingRatesButton\")?.addEventListener(\"click\",function(){loadShippingServiceRates(this)}),$2(\"toggleTestLabelModeButton\")?.addEventListener(\"click\",async function(){toggleTestLabelMode(this,!settings.testLabelMode)}),$2(\"useRoyalMailTracked48Button\")?.addEventListener(\"click\",async function(){setLoading(this,!0);try{await saveShippingConfig({carrierId:\"se-393585\",serviceCode:\"rm_cnd_walleted_tracked48\",packageCode:\"rm_cnd_walleted_small_parcel\"});const result=$2(\"shippingSaveResult\");result&&(result.hidden=!1,result.textContent=\"Royal Mail Tracked 48 Small Parcel saved and verified.\",result.classList.remove(\"error\"))}catch(err){const result=$2(\"shippingSaveResult\");result&&(result.hidden=!1,result.textContent=err.message,result.classList.add(\"error\")),setNotice2(err.message,!0)}finally{setLoading(this,!1)}})}async function toggleTestLabelMode(button2,enabled){const result=$2(\"shippingSaveResult\")||$2(\"testingPostageResult\");setLoading(button2,!0),result&&(result.hidden=!1,result.textContent=enabled?\"Turning Test Label Mode on...\":\"Turning Test Label Mode off...\",result.classList.remove(\"error\"));try{const response=await api(\"/api/admin/shipping/test-label-mode\",{method:\"POST\",body:JSON.stringify({enabled:!!enabled})});state.shippingConfig=response.shipping,renderShippingConfig(state.shippingConfig),await loadFulfilment(),result&&(result.textContent=response.message||(enabled?\"Test Label Mode enabled.\":\"Test Label Mode disabled.\")),setNotice2(response.message||\"Test Label Mode updated.\")}catch(err){result&&(result.textContent=err.message||\"Could not update Test Label Mode.\",result.classList.add(\"error\")),setNotice2(err.message||\"Could not update Test Label Mode.\",!0)}finally{setLoading(button2,!1)}}async function saveShippingConfig(payload){const body=payload||{carrierId:$2(\"shippingCarrierSelect\")?.value,serviceCode:$2(\"shippingServiceSelect\")?.value,packageCode:$2(\"shippingPackageSelect\")?.value,weightValue:$2(\"shippingWeightInput\")?.value,lengthCm:$2(\"shippingLengthInput\")?.value,widthCm:$2(\"shippingWidthInput\")?.value,heightCm:$2(\"shippingHeightInput\")?.value},result=await api(\"/api/admin/shipping/config\",{method:\"POST\",body:JSON.stringify(body)});state.shippingConfig=result.shipping,renderShippingConfig(state.shippingConfig),await loadFulfilment(),setNotice2(\"Shipping settings saved.\")}async function loadShippingServiceRates(button2){setLoading(button2,!0);const target=$2(\"shippingRatesPanel\");try{const quoteWeight=$2(\"shippingQuoteWeightSelect\")?.value||state.shippingConfig?.settings?.weightValue||500,data=await api(\"/api/admin/shipping/service-rates?weightValue=\"+encodeURIComponent(quoteWeight)),rates=data.rates||[];if(!rates.length){target.innerHTML=\"<div class='orbit-warning'>\"+esc(data.error||data.message||\"No live service prices were returned. A ready parcel with a complete address is required for a quote.\")+\"</div>\";return}target.innerHTML=rates.map(rate=>{const selected=String(rate.serviceCode)===String(state.shippingConfig?.settings?.serviceCode||\"\"),delivery=rate.estimatedDeliveryDate?\"Estimated \"+prettyShortDate(rate.estimatedDeliveryDate):rate.deliveryDays!=null?rate.deliveryDays+\" day estimate\":\"Delivery estimate unavailable\";return\"<button type='button' class='orbit-shipping-rate-card \"+(selected?\"active\":\"\")+\"' data-shipping-rate-service='\"+esc(rate.serviceCode||\"\")+\"' data-shipping-rate-package='\"+esc(rate.packageCode||\"\")+\"'><span>\"+esc(rate.carrierName||\"Carrier\")+\"</span><strong>\"+esc(rate.serviceName||rate.serviceCode||\"Service\")+\"</strong><b>\"+money(rate.amount)+\" ShipEngine quote</b><small>\"+(Number(rate.vatAmount||0)>0?\"Carrier components \"+money(rate.baseAmount)+\" + provider tax \"+money(rate.vatAmount):\"No additional VAT added by Orbit\")+\"<br>\"+esc(delivery)+\"<br>Quote weight: \"+esc(rate.quotedWeightGrams||quoteWeight)+\"g<br>Max weight: \"+esc(rate.maxWeight||\"Carrier limit not returned\")+(rate.maxDimensions?\" \\xB7 Max size: \"+esc(rate.maxDimensions):\"\")+\"</small>\"+(selected?\"<em>Currently saved</em>\":\"<em>Select this service</em>\")+\"</button>\"}).join(\"\"),target.querySelectorAll(\"[data-shipping-rate-service]\").forEach(card=>card.addEventListener(\"click\",function(){const service=this.dataset.shippingRateService,packageCode=this.dataset.shippingRatePackage;$2(\"shippingServiceSelect\")&&($2(\"shippingServiceSelect\").value=service),packageCode&&$2(\"shippingPackageSelect\")&&($2(\"shippingPackageSelect\").value=packageCode),target.querySelectorAll(\".orbit-shipping-rate-card\").forEach(item=>item.classList.toggle(\"selected\",item===this));const result=$2(\"shippingSaveResult\");result&&(result.hidden=!1,result.textContent=\"Selected \"+(this.querySelector(\"strong\")?.textContent||service)+\". Click Save Selected Service to make it the default for all parcels.\",result.classList.remove(\"error\"))}))}catch(err){target.innerHTML=\"<div class='orbit-warning'>Could not load live service prices: \"+esc(err.message||err)+\"</div>\"}finally{setLoading(button2,!1)}}async function saveShippingConfigFromForm(button2){button2&&setLoading(button2,!0);try{await saveShippingConfig();const result=$2(\"shippingSaveResult\");result&&(result.hidden=!1,result.textContent=\"Shipping settings saved and verified.\",result.classList.remove(\"error\"))}catch(err){const result=$2(\"shippingSaveResult\");result&&(result.hidden=!1,result.textContent=err.message,result.classList.add(\"error\")),setNotice2(err.message,!0)}finally{button2&&setLoading(button2,!1)}}async function previewShippingCost(button2){const selected=selectedPackIds().filter(id=>selectedPackStage(id)===\"ready\");if(!selected.length)throw new Error(\"Select at least one parcel marked Ready for label before previewing postage.\");const target=$2(\"shippingCostPreview\");setLoading(button2,!0);try{const estimate=await api(\"/api/admin/shipping/estimate\",{method:\"POST\",body:JSON.stringify({packIds:selected})});state.shippingCostEstimate={...estimate,packIds:selected.slice().sort()};const count=Number(estimate.selectedCount||estimate.count||0);let message;if(estimate.testLabelMode)message=\"Test Label Mode: \"+count+\" label(s), total cost \\xA30.00.\";else if(estimate.success&&estimate.total!==null){const base=estimate.basePerLabel!==null&&estimate.basePerLabel!==void 0?Number(estimate.basePerLabel).toFixed(2):null,vat=estimate.vatPerLabel!==null&&estimate.vatPerLabel!==void 0?Number(estimate.vatPerLabel).toFixed(2):null,explicitTax=Number(estimate.vatPerLabel||0)>0;message=\"ShipEngine quoted \"+count+\" label(s) at \\xA3\"+Number(estimate.perLabel||0).toFixed(2)+\" each\"+(explicitTax&&base!==null&&vat!==null?\" (\\xA3\"+base+\" carrier components + \\xA3\"+vat+\" provider tax)\":\" (no additional VAT added by Orbit)\")+\". Quoted total \\xA3\"+Number(estimate.total||0).toFixed(2)+\".\"}else message=\"A live price could not be confirmed. \"+(estimate.error||estimate.message||\"Check Shipping Settings.\");target&&(target.hidden=!1,target.textContent=message,target.classList.toggle(\"error\",!estimate.success));const generate=$2(\"generateMonthlyDispatchButton\");return generate&&(generate.disabled=!(estimate.success&&count>0)),setNotice2(message,!estimate.success),estimate}finally{setLoading(button2,!1)}}async function generateMonthlyDispatch(button2){const selected=selectedPackIds().filter(id=>selectedPackStage(id)===\"ready\");if(!selected.length)throw new Error(\"Select at least one parcel marked Ready for label before generating postage.\");let estimate=state.shippingCostEstimate;const estimateIds=Array.isArray(estimate?.packIds)?estimate.packIds.slice().sort().join(\"|\"):\"\",selectedIds=selected.slice().sort().join(\"|\");if((!estimate||!estimate.success||estimateIds!==selectedIds)&&(estimate=await previewShippingCost(null)),!estimate?.success)throw new Error(estimate?.error||estimate?.message||\"Postage cost could not be confirmed.\");const count=Number(estimate?.selectedCount||estimate?.count||selected.length||0),costText=estimate?.testLabelMode?\"\\xA30.00 in Test Label Mode\":estimate?.total!==null&&estimate?.total!==void 0?\"approximately \\xA3\"+Number(estimate.total).toFixed(2):\"an unconfirmed amount\";if(window.confirm(\"You are about to generate \"+count+\" label(s) for \"+costText+\". Continue?\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/fulfilment/generate-monthly-dispatch\",{method:\"POST\",body:JSON.stringify({emailPrintPack:!0,packIds:selected})});$2(\"workflowResult\").textContent=JSON.stringify(result,null,2);const testGenerated=(result.generated||[]).filter(row=>row.testLabelMode||String(row.trackingNumber||\"\").includes(\"ORBIT-TEST\")).length,dispatchMessage=\"Monthly dispatch generated: \"+(result.generatedCount||0)+\" label(s), \"+(result.skippedCount||0)+\" skipped\"+(selected.length?\" from \"+selected.length+\" selected.\":\".\")+(testGenerated?\" TEST MODE: \"+testGenerated+\" fake label(s), \\xA30 spent.\":\"\"),localResult=$2(\"shippingDispatchResult\");localResult&&(localResult.hidden=!1,localResult.textContent=dispatchMessage,localResult.classList.toggle(\"error\",!!(result.skippedCount&&!result.generatedCount))),setActionResult(\"Dispatch result: \"+(result.generatedCount||0)+\" label(s) generated, \"+(result.skippedCount||0)+\" skipped. \"+(selected.length?\"Selected packs only.\":\"Full eligible queue.\")),setOrdersResult(dispatchMessage,!!(result.skippedCount&&!result.generatedCount)),setNotice2(dispatchMessage),await Promise.all([loadFulfilment(),loadSummary(),loadEvents()])}catch(err){setOrdersResult(err.message||\"Could not generate labels.\",!0),setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}}async function generateMissingMonthlyPacks(button2){const key=monthKeyValue(),resultTarget=$2(\"generateMissingMonthlyPacksResult\");setLoading(button2,!0),button2&&(button2.textContent=\"Generating missing packs...\"),resultTarget&&(resultTarget.textContent=\"Creating monthly pack records for active members missing from the queue...\");try{const result=await api(\"/api/admin/fulfilment/generate-missing-monthly-packs\",{method:\"POST\",body:JSON.stringify({monthKey:key})}),created=Number(result.createdCount||0),skipped=Number(result.skippedCount||0);resultTarget&&(resultTarget.textContent=\"Created \"+created+\" missing monthly pack(s). Skipped \"+skipped+\" already queued member(s). Refreshing fulfilment...\"),setActionResult(\"Missing monthly packs generated: \"+created+\" created, \"+skipped+\" skipped.\"),setNotice2(\"Missing monthly packs generated: \"+created+\" created.\"),await Promise.all([loadFulfilment(),loadSummary()])}catch(err){resultTarget&&(resultTarget.textContent=err.message||\"Could not generate missing monthly packs.\"),setNotice2(err.message||\"Could not generate missing monthly packs.\",!0)}finally{setLoading(button2,!1),button2&&(button2.textContent=\"Generate missing monthly packs\")}}async function markBatchDispatched(button2){const selected=selectedPackIds().filter(id=>selectedPackStage(id)===\"packed\");if(!selected.length)throw new Error(\"Select at least one packed parcel before marking dispatch.\");const originalText=button2?button2.textContent:\"\",localResult=$2(\"shippingDispatchResult\");setLoading(button2,!0),button2&&(button2.textContent=\"Marking dispatched...\"),localResult&&(localResult.hidden=!1,localResult.textContent=\"Marking \"+(selected.length||\"all eligible\")+\" parcel(s) as dispatched...\",localResult.classList.remove(\"error\"));try{const result=await api(\"/api/admin/fulfilment/mark-batch-dispatched\",{method:\"POST\",body:JSON.stringify({packIds:selected})});renderDispatchResultV827(result,selected.length,localResult),await Promise.all([loadFulfilment(),loadSummary(),loadEvents()])}catch(err){localResult&&(localResult.hidden=!1,localResult.textContent=err.message||\"Could not mark dispatched.\",localResult.classList.add(\"error\")),setOrdersResult(err.message||\"Could not mark dispatched.\",!0),setNotice2(err.message,!0)}finally{setLoading(button2,!1),button2&&(button2.textContent=originalText||\"Mark Dispatched\")}}async function markBatchDelivered(button2){const selected=selectedPackIds();if(!selected.length)throw new Error(\"Select at least one dispatched parcel before marking delivered.\");const originalText=button2?button2.textContent:\"\",localResult=$2(\"shippingDispatchResult\");setLoading(button2,!0),button2&&(button2.textContent=\"Marking delivered...\"),localResult&&(localResult.hidden=!1,localResult.textContent=\"Marking \"+(selected.length||\"eligible\")+\" parcel(s) as delivered...\",localResult.classList.remove(\"error\"));try{const msg=\"Delivered \"+((await api(\"/api/admin/fulfilment/mark-batch-delivered\",{method:\"POST\",body:JSON.stringify({packIds:selected})})).deliveredCount||0)+\" parcel(s)\"+(selected.length?\" from \"+selected.length+\" selected.\":\".\")+\" Moved to Fulfilment History.\";localResult&&(localResult.hidden=!1,localResult.textContent=msg,localResult.classList.remove(\"error\")),setOrdersResult(msg,!1),await Promise.all([loadFulfilment(),loadSummary()])}catch(err){localResult&&(localResult.hidden=!1,localResult.textContent=err.message||\"Could not mark delivered.\",localResult.classList.add(\"error\")),setOrdersResult(err.message||\"Could not mark delivered.\",!0),setNotice2(err.message,!0)}finally{setLoading(button2,!1),button2&&(button2.textContent=originalText||\"Mark Delivered\")}}function setAddressRecoveryStatus(message,isError){const target=$2(\"addressRecoveryStatus\");target&&(target.hidden=!message,target.textContent=message||\"\",target.classList.toggle(\"error\",!!isError),target.classList.toggle(\"warning\",!!isError))}function fillAddressRecoveryForm(delivery){delivery=delivery||{};const values={addressRecipientName:delivery.recipientName,addressLine1:delivery.addressLine1,addressLine2:delivery.addressLine2,addressCity:delivery.city,addressCounty:delivery.county,addressPostcode:delivery.postcode,addressCountry:delivery.country||\"United Kingdom\",addressPhone:delivery.phone};Object.keys(values).forEach(function(id){const el=$2(id);el&&(el.value=values[id]||\"\")})}function openAddressRecovery(lookup,packId){addressRecoveryContext={lookup:lookup||selectedMemberLookup,packId:packId||null,delivery:null};const profileDelivery=selectedMemberProfile?.delivery||{};fillAddressRecoveryForm(profileDelivery),$2(\"addressRecoveryLookup\")&&($2(\"addressRecoveryLookup\").value=addressRecoveryContext.lookup||\"\"),$2(\"addressRecoveryPackId\")&&($2(\"addressRecoveryPackId\").value=addressRecoveryContext.packId||\"\"),text(\"addressRecoveryTitle\",\"Fix delivery address\"+(addressRecoveryContext.lookup?\" \\xB7 \"+addressRecoveryContext.lookup:\"\")),setAddressRecoveryStatus(\"Choose a live source to resync, or enter the address manually.\",!1),$2(\"addressRecoveryDialog\")?.showModal()}async function syncAddressSource(source,button2){const lookup=addressRecoveryContext.lookup||button2?.dataset.addressLookup||selectedMemberLookup,packId=addressRecoveryContext.packId||button2?.dataset.addressPack||null;if(!lookup&&!packId)throw new Error(\"No member or parcel selected.\");setLoading(button2,!0),setAddressRecoveryStatus(\"Checking \"+(source===\"all\"?\"Recharge, Shopify and Orbit\":source)+\" for a complete address...\",!1);try{const url=packId?\"/api/admin/fulfilment/pack/\"+encodeURIComponent(packId)+\"/repair-address\":\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/repair-address\",result=await api(url,{method:\"POST\",body:JSON.stringify({source,packId,monthKey:monthKeyValue()})});if(result.afterComplete)fillAddressRecoveryForm(result.diagnostics?.bestDelivery||result.diagnostics?.delivery||{}),setAddressRecoveryStatus(\"Address recovered from \"+(result.deliverySource||source)+\". The parcel is now ready for validation.\",!1),await Promise.all([loadFulfilment(),loadSummary()]),selectedMemberLookup&&await loadMemberProfile(selectedMemberLookup);else{const error=(result.diagnostics?.probes||[]).find(function(row){return row.error});setAddressRecoveryStatus(error?\"Address was not recovered. \"+(error.status?\"HTTP \"+error.status+\": \":\"\")+error.error:\"No complete address was found from that source. Try another source or enter it manually.\",!0)}return result}finally{setLoading(button2,!1)}}async function saveManualAddress(button2){const lookup=addressRecoveryContext.lookup||$2(\"addressRecoveryLookup\")?.value,packId=addressRecoveryContext.packId||$2(\"addressRecoveryPackId\")?.value||null,delivery={recipientName:$2(\"addressRecipientName\")?.value,addressLine1:$2(\"addressLine1\")?.value,addressLine2:$2(\"addressLine2\")?.value,city:$2(\"addressCity\")?.value,county:$2(\"addressCounty\")?.value,postcode:$2(\"addressPostcode\")?.value,country:$2(\"addressCountry\")?.value,phone:$2(\"addressPhone\")?.value};setLoading(button2,!0),setAddressRecoveryStatus(\"Saving address and updating the blocked parcel...\",!1);try{const url=packId?\"/api/admin/fulfilment/pack/\"+encodeURIComponent(packId)+\"/address\":\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/address\",result=await api(url,{method:\"PUT\",body:JSON.stringify({delivery,packId})});setAddressRecoveryStatus(\"Address saved. \"+(result.packsUpdated||0)+\" parcel record(s) updated.\",!1),await Promise.all([loadFulfilment(),loadSummary()]),selectedMemberLookup&&await loadMemberProfile(selectedMemberLookup),window.setTimeout(function(){$2(\"addressRecoveryDialog\")?.close()},700)}finally{setLoading(button2,!1)}}async function hydrateAddresses(button2){const key=monthKeyValue(),selected=selectedPackIds();setLoading(button2,!0);try{const result=await api(\"/api/admin/fulfilment/hydrate-addresses\",{method:\"POST\",body:JSON.stringify({packIds:selected})}),msg=\"Address refresh checked \"+(result.checkedCount||0)+\", updated \"+(result.updatedCount||0)+\", still missing \"+(result.stillMissingCount||0)+\".\",localResult=$2(\"shippingDispatchResult\");localResult&&(localResult.hidden=!1,localResult.textContent=msg,localResult.classList.toggle(\"error\",!!result.stillMissingCount)),setOrdersResult(msg,!!result.stillMissingCount),setNotice2(msg,!!result.stillMissingCount),await loadFulfilment()}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}async function deleteSpecialShipment(shipmentId,button2){if(!shipmentId)return;const confirmation=window.prompt(\"Delete special shipment \"+shipmentId+\" permanently from fulfilment? Type DELETE to confirm.\",\"\");if(confirmation!==null){if(String(confirmation).trim()!==\"DELETE\"){setNotice2(\"Delete cancelled. You must type DELETE exactly.\",!0);return}setLoading(button2,!0);try{const result=await api(\"/api/admin/shipping/special-shipments/\"+encodeURIComponent(shipmentId)+\"/delete\",{method:\"POST\",body:JSON.stringify({confirmation:\"DELETE\",reason:\"Deleted from fulfilment by admin\"})});setNotice2(result.message||\"Special shipment deleted.\"),await Promise.all([reloadSpecialShipments(),loadFulfilment(),loadSummary()])}finally{setLoading(button2,!1)}}}async function deletePackRow(packId,button2){if(!packId)return;const confirmation=window.prompt(\"Delete monthly pack row \"+packId+\"? This removes it from active Orders. Type DELETE to confirm.\",\"\");if(confirmation===null)return;if(String(confirmation).trim()!==\"DELETE\"){const localResult2=$2(\"shippingDispatchResult\");localResult2&&(localResult2.hidden=!1,localResult2.textContent=\"Delete cancelled. You must type DELETE exactly.\",localResult2.classList.add(\"error\")),setOrdersResult(\"Delete cancelled. You must type DELETE exactly.\",!0);return}const localResult=$2(\"shippingDispatchResult\");setLoading(button2,!0),button2&&(button2.textContent=\"Deleting...\"),localResult&&(localResult.hidden=!1,localResult.textContent=\"Removing row from active Orders...\",localResult.classList.remove(\"error\")),setOrdersResult(\"Removing row from active Orders...\",!1);try{const result=await api(\"/api/admin/fulfilment/pack/\"+encodeURIComponent(packId)+\"/delete\",{method:\"POST\",body:JSON.stringify({reason:\"Removed from active Orders by admin\",confirmation:\"DELETE\"})});localResult&&(localResult.hidden=!1,localResult.textContent=result.message||\"Row removed from active Orders.\",localResult.classList.remove(\"error\")),setOrdersResult(result.message||\"Row removed from active Orders.\",!1),await Promise.all([loadFulfilment(),loadSummary()])}catch(err){localResult&&(localResult.hidden=!1,localResult.textContent=err.message||\"Could not delete row.\",localResult.classList.add(\"error\")),setOrdersResult(err.message||\"Could not delete row.\",!0),setNotice2(err.message||\"Could not delete row.\",!0)}finally{setLoading(button2,!1)}}function selectedPackIds(){return Array.from(document.querySelectorAll(\".orbit-pack-select:checked\")).map(input=>input.dataset.packSelect).filter(Boolean)}function selectedPackStage(packId){const input=Array.from(document.querySelectorAll(\".orbit-pack-select\")).find(box=>String(box.dataset.packSelect||\"\")===String(packId||\"\"));return String(input?.dataset.packStage||\"\").toLowerCase()}function syncMonthlyBatchButtons(){const selected=selectedPackIds(),selectedReady=selected.filter(id=>selectedPackStage(id)===\"ready\"),selectedPacked=selected.filter(id=>selectedPackStage(id)===\"packed\"),dispatch=$2(\"markBatchDispatchedButton\");dispatch&&(dispatch.disabled=selectedPacked.length===0);const preview=$2(\"previewLabelCostButton\");preview&&(preview.disabled=selectedReady.length===0);const labels=$2(\"downloadLabelsButton\");labels&&(labels.disabled=!(selectedPacked.length||(state.fulfilment?.packs||[]).some(pack=>fulfilmentStage(pack)===\"packed\")))}function packLabelHref(pack){return pack&&pack.labelUrl?String(pack.labelUrl):\"\"}async function quickPackAction(kind,packId,button2){if(!packId)return;const originalText=button2?button2.textContent:\"\",localResult=$2(\"shippingDispatchResult\");setLoading(button2,!0),button2&&(kind===\"generate\"&&(button2.textContent=\"Generating label...\"),kind===\"shipped\"&&(button2.textContent=\"Marking dispatched...\"),kind===\"fulfilled\"&&(button2.textContent=\"Marking delivered...\"),kind===\"packed\"&&(button2.textContent=\"Marking packed...\")),localResult&&(localResult.hidden=!1,localResult.classList.remove(\"error\"),localResult.textContent=\"Working on selected pack \"+packId+\"...\");try{if(kind===\"generate\"){const result=await api(\"/api/admin/fulfilment/generate-monthly-dispatch\",{method:\"POST\",body:JSON.stringify({emailPrintPack:!1,packIds:[packId]})}),testGenerated=(result.generated||[]).filter(row=>row.testLabelMode||String(row.trackingNumber||\"\").includes(\"ORBIT-TEST\")).length,msg=\"Generated \"+(result.generatedCount||0)+\" label(s) for selected pack.\"+(testGenerated?\" TEST MODE: fake label generated, \\xA30 spent.\":\"\");localResult&&(localResult.hidden=!1,localResult.textContent=msg,localResult.classList.toggle(\"error\",!!(result.skippedCount&&!result.generatedCount))),setOrdersResult(msg,!!(result.skippedCount&&!result.generatedCount))}else if(kind===\"shipped\"){const result=await api(\"/api/admin/fulfilment/mark-batch-dispatched\",{method:\"POST\",body:JSON.stringify({packIds:[packId]})});renderDispatchResultV827(result,1,localResult);const dispatchedRow=button2?.closest(\"tr\");dispatchedRow&&(dispatchedRow.dataset.fulfilmentStage=\"dispatched\",dispatchedRow.classList.add(\"orbit-row-dispatch-complete\"),dispatchedRow.querySelectorAll(\"button,input\").forEach(el=>el.disabled=!0),button2&&(button2.textContent=\"Dispatched \\u2713\"),window.setTimeout(()=>dispatchedRow.remove(),220))}else if(kind===\"fulfilled\"){const msg=\"Delivered \"+((await api(\"/api/admin/fulfilment/mark-batch-delivered\",{method:\"POST\",body:JSON.stringify({packIds:[packId]})})).deliveredCount||0)+\" parcel(s) from 1 selected. Moved to Fulfilment History.\";localResult&&(localResult.hidden=!1,localResult.textContent=msg,localResult.classList.remove(\"error\")),setOrdersResult(msg,!1)}else kind===\"packed\"&&(await api(\"/api/admin/monthly-packs/\"+encodeURIComponent(packId)+\"/status\",{method:\"POST\",body:JSON.stringify({status:\"packed\",fulfilmentStatus:\"packed\",notes:\"Packed by Orbit admin.\"})}),localResult&&(localResult.hidden=!1,localResult.textContent=\"Selected pack marked packed.\",localResult.classList.remove(\"error\")),setOrdersResult(\"Selected pack marked packed.\",!1));await Promise.all([loadFulfilment(),loadSummary()])}catch(err){localResult&&(localResult.hidden=!1,localResult.textContent=err.message||\"Pack action failed.\",localResult.classList.add(\"error\")),setOrdersResult(err.message||\"Pack action failed.\",!0),setNotice2(err.message||\"Pack action failed.\",!0)}finally{setLoading(button2,!1),button2&&(button2.textContent=originalText)}}function downloadPackingList(){const selected=selectedPackIds();setNotice2(\"Opening packing list\"+(selected.length?\" for \"+selected.length+\" selected parcel(s).\":\" for the full outstanding queue.\"));const url=API_BASE+\"/api/admin/fulfilment/packing-list.pdf?secret=\"+encodeURIComponent(secret)+adminSessionQueryV329()+(selected.length?\"&packIds=\"+encodeURIComponent(selected.join(\",\")):\"\");window.open(url,\"_blank\")}function downloadLabelsPdf(){const selected=selectedPackIds().filter(id=>selectedPackStage(id)===\"packed\");setNotice2(\"Opening generated labels\"+(selected.length?\" for \"+selected.length+\" selected packed parcel(s).\":\" for all outstanding labelled parcels.\"));const url=API_BASE+\"/api/admin/fulfilment/labels.pdf?secret=\"+encodeURIComponent(secret)+adminSessionQueryV329()+(selected.length?\"&packIds=\"+encodeURIComponent(selected.join(\",\")):\"\");window.open(url,\"_blank\")}function fulfilmentHistoryMonthOptions(monthlyPacks){return[...new Set((monthlyPacks||[]).map(pack=>String(pack.monthKey||pack.month_key||\"\").trim()).filter(month=>/^\\d{4}-(0[1-9]|1[0-2])$/.test(month)))].sort().reverse()}function syncFulfilmentHistoryMonths(monthlyPacks){const select=$2(\"fulfilmentHistoryMonth\");if(!select)return;const previous=select.value||\"all\",months=fulfilmentHistoryMonthOptions(monthlyPacks),optionLabel=month=>{const[year,number]=month.split(\"-\").map(Number);return new Intl.DateTimeFormat(\"en-GB\",{month:\"long\",year:\"numeric\",timeZone:\"UTC\"}).format(new Date(Date.UTC(year,number-1,1)))};select.innerHTML=\"<option value='all'>All months and shipments</option>\"+months.map(month=>\"<option value='\"+month+\"'>\"+optionLabel(month)+\"</option>\").join(\"\")+\"<option value='special'>Prizes and loyalty shipments</option>\",select.value=previous===\"special\"||months.includes(previous)?previous:\"all\"}function filteredFulfilmentHistory(monthlyPacks,specialShipments){const monthFilter=String($2(\"fulfilmentHistoryMonth\")?.value||\"all\"),q=String($2(\"fulfilmentHistorySearch\")?.value||\"\").trim().toLowerCase(),statusFilter=String($2(\"fulfilmentHistoryStatus\")?.value||\"all\").toLowerCase(),monthly=(monthlyPacks||[]).map(pack=>({...pack,shipmentKind:\"Monthly Parcel\",completedStatus:String(pack.fulfilmentStatus||pack.fulfilment_status||pack.status||\"\").toLowerCase()})),special=(specialShipments||[]).filter(item=>[\"dispatched\",\"shipped\",\"delivered\",\"fulfilled\",\"completed\"].includes(String(item.status||\"\").toLowerCase())).map(item=>({...item,shipmentKind:item.type||\"Special Shipment\",completedStatus:String(item.status||\"\").toLowerCase(),memberNumber:item.memberNumber,memberName:item.memberName,email:item.email,trackingNumber:item.trackingNumber,trackingUrl:item.trackingUrl,labelUrl:item.labelUrl,dispatchedAt:item.dispatchedAt||item.updatedAt,delivery:item.delivery||{},packId:item.shipmentId,monthKey:item.source===\"loyalty_store\"?\"Loyalty Order\":\"Prize\"}));return monthly.concat(special).filter(item=>{const s=item.completedStatus;if(monthFilter!==\"all\"){if(monthFilter===\"special\"){if(item.shipmentKind===\"Monthly Parcel\")return!1}else if(item.shipmentKind!==\"Monthly Parcel\"||String(item.monthKey||item.month_key||\"\").trim()!==monthFilter)return!1}return![\"dispatched\",\"shipped\",\"delivered\",\"fulfilled\",\"completed\",\"replaced\",\"superseded\"].includes(s)||statusFilter!==\"all\"&&(statusFilter===\"shipped\"&&![\"dispatched\",\"shipped\",\"fulfilled\",\"completed\",\"replaced\",\"superseded\"].includes(s)||statusFilter===\"delivered\"&&s!==\"delivered\")?!1:q?[item.shipmentKind,item.memberNumber,item.memberName,item.email,item.packId,item.trackingNumber,item.monthKey].join(\" \").toLowerCase().includes(q):!0})}function specialShipmentStage(item){const status=String(item?.status||item?.fulfilmentStatus||item?.fulfilment_status||\"ready_for_label\").toLowerCase();return[\"fulfilled\",\"delivered\",\"dispatched\",\"shipped\",\"completed\"].includes(status)?\"completed\":item?.trackingNumber||item?.tracking_number||item?.labelUrl||item?.label_url||[\"labelled\",\"label_generated\",\"packed\",\"ready_for_dispatch\"].includes(status)?\"packed\":[\"blocked\",\"needs_attention\",\"needs_delivery_details\",\"invalid_address\",\"failed\"].includes(status)?\"attention\":\"ready\"}function renderFulfilmentHistory(monthlyPacks,specialShipments){const target=$2(\"fulfilmentHistoryTable\");if(!target)return;syncFulfilmentHistoryMonths(monthlyPacks);const rows=filteredFulfilmentHistory(monthlyPacks,specialShipments).map(item=>{const delivery=item.delivery||{},address=[delivery.recipientName,delivery.addressLine1,delivery.city,delivery.postcode].filter(Boolean).join(\", \"),status=[\"replaced\",\"superseded\"].includes(String(item.completedStatus||\"\").toLowerCase())?\"Replaced\":item.completedStatus===\"dispatched\"?\"Dispatched\":humanStatus(item.completedStatus||\"Completed\");return\"<tr><td><strong>\"+esc(item.memberNumber||\"\\u2014\")+\"</strong><br><span class='orbit-muted'>\"+esc(item.memberName||item.email||\"\")+\"</span></td><td><strong>\"+esc(item.shipmentKind||\"Shipment\")+\"</strong><br><span class='orbit-muted'>\"+esc(item.monthKey||item.packId||\"\")+\"</span></td><td>\"+(item.shipmentKind===\"Monthly Parcel\"?boxNumberLabelV827(item.boxNumber??item.parcelJourney?.monthNumber):\"Not applicable\")+\"</td><td><span class='orbit-pill good'>\"+esc(status)+\"</span><br><span class='orbit-muted'>\"+esc(item.dispatchedAt||item.updatedAt||\"\")+\"</span>\"+(item.shipmentKind===\"Monthly Parcel\"?fulfilmentAccountingNoteV827(item):\"\")+\"</td><td>\"+(item.trackingNumber?\"<a href='\"+esc(item.trackingUrl||\"https://www.royalmail.com/track-your-item#/tracking-results/\"+encodeURIComponent(item.trackingNumber))+\"' target='_blank' rel='noopener'>\"+esc(item.trackingNumber)+\"</a>\":\"No tracking saved\")+\"</td><td>\"+esc(address||\"Address not saved\")+\"</td><td>\"+(item.labelUrl?\"<a class='orbit-mini-link' href='\"+esc(item.labelUrl)+\"' target='_blank' rel='noopener'>View Label</a>\":\"\\u2014\")+(item.shipmentKind===\"Monthly Parcel\"&&![\"replaced\",\"superseded\"].includes(String(item.completedStatus||\"\").toLowerCase())?\"<br><button type='button' class='secondary' data-pack-reissue='\"+esc(item.packId||\"\")+\"'>Reissue Parcel</button>\":\"\")+\"</td></tr>\"});target.innerHTML=table([\"Member\",\"Shipment\",\"Box\",\"Status\",\"Tracking\",\"Delivery\",\"Label\"],rows,\"No completed shipments found.\")}function fulfilmentAddress(pack){const d=pack.delivery||{};return[d.recipientName,d.addressLine1,d.addressLine2,d.city,d.county,d.postcode].filter(Boolean).join(\", \")}function fulfilmentIssue(pack){const d=pack.delivery||{};return pack.labelError||pack.label_error||(d.postcode?d.addressLine1?d.recipientName?\"Delivery address could not be validated\":\"Recipient name is missing\":\"Address line is missing\":\"Postcode is missing\")}function fulfilmentStage(pack){const raw=String(pack.fulfilmentStatus||pack.fulfilment_status||pack.status||\"\").toLowerCase(),d=pack.delivery||{};return!!!(d.recipientName&&d.addressLine1&&d.city&&d.postcode)||/attention|invalid|failed|error|needs_delivery/.test(raw)||!!(pack.labelError||pack.label_error)?\"attention\":/dispatched|shipped|delivered|fulfilled|completed|replaced|superseded/.test(raw)?\"completed\":pack.trackingNumber||pack.labelUrl||/label_generated|packed|awaiting_dispatch/.test(raw)?\"packed\":\"ready\"}function fulfilmentMonthCellV618(pack){const journey=pack.parcelJourney,number=journey?.monthNumber;return!journey?.available||!Number.isInteger(number)||number<1?\"<td><span title='Parcel history unavailable'>\\u2014</span></td>\":\"<td class='orbit-parcel-month-v618'><strong>Box \"+number+\"</strong>\"+(journey.firstParcel?\"<span class='orbit-first-parcel-v618' title='First parcel: include membership card and lanyard'><span aria-hidden='true'>\\u2605</span><span class='orbit-sr-only'>First parcel: include membership card and lanyard</span></span>\":\"\")+\"</td>\"}function fulfilmentQueueBadgeV667(pack){const key=String(pack?.queueClass||\"current_cycle\"),pair={current_cycle:[\"Current cycle\",\"good\"],older_outstanding:[\"Older outstanding\",\"warning\"],reissue_replacement:[\"Reissue / replacement\",\"\"],needs_review:[\"Needs review\",\"bad\"]}[key]||[\"Outstanding\",\"\"];return\"<span class='orbit-pill \"+pair[1]+\"' title='\"+esc(pack?.queueReason||\"\")+\"'>\"+esc(pair[0])+\"</span>\"}function fulfilmentMemberQrButtonV826(pack){const journey=pack.parcelJourney,memberNumber=String(pack.memberNumber||\"\").trim();return journey?.available&&journey.monthNumber===1&&journey.firstParcel&&memberNumber?\"<br><button type='button' class='secondary' data-fulfilment-member-qr='\"+esc(memberNumber)+\"' aria-label='Download membership QR PNG for \"+esc(memberNumber)+\"' style='margin-top:6px'>Download QR PNG</button>\":\"\"}function renderFulfilmentTable(packs){const monthly=$2(\"fulfilmentTable\"),attention=$2(\"fulfilmentAttentionTable\");if(!monthly||!attention)return;const blocked=(packs||[]).filter(pack=>fulfilmentStage(pack)===\"attention\"),actionable=(packs||[]).filter(pack=>[\"ready\",\"packed\"].includes(fulfilmentStage(pack))),blockedRows=blocked.map(function(pack){const lookup=pack.memberNumber||pack.email||\"\";return\"<tr><td><strong>\"+esc(pack.memberName||pack.memberNumber||pack.email||\"Member\")+\"</strong><br><span class='orbit-muted'>\"+esc(pack.memberNumber||pack.packId||\"\")+\"</span>\"+fulfilmentMemberQrButtonV826(pack)+\"</td>\"+fulfilmentMonthCellV618(pack)+\"<td><strong>Monthly \"+esc(pack.monthKey||\"parcel\")+\"</strong><br><span class='orbit-muted'>\"+esc(fulfilmentIssue(pack))+\"</span></td><td>\"+esc(fulfilmentAddress(pack)||\"Address incomplete\")+\"</td><td><span class='orbit-pill bad'>Blocked</span></td><td><div class='orbit-row-actions'><button type='button' data-address-action='recharge' data-address-lookup='\"+esc(lookup)+\"' data-address-pack='\"+esc(pack.packId||\"\")+\"'>Sync Recharge</button><button type='button' class='secondary' data-address-action='shopify' data-address-lookup='\"+esc(lookup)+\"' data-address-pack='\"+esc(pack.packId||\"\")+\"'>Sync Shopify</button><button type='button' class='secondary' data-address-action='edit' data-address-lookup='\"+esc(lookup)+\"' data-address-pack='\"+esc(pack.packId||\"\")+\"'>Edit Address</button><button type='button' class='secondary' data-address-action='all' data-address-lookup='\"+esc(lookup)+\"' data-address-pack='\"+esc(pack.packId||\"\")+\"'>Validate Again</button><button type='button' class='secondary' data-member-lookup='\"+esc(lookup)+\"' data-member-pane-target='profile'>Open Member</button><button type='button' class='danger' data-pack-delete='\"+esc(pack.packId||\"\")+\"'>Delete Parcel</button></div></td></tr>\"});attention.innerHTML=table([\"Customer\",\"Box\",\"Shipment\",\"Current address\",\"Status\",\"Actions\"],blockedRows,\"No blocked shipments. Everything is ready to progress.\"),setCountBadge(\"shippingAttentionCount\",blocked.length),text(\"metricFulfilmentAttention\",blocked.length);const rows=actionable.map(function(pack){const stage=fulfilmentStage(pack),canSelect=stage===\"ready\"||stage===\"packed\",action=stage===\"ready\"?\"<button type='button' data-pack-label='generate' data-pack-id='\"+esc(pack.packId||\"\")+\"'>Generate Label</button>\":\"<a class='orbit-button secondary' target='_blank' rel='noopener' href='\"+esc(pack.labelUrl||pack.labelDownloadUrl||\"#\")+\"'>Open Label</a><button type='button' data-pack-dispatch='\"+esc(pack.packId||\"\")+\"'>Mark Dispatched</button>\",prepState=String(pack.preparationEmailStatus||\"\").toLowerCase(),prepLabel=stage===\"packed\"?prepState===\"sent\"?\" \\xB7 Preparation email sent\":prepState===\"failed\"||prepState===\"missing_email\"?\" \\xB7 Preparation email needs attention\":prepState===\"skipped_test_mode\"?\" \\xB7 Test mode: no customer email\":\"\":\"\";return\"<tr data-fulfilment-stage='\"+stage+\"'><td>\"+(canSelect?\"<input type='checkbox' class='orbit-pack-select' data-pack-stage='\"+esc(stage)+\"' data-pack-select='\"+esc(pack.packId||\"\")+\"'>\":\"\")+\"</td><td><strong>\"+esc(pack.memberName||pack.memberNumber||pack.email||\"Member\")+\"</strong><br><span class='orbit-muted'>\"+esc(pack.memberNumber||pack.packId||\"\")+\"</span>\"+fulfilmentMemberQrButtonV826(pack)+\"</td>\"+fulfilmentMonthCellV618(pack)+\"<td><strong>Monthly \"+esc(pack.monthKey||\"parcel\")+\"</strong><br><span class='orbit-muted'>\"+(stage===\"ready\"?\"Ready for label\":\"Packed \\u2014 awaiting dispatch\"+(pack.labelCost!=null?\" \\xB7 Actual postage \"+money(pack.labelCost):\"\")+prepLabel)+\"</span><br>\"+fulfilmentQueueBadgeV667(pack)+(pack.queueReason?\"<br><small class='orbit-muted'>\"+esc(pack.queueReason)+\"</small>\":\"\")+\"</td><td>\"+(stage===\"ready\"?\"<span class='orbit-pill warning'>Ready for label</span>\":\"<span class='orbit-pill good'>Packed</span>\")+\"</td><td>\"+esc(fulfilmentAddress(pack)||\"\\u2014\")+\"</td><td>\"+(pack.trackingNumber?\"<a href='\"+esc(pack.trackingUrl||\"https://www.royalmail.com/track-your-item#/tracking-results/\"+encodeURIComponent(pack.trackingNumber))+\"' target='_blank' rel='noopener'>\"+esc(pack.trackingNumber)+\"</a>\":\"\\u2014\")+\"</td><td><div class='orbit-row-actions'>\"+action+(pack.replacementOfPackId?\"<button type='button' class='secondary' data-pack-undo-reissue='\"+esc(pack.packId||\"\")+\"'>Undo Reissue</button>\":\"<button type='button' class='secondary' data-pack-reissue='\"+esc(pack.packId||\"\")+\"'>Reissue Parcel</button>\")+\"<button type='button' class='danger' data-pack-delete='\"+esc(pack.packId||\"\")+\"'>\"+(pack.replacementOfPackId?\"Cancel Replacement\":\"Delete Parcel\")+\"</button></div></td></tr>\"});monthly.innerHTML=table([\"Select\",\"Customer\",\"Box\",\"Shipment\",\"Status\",\"Delivery\",\"Tracking\",\"Action\"],rows,\"No monthly parcels are ready or awaiting dispatch.\"),setCountBadge(\"shippingMonthlyCount\",actionable.length);const generate=$2(\"generateMonthlyDispatchButton\");generate&&(generate.disabled=!0),syncMonthlyBatchButtons()}function renderFulfilmentLabelsV516(monthlyPacks,historyPacks,specialShipments){const target=$2(\"fulfilmentLabelsTable\");if(!target)return;const rows=[],seen=new Set,add=(item,kind)=>{const labelUrl=String(item?.labelUrl||item?.label_url||item?.labelDownloadUrl||item?.label_download_url||\"\").trim();if(!labelUrl)return;const tracking=String(item?.trackingNumber||item?.tracking_number||\"\").trim(),parcelId=String(item?.packId||item?.shipmentId||item?.id||item?._id||\"\").trim(),key=labelUrl||tracking||parcelId;if(!key||seen.has(key))return;seen.add(key);const customer=item?.memberName||item?.member_name||item?.memberNumber||item?.member_number||item?.memberEmail||item?.member_email||item?.email||\"Member\",memberNumber=item?.memberNumber||item?.member_number||\"\",title=item?.title||item?.prizeName||item?.prize_name||(kind===\"Monthly\"?\"Monthly \"+(item?.monthKey||item?.month_key||\"parcel\"):kind),generated=item?.labelGeneratedAt||item?.label_generated_at||item?.labelCreatedAt||item?.label_created_at||item?.updatedAt||item?.updated_at||\"\";rows.push({kind,customer,memberNumber,title,parcelId,tracking,labelUrl,generated})};[...monthlyPacks||[],...historyPacks||[]].forEach(item=>add(item,\"Monthly\")),(specialShipments||[]).forEach(item=>{const text2=[item?.type,item?.source,item?.sourceType,item?.source_type,item?.title].filter(Boolean).join(\" \");add(item,/loyalty|reward|points/i.test(text2)?\"Loyalty\":/member_store|members_combined_basket|members store|members basket/i.test(text2)?\"Shop\":\"Prize\")}),rows.sort((a,b)=>Date.parse(b.generated||0)-Date.parse(a.generated||0));const html=rows.map(row=>\"<tr><td><span class='orbit-pill'>\"+esc(row.kind)+\"</span></td><td><strong>\"+esc(row.customer)+\"</strong>\"+(row.memberNumber?\"<br><span class='orbit-muted'>\"+esc(row.memberNumber)+\"</span>\":\"\")+\"</td><td><strong>\"+esc(row.title)+\"</strong>\"+(row.parcelId?\"<br><span class='orbit-muted'>\"+esc(row.parcelId)+\"</span>\":\"\")+\"</td><td>\"+(row.tracking?esc(row.tracking):\"\\u2014\")+\"</td><td>\"+(row.generated?esc(prettyDate(row.generated)):\"\\u2014\")+\"</td><td><a class='orbit-button secondary' target='_blank' rel='noopener' href='\"+esc(row.labelUrl)+\"'>Open Label</a></td></tr>\");target.innerHTML=table([\"Type\",\"Customer\",\"Parcel\",\"Tracking\",\"Generated\",\"Label\"],html,\"No generated labels are currently recorded.\"),setCountBadge(\"shippingLabelsCount\",rows.length)}function renderSpecialShipments(shipments){const shipmentText=item=>String(item.type||\"\")+\" \"+String(item.source||item.sourceType||item.source_type||\"\")+\" \"+String(item.title||\"\"),isLoyalty=item=>/loyalty|reward|points/i.test(shipmentText(item)),isShop=item=>/member_store|members_combined_basket|members store|members basket/i.test(shipmentText(item)),renderInto=(targetId,items,empty)=>{const target=$2(targetId);if(!target)return;const groups={attention:[],ready:[],packed:[]};items.filter(item=>specialShipmentStage(item)!==\"completed\").forEach(item=>groups[specialShipmentStage(item)].push(item));const row=(item,stage)=>{const address=[item.delivery?.recipientName,item.delivery?.addressLine1,item.delivery?.addressLine2,item.delivery?.city,item.delivery?.county,item.delivery?.postcode].filter(Boolean).join(\", \"),action=stage===\"attention\"?\"<button type='button' data-member-lookup='\"+esc(item.memberNumber||item.email||\"\")+\"'>Fix Address</button>\":stage===\"ready\"?\"<button type='button' data-special-label='\"+esc(item.shipmentId||\"\")+\"'>Generate Label</button>\":\"<a class='orbit-mini-link' target='_blank' rel='noopener' href='\"+esc(item.labelUrl||\"#\")+\"'>Open Label</a><button type='button' data-special-dispatch='\"+esc(item.shipmentId||\"\")+\"'>Mark Dispatched</button>\",pill=stage===\"attention\"?\"<span class='orbit-pill bad'>Needs attention</span>\":stage===\"ready\"?\"<span class='orbit-pill warning'>Ready for label</span>\":\"<span class='orbit-pill good'>Packed</span>\",deleteAction=item.source===\"monthly_draw\"?\"\":\"<button type='button' class='danger' data-special-delete='\"+esc(item.shipmentId||\"\")+\"'>Delete Parcel</button>\";return\"<tr><td><input type='checkbox' data-special-shipment-select value='\"+esc(item.shipmentId||\"\")+\"'></td><td><strong>\"+esc(item.type||\"Shipment\")+\"</strong><br><span class='orbit-muted'>\"+esc(item.shipmentId||\"\")+\"</span></td><td>\"+esc(item.title||\"\\u2014\")+(Array.isArray(item.contents)&&item.contents.length?\"<br><small>\"+esc(item.contents.map(c=>(c.quantity||1)+\" \\xD7 \"+(c.name||\"Item\")).join(\", \"))+\"</small>\":\"\")+\"</td><td>\"+esc(item.memberNumber||\"\\u2014\")+\"<br><span class='orbit-muted'>\"+esc(item.memberName||item.email||\"\")+\"</span></td><td>\"+(item.deliveryComplete?esc(address):\"<span class='orbit-pill bad'>Address required</span>\")+\"</td><td>\"+pill+(item.trackingNumber?\"<br><a class='orbit-mini-link' target='_blank' rel='noopener' href='\"+esc(item.trackingUrl||\"https://www.royalmail.com/track-your-item#/tracking-results/\"+encodeURIComponent(item.trackingNumber))+\"'>\"+esc(item.trackingNumber)+\"</a>\":\"\")+\"</td><td><div class='orbit-row-actions'>\"+action+deleteAction+\"</div></td></tr>\"},section=(title,copy,key)=>groups[key].length?\"<div class='orbit-fulfilment-group'><div class='orbit-fulfilment-group-head'><h3>\"+title+\" <span>\"+groups[key].length+\"</span></h3><p>\"+copy+\"</p></div>\"+table([\"Select\",\"Type\",\"Contents\",\"Customer\",\"Delivery\",\"Status\",\"Next action\"],groups[key].map(i=>row(i,key)),empty)+\"</div>\":\"\";target.innerHTML=section(\"Needs attention\",\"Fix the blocker before postage.\",\"attention\")+section(\"Ready for label\",\"Generate postage for these shipments.\",\"ready\")+section(\"Packed \\u2014 awaiting dispatch\",\"Labels exist. Dispatch when parcels leave Orbit.\",\"packed\")||\"<div class='orbit-empty'><strong>\"+esc(empty)+\"</strong></div>\"},loyalty=(shipments||[]).filter(isLoyalty),shop=(shipments||[]).filter(item=>!isLoyalty(item)&&isShop(item)),prizes=(shipments||[]).filter(item=>!isLoyalty(item)&&!isShop(item));renderInto(\"loyaltyShipmentsTable\",loyalty,\"No loyalty orders are waiting.\"),renderInto(\"shopShipmentsTable\",shop,\"No Members Shop orders are waiting.\"),renderInto(\"specialShipmentsTable\",prizes,\"No prize shipments are waiting.\"),setCountBadge(\"shippingLoyaltyCount\",loyalty.filter(i=>specialShipmentStage(i)!==\"completed\").length),setCountBadge(\"shippingShopCount\",shop.filter(i=>specialShipmentStage(i)!==\"completed\").length),setCountBadge(\"shippingPrizeCount\",prizes.filter(i=>specialShipmentStage(i)!==\"completed\").length)}function selectedSpecialShipmentIds(pane=state.currentShippingPane){const root=document.querySelector('[data-shipping-pane=\"'+String(pane||\"prizes\").replace(/\"/g,\"\")+'\"]')||document;return Array.from(root.querySelectorAll(\"[data-special-shipment-select]:checked\")).map(box=>String(box.value||\"\").trim()).filter(Boolean)}async function previewSpecialShippingCost(button2,pane=state.currentShippingPane){const shipmentIds=selectedSpecialShipmentIds(pane);if(!shipmentIds.length)throw new Error(\"Select at least one special shipment first.\");setLoading(button2,!0);try{const estimate=await api(\"/api/admin/shipping/special-shipments/estimate\",{method:\"POST\",body:JSON.stringify({shipmentIds})}),target=$2(pane===\"shop\"?\"shopShippingCostPreview\":\"specialShippingCostPreview\");target&&(target.hidden=!1,target.textContent=estimate.testLabelMode?estimate.count+\" test label(s) \\xB7 \\xA30.00 total\":estimate.success?estimate.count+\" label(s) \\xB7 \"+money(estimate.perLabel)+\" each \\xB7 \"+money(estimate.total)+\" total\":estimate.error||\"No live rate returned.\",target.classList.toggle(\"error\",!estimate.success));const generate=$2(pane===\"shop\"?\"generateShopLabelsButton\":\"generateSpecialLabelsButton\");return generate&&(generate.disabled=!estimate.success),estimate}finally{setLoading(button2,!1)}}async function generateSpecialLabels(button2,ids,pane=state.currentShippingPane){const shipmentIds=ids||selectedSpecialShipmentIds(pane);if(!shipmentIds.length)throw new Error(\"Select at least one special shipment first.\");const estimate=await api(\"/api/admin/shipping/special-shipments/estimate\",{method:\"POST\",body:JSON.stringify({shipmentIds})}),totalText=estimate.testLabelMode?\"\\xA30.00\":estimate.total==null?\"an unavailable live estimate\":money(estimate.total);if(confirm(\"You are about to generate \"+shipmentIds.length+\" special-shipment label(s) for \"+totalText+\". Continue?\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/shipping/special-shipments/labels\",{method:\"POST\",body:JSON.stringify({shipmentIds,confirmPurchase:!0})}),target=$2(pane===\"shop\"?\"shopShippingResult\":\"specialShippingResult\");target&&(target.hidden=!1,target.textContent=\"Generated \"+Number(result.generatedCount||0)+\" label(s). \"+Number(result.skippedCount||0)+\" skipped.\"),await reloadSpecialShipments()}finally{setLoading(button2,!1)}}}async function dispatchSpecialShipments(button2,ids,pane=state.currentShippingPane){const shipmentIds=ids||selectedSpecialShipmentIds(pane);if(!shipmentIds.length)throw new Error(\"Select at least one special shipment first.\");if(confirm(\"Mark \"+shipmentIds.length+\" special shipment(s) as dispatched?\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/shipping/special-shipments/dispatch\",{method:\"POST\",body:JSON.stringify({shipmentIds})}),target=$2(pane===\"shop\"?\"shopShippingResult\":\"specialShippingResult\");target&&(target.hidden=!1,target.textContent=\"Marked \"+Number(result.dispatchedCount||0)+\" special shipment(s) as dispatched.\"),await reloadSpecialShipments()}finally{setLoading(button2,!1)}}}async function combineSpecialShipments(button2){const shipmentIds=selectedSpecialShipmentIds(\"prizes\");if(shipmentIds.length<2)throw new Error(\"Select at least two unlabelled special shipments for the same member.\");if(confirm(\"Combine \"+shipmentIds.length+\" selected shipments into one parcel? The original rows will be archived into the combined parcel.\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/shipping/special-shipments/combine\",{method:\"POST\",body:JSON.stringify({shipmentIds})});await reloadSpecialShipments(),setNotice2(\"Combined \"+Number(result.combinedCount||shipmentIds.length)+\" shipments into one parcel.\")}finally{setLoading(button2,!1)}}}function renderDrawsTable(draws){const actualMonth=currentMonthKey(),current=draws.find(function(d){return String(d.monthKey||\"\")===actualMonth})||null,latest=draws[0]||null,display=current||latest;renderDrawPoolCountV540(),text(\"drawCurrentMonth\",actualMonth),text(\"drawCurrentPrize\",current?.prizeTitle||prizeTitleValue()||\"Monthly member prize\"),text(\"drawLatestWinner\",display?.winnerMemberNumber?(display.winnerName||display.winnerMemberNumber)+\" \\xB7 \"+display.winnerMemberNumber:\"No winner selected\"),text(\"drawNotificationState\",display?humanDrawStatus(display.notificationStatus||display.emailStatus||\"recorded\"):\"Not sent\"),text(\"drawDispatchState\",display?humanDrawStatus(display.fulfilmentStatus||display.status||\"ready_for_label\"):\"No shipment\");const rows=draws.map(draw=>\"<tr><td><strong>\"+esc(draw.monthKey||\"\\u2014\")+\"</strong><br><small>\"+esc(draw.drawId||\"\")+\"</small></td><td>\"+esc(draw.prizeTitle||\"\\u2014\")+\"</td><td>\"+esc(draw.winnerName||draw.winnerMemberNumber||\"\\u2014\")+\"<br><small>\"+esc(draw.winnerMemberNumber||\"\")+\"</small></td><td>\"+esc(humanDrawStatus(draw.notificationStatus||draw.emailStatus||\"Not recorded\"))+(draw.broadcastStatus&&draw.emailStatus?\"<br><small>Broadcast: \"+esc(humanDrawStatus(draw.broadcastStatus))+\" \\xB7 Email: \"+esc(humanDrawStatus(draw.emailStatus))+\"</small>\":\"\")+\"</td><td><span class='orbit-pill'>\"+esc(humanDrawStatus(draw.fulfilmentStatus||draw.status||\"ready_for_label\"))+\"</span>\"+(draw.trackingNumber?\"<br><small>\"+esc(draw.trackingNumber)+\"</small>\":\"\")+\"</td><td>\"+(draw.fairness?.commitmentHash?\"<strong>Provably fair</strong><br><small>\"+esc(String(draw.fairness.commitmentHash).slice(0,12))+\"\\u2026 \\xB7 round \"+esc(String(draw.fairness.beacon?.round||\"\"))+\"</small>\":\"<small>Legacy / no proof</small>\")+\"</td><td>\"+esc(prettyShortDate(draw.drawnAt||draw.createdAt))+\"</td><td><div class='orbit-row-actions'><button type='button' data-module-nav='shipping' data-shipping-tab='prizes'>Open Prize Fulfilment</button></div></td></tr>\"),drawHistoryHtml=table([\"Month\",\"Prize\",\"Winner\",\"Notification\",\"Dispatch\",\"Fairness\",\"Drawn\",\"Actions\"],rows,\"No previous draws recorded yet.\"),target=$2(\"drawsTable\");target&&(target.innerHTML=drawHistoryHtml);const v77Target=$2(\"drawHistoryTableV77\");v77Target&&(v77Target.innerHTML=drawHistoryHtml)}function renderGoldenTable(tickets){const liveStatuses=[\"available\",\"active\",\"assigned\",\"claimed\",\"redeemed\",\"awaiting_fulfilment\"],historyStatuses=[\"fulfilled\",\"void\",\"expired\",\"cancelled\",\"disabled\"];function row(ticket,history3){const raw=String(ticket.status||\"available\").toLowerCase(),member=ticket.memberNumber?\"<strong>\"+esc(ticket.memberNumber)+\"</strong>\":\"Unclaimed\",actions=history3?\"<button class='secondary' data-ticket-status='available' data-ticket-code='\"+esc(ticket.code)+\"'>Restore</button>\":\"<button class='secondary' data-golden-qr='png' data-ticket-code='\"+esc(ticket.code)+\"'>40mm QR</button><button class='secondary' data-golden-copy='\"+esc(ticket.claimUrl||\"\")+\"'>Copy Claim Link</button>\"+(raw===\"available\"?\"<button data-ticket-status='void' data-ticket-code='\"+esc(ticket.code)+\"'>Disable</button>\":\"\")+\"<button class='danger' data-ticket-delete='\"+esc(ticket.code)+\"'>Delete</button>\"+([\"claimed\",\"redeemed\",\"awaiting_fulfilment\"].includes(raw)?\"<button data-ticket-status='fulfilled' data-ticket-code='\"+esc(ticket.code)+\"'>Mark Fulfilled</button>\":\"\");return\"<tr><td><strong>\"+esc(ticket.code||\"\\u2014\")+\"</strong><br><small>Created \"+esc(prettyShortDate(ticket.createdAt))+\"</small></td><td>\"+esc(ticket.prizeTitle||\"\\u2014\")+\"</td><td><span class='orbit-pill'>\"+esc(humanDrawStatus(raw))+\"</span><br><small>Expiry: \"+esc(ticket.expiresAt?prettyShortDate(ticket.expiresAt):\"No expiry\")+\"</small></td><td>\"+member+\"<br><small>\"+esc(ticket.redeemedAt?prettyShortDate(ticket.redeemedAt):\"Not claimed\")+\"</small></td><td><div class='orbit-row-actions orbit-golden-actions'>\"+actions+\"</div></td></tr>\"}const active=tickets.filter(function(t){return liveStatuses.includes(String(t.status||\"available\").toLowerCase())}),history2=tickets.filter(function(t){return historyStatuses.includes(String(t.status||\"\").toLowerCase())}),activeHtml=table([\"Ticket\",\"Prize\",\"Status\",\"Claim\",\"Actions\"],active.map(function(t){return row(t,!1)}),\"No active Golden Tickets awaiting claim or fulfilment.\"),historyHtml=table([\"Ticket\",\"Prize\",\"Final Status\",\"Claim\",\"Actions\"],history2.map(function(t){return row(t,!0)}),\"No completed or retired Golden Tickets yet.\");$2(\"goldenTable\")&&($2(\"goldenTable\").innerHTML=activeHtml),$2(\"goldenContentTable\")&&($2(\"goldenContentTable\").innerHTML=activeHtml),$2(\"goldenContentTableRuntime\")&&($2(\"goldenContentTableRuntime\").innerHTML=activeHtml),$2(\"goldenTicketHistoryRuntime\")&&($2(\"goldenTicketHistoryRuntime\").innerHTML=historyHtml)}function attendanceEventDateV367(event){return event?.endAt||event?.end_at||event?.end?.utc||event?.end?.local||event?.startAt||event?.start_at||event?.start?.local||event?.start?.utc||\"\"}function isPastAttendanceEventV367(event){const value=attendanceEventDateV367(event),time=value?new Date(value).getTime():NaN;return!!event?.archived||Number.isFinite(time)&&time<Date.now()}function attendanceHistoryTableV367(events){const rows=(events||[]).map(function(event){const attendance=event.attendance||{},eventId=event.eventbriteEventId||event.id||\"\",date=event.startAt||event.start_at||event.start?.local||event.start?.utc||\"\",claimed=Number(attendance.claimed||0),checkedIn=Number(attendance.checkedIn||0),notCheckedIn=Number(attendance.notCheckedIn??Math.max(claimed-checkedIn,0));return\"<tr><td><strong>\"+esc(event.name||\"Orbit event\")+\"</strong><small>\"+esc(event.venueName||\"Venue coming soon\")+\"</small></td><td>\"+esc(prettyDate(date))+\"</td><td>\"+esc(claimed)+\"</td><td><strong>\"+esc(checkedIn)+\"</strong></td><td>\"+esc(notCheckedIn)+\"</td><td>\"+esc(prettyShortDate(attendance.lastCheckInAt))+\"</td><td><button class='secondary' type='button' data-report-attendance-event='\"+esc(eventId)+\"'>View Full Event Data</button></td></tr>\"}).join(\"\");return rows?\"<table><thead><tr><th>Event</th><th>Date</th><th>Expected</th><th>Checked In</th><th>Not Checked In</th><th>Last Check-In</th><th>Action</th></tr></thead><tbody>\"+rows+\"</tbody></table>\":\"<div class='orbit-empty-state'><strong>No past event records yet</strong><span>Completed shows will appear here automatically.</span></div>\"}let attendanceViewV6001=\"live\";function setAttendanceViewV6001(view=\"live\"){attendanceViewV6001=view===\"past\"?\"past\":\"live\",document.querySelectorAll(\"[data-attendance-view-v6001]\").forEach(button2=>{const active=button2.dataset.attendanceViewV6001===attendanceViewV6001;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-current\",active?\"page\":\"false\")}),document.querySelectorAll(\"[data-attendance-pane-v6001]\").forEach(pane=>pane.hidden=pane.dataset.attendancePaneV6001!==attendanceViewV6001)}document.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-attendance-view-v6001]\");button2&&setAttendanceViewV6001(button2.dataset.attendanceViewV6001)});function comparePastAttendanceV828(a,b){const stamp=e=>{for(const value of[e?.endAt,e?.end_at,e?.end?.utc,e?.end?.local,e?.startAt,e?.start_at,e?.start?.utc,e?.start?.local]){const n=Date.parse(value);if(Number.isFinite(n))return n;}return -Infinity;};return stamp(b)-stamp(a)||String(a?.eventbriteEventId||a?.id||a?.name||'').localeCompare(String(b?.eventbriteEventId||b?.id||b?.name||''));}function renderAttendanceCentre(data){const statusTarget=$2(\"attendanceStatus\"),tableTarget=$2(\"attendanceEventsTable\"),pastTarget=$2(\"attendancePastEventsTable\"),events=data?.events||[],upcomingEvents=events.filter(event=>!isPastAttendanceEventV367(event)),pastEvents=events.filter(isPastAttendanceEventV367).sort(comparePastAttendanceV828),totalClaimed=events.reduce((sum,event)=>sum+Number(event.attendance?.claimed||0),0),totalCheckedIn=events.reduce((sum,event)=>sum+Number(event.attendance?.checkedIn||0),0),totalOutstanding=Math.max(totalClaimed-totalCheckedIn,0),eventSelect=$2(\"attendanceEventSelect\");if(eventSelect){const current=eventSelect.value;eventSelect.innerHTML=\"<option value=''>Choose an upcoming event</option>\"+upcomingEvents.map(e=>\"<option value='\"+esc(e.eventbriteEventId||e.id||\"\")+\"'>\"+esc(e.name||\"Orbit event\")+\"</option>\").join(\"\"),current&&upcomingEvents.some(e=>String(e.eventbriteEventId||e.id||\"\")===String(current))&&(eventSelect.value=current);const syncButton=$2(\"attendanceSyncButton\");syncButton&&(syncButton.disabled=!eventSelect.value,syncButton.title=eventSelect.value?\"Sync the selected event's door data\":\"Choose an upcoming event first\")}if(statusTarget&&(statusTarget.innerHTML=\"<div class='orbit-communications-status-card'><span>Claimed Tickets</span><strong>\"+esc(totalClaimed)+\"</strong><small>Across synced Orbit events</small></div><div class='orbit-communications-status-card'><span>Checked In</span><strong>\"+esc(totalCheckedIn)+\"</strong><small>Successful door scans</small></div><div class='orbit-communications-status-card'><span>Upcoming Events</span><strong>\"+esc(upcomingEvents.length)+\"</strong><small>Live operations only</small></div><div class='orbit-communications-status-card'><span>Scanner</span><strong>Live</strong><small>Open scanner requires ADMIN_SECRET</small></div>\"),!tableTarget)return;if(pastTarget&&(pastTarget.innerHTML=attendanceHistoryTableV367(pastEvents)),setAttendanceViewV6001(attendanceViewV6001),!events.length){tableTarget.innerHTML=\"<p class='orbit-muted'>No attendance events loaded yet. Sync Eventbrite events first, then issue tickets.</p>\";return}const eventRows=function(list){return list.map(function(event){const attendance=event.attendance||{},claimed=Number(attendance.claimed||0),checkedIn=Number(attendance.checkedIn||0),notCheckedIn=Number(attendance.notCheckedIn??Math.max(claimed-checkedIn,0)),eventId=event.eventbriteEventId||event.id||\"\",date=event.startAt||event.start_at||event.start?.local||event.start?.utc||\"\";return\"<tr><td><strong>\"+esc(event.name||\"Orbit event\")+\"</strong><small>\"+esc(event.venueName||\"Venue coming soon\")+\"</small></td><td>\"+esc(prettyDate(date))+\"</td><td>\"+esc(claimed)+\"</td><td><strong>\"+esc(checkedIn)+\"</strong></td><td>\"+esc(notCheckedIn)+\"</td><td>\"+esc(prettyShortDate(attendance.lastCheckInAt))+\"</td><td><button class='secondary orbit-attendance-detail-button' type='button' data-attendance-event='\"+esc(eventId)+\"'>View Full Event Data</button></td></tr>\"}).join(\"\")},tableFor=function(list,empty){return list.length?\"<table><thead><tr><th>Event</th><th>Date</th><th>Expected</th><th>Checked In</th><th>Not Checked In</th><th>Last Check-In</th><th>Action</th></tr></thead><tbody>\"+eventRows(list)+\"</tbody></table>\":\"<div class='orbit-empty-state'><strong>\"+esc(empty)+\"</strong></div>\"};tableTarget.innerHTML=\"<div class='orbit-attendance-event-groups'><section>\"+tableFor(upcomingEvents,\"No upcoming attendance events.\")+\"</section></div>\",tableTarget.querySelectorAll(\"[data-attendance-event]\").forEach(function(button2){button2.addEventListener(\"click\",async function(){try{const scrollY=window.scrollY;setLoading(button2,!0),window.scrollTo(0,scrollY),await loadAttendanceDetail(button2.getAttribute(\"data-attendance-event\")),window.scrollTo(0,scrollY),await new Promise(resolve=>requestAnimationFrame(()=>requestAnimationFrame(resolve)));const detailNode=$2(\"attendanceDetailTable\");detailNode&&(detailNode.scrollIntoView({behavior:\"smooth\",block:\"start\"}),detailNode.classList.add(\"orbit-attendance-highlight\"),setTimeout(()=>detailNode.classList.remove(\"orbit-attendance-highlight\"),1600)),setNotice2(\"Full event data loaded.\")}catch(err){console.error(err),setNotice2(err.message,!0)}finally{setLoading(button2,!1)}})})}document.addEventListener(\"click\",async event=>{const button2=event.target.closest(\"[data-report-attendance-event]\");if(button2)try{setLoading(button2,!0),await loadAttendanceDetail(button2.dataset.reportAttendanceEvent),$2(\"attendanceDetailTable\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"})}catch(error){setNotice2(error.message||error,!0)}finally{setLoading(button2,!1)}});function attendanceDisplayNameV464(value){return String(value??\"\").replace(/\\bb'([^']*)'/g,\"$1\").replace(/\\bb\"([^\"]*)\"/g,\"$1\").replace(/\\s+/g,\" \").trim()}function attendanceDetailMarkup(detail){const event=detail?.event||{},summary=detail?.summary||{},financials=detail?.financials||{},addOns=detail?.addOns||{},rows=detail?.attendees||[],money2=v=>\"\\xA3\"+Number(v||0).toLocaleString(\"en-GB\",{minimumFractionDigits:2,maximumFractionDigits:2}),sourceLabel=row=>row.sourceLabel||{eventbrite:\"Eventbrite\",orbit:\"Orbit\",orbit_member:\"Member\",carer:\"Carer\",door:\"Door\"}[row.source]||\"External\",explicitSlotFor=row=>{const t=String(row.ticketType||\"\").toLowerCase();return/(?:^|\\D)10(?::?00)?\\s*(?:am)?(?:\\D|$)|early\\s*bird/.test(t)?\"10:00\":/(?:^|\\D)12(?::?00)?\\s*(?:pm)?(?:\\D|$)/.test(t)?\"12:00\":/(?:^|\\D)(?:2(?::?00)?\\s*pm|14(?::?00)?)(?:\\D|$)/.test(t)?\"14:00\":null},isChild=row=>!!row.isChildTicket||/child|under\\s*1[23]|under\\s*10|junior|free\\s*(?:under|child)/i.test(String(row.ticketType||\"\")),orderAdultSlot=new Map;for(const row of rows){const key=String(row.orderId||\"\"),slot=explicitSlotFor(row);!key||!slot||isChild(row)||(orderAdultSlot.has(key)||orderAdultSlot.set(key,new Set),orderAdultSlot.get(key).add(slot))}const slotFor=row=>{const explicit=explicitSlotFor(row);if(explicit)return explicit;if(isChild(row)){const linked=String(row.orderId||\"\")?orderAdultSlot.get(String(row.orderId)):null;return linked?.size===1?[...linked][0]:linked?.size>1?null:\"10:00\"}return null},backendSlots=detail?.timeSlots||null,slotRows=[\"10:00\",\"12:00\",\"14:00\"].map(slot=>backendSlots?.[slot]?{slot,sold:Number(backendSlots[slot].sold||0),checkedIn:Number(backendSlots[slot].checkedIn||0)}:(()=>{const matching=rows.filter(r=>(slotFor(r)||\"10:00\")===slot);return{slot,sold:matching.length,checkedIn:matching.filter(r=>r.checkedIn).length}})()),slotHtml=slotRows.some(x=>x.sold)?\"<div class='orbit-attendance-timeslot-grid'>\"+slotRows.map(x=>\"<article><span>\"+x.slot+\" entry</span><strong>\"+x.sold+\" sold / issued</strong><small>\"+x.checkedIn+\" checked in</small></article>\").join(\"\")+\"</div>\":\"\",eventId=event.eventbriteEventId||\"\",doorRecords=Array.isArray(detail?.doorRecords)?detail.doorRecords:[],recoveryHtml=\"\",doorCorrectionHtml=eventId&&doorRecords.length?\"<section class='orbit-panel orbit-door-correction-v489' data-door-correction-event='\"+esc(eventId)+\"'><div class='orbit-panel-header compact'><div><p class='orbit-kicker'>Door sales audit</p><h3>Door sale corrections</h3><p>Remove an incorrect test/mistake from live Door Sales, add-on and revenue totals without destroying the audit. Removed records can be restored.</p></div></div><div class='orbit-table-wrap'><table><thead><tr><th>When</th><th>Item</th><th>Qty</th><th>Payment</th><th>Amount</th><th>Status</th><th></th></tr></thead><tbody>\"+doorRecords.map(row=>{const id=row.door_entry_id||row.id||\"\",removed=!!(row.voided||row.voided_at);return\"<tr class='\"+(removed?\"orbit-door-record-voided-v489\":\"\")+\"'><td>\"+esc(prettyShortDate(row.created_at))+\"</td><td><strong>\"+esc(row.ticket_type||\"Door sale\")+\"</strong>\"+(row.customer_name?\"<small>\"+esc(row.customer_name)+\"</small>\":\"\")+(row.void_reason?\"<small>Removed: \"+esc(row.void_reason)+\"</small>\":\"\")+\"</td><td>\"+Number(row.quantity||0)+\"</td><td>\"+esc(humanStatus(row.payment_method||\"\\u2014\"))+\"</td><td>\"+money2(row.total_amount||0)+\"</td><td><span class='orbit-status-pill \"+(removed?\"waiting\":\"active\")+\"'>\"+(removed?\"Removed\":\"Active\")+\"</span></td><td><button type='button' class='secondary' data-door-record-correction-v489='\"+esc(id)+\"' data-action='\"+(removed?\"restore\":\"void\")+\"'>\"+(removed?\"Restore\":\"Remove\")+\"</button></td></tr>\"}).join(\"\")+\"</tbody></table></div><small class='orbit-muted'>Removing a record is an Orbit reporting correction only. It does not refund a card/cash payment or alter Eventbrite/Shopify.</small></section>\":\"\";return\"<div class='orbit-attendance-detail-hero'><div><p class='orbit-kicker'>Selected Event</p><h3>\"+esc(event.name||\"Orbit event\")+\"</h3><div class='orbit-attendance-summary-grid'><span><b>\"+esc(summary.claimed||0)+\"</b> Expected</span><span><b>\"+esc(summary.checkedIn||0)+\"</b> Checked in</span><span><b>\"+esc(summary.notCheckedIn||0)+\"</b> Not checked in</span><span><b>\"+esc(addOns.issued||0)+\"</b> Add-ons issued</span><span><b>\"+esc(addOns.claimed||0)+\"</b> Add-ons claimed</span><span><b>\"+esc(addOns.unclaimed||0)+\"</b> Add-ons unclaimed</span><span><b>\"+money2(financials.eventbriteRevenue)+\"</b> Eventbrite sales<small>\"+money2(financials.eventbriteAdmissionRevenue)+\" tickets \\xB7 \"+money2(financials.eventbriteAddOnRevenue)+\" add-ons</small></span><span><b>\"+money2(financials.orbitRevenue)+\"</b> Orbit sales</span><span><b>\"+money2(financials.doorRevenue)+\"</b> Door sales</span><span><b>\"+money2(financials.totalRevenue)+\"</b> Total revenue</span></div></div></div>\"+slotHtml+recoveryHtml+doorCorrectionHtml+(rows.length?\"<table><thead><tr><th>Source</th><th>Holder</th><th>Ticket Type</th><th>Checked In</th><th>Last Scan</th><th>Scans</th></tr></thead><tbody>\"+rows.map(row=>\"<tr><td><span class='orbit-pill'>\"+esc(sourceLabel(row))+\"</span></td><td class='orbit-attendance-holder-v376'><strong>\"+esc(attendanceDisplayNameV464(row.name||row.memberNumber||row.email||\"Ticket holder\"))+\"</strong><small>\"+esc(row.email||row.memberNumber||\"\")+\"</small></td><td>\"+esc(row.ticketType||\"Ticket\")+\"</td><td><strong>\"+(row.checkedIn?\"Yes\":\"No\")+\"</strong></td><td>\"+esc(prettyShortDate(row.checkedInAt))+\"</td><td>\"+esc(row.scanCount||0)+\"</td></tr>\").join(\"\")+\"</tbody></table>\":\"<p class='orbit-muted'>No attendance records for this event yet.</p>\")}function historicalAddOnRecoveryResultMarkupV480(data){const repairable=Number(data?.repairable||0),ambiguous=Number(data?.ambiguous||0),unmatched=Number(data?.unmatched||0),after=Number(data?.projectedClaimed||0)+\" / \"+Number(data?.issued||0)+\" claimed\",warning=ambiguous||unmatched?\"<p class='orbit-muted'><strong>Needs review:</strong> \"+ambiguous+\" ambiguous \\xB7 \"+unmatched+\" unmatched. Orbit will not guess or repair these records automatically.</p>\":\"\",action=repairable>0?\"<div class='orbit-action-row'><button type='button' class='primary' data-addon-recovery-repair>Repair \"+repairable+\" proven claim\"+(repairable===1?\"\":\"s\")+\"</button></div>\":\"<p class='orbit-muted'>No uniquely proven missing claims need repair.</p>\";return\"<div class='orbit-addon-recovery-summary-v480'><p><strong>Current:</strong> \"+Number(data?.alreadyClaimed||0)+\" / \"+Number(data?.issued||0)+\" claimed \\xB7 \"+Number(data?.currentlyUnclaimed||0)+\" unclaimed</p><p><strong>Stored historical scanner evidence:</strong> \"+Number(data?.provenHistoricalScans||0)+\" \\xB7 <strong>safe unique matches:</strong> \"+repairable+\"</p><p><strong>If repaired:</strong> \"+after+\" \\xB7 \"+Number(data?.projectedUnclaimed||0)+\" unclaimed</p>\"+warning+action+\"</div>\"}function wireHistoricalAddOnRecoveryV480(container,eventId,refresh){if(!container||!eventId)return;const section=container.querySelector(\"[data-addon-recovery-event]\");if(!section)return;const previewButton=section.querySelector(\"[data-addon-recovery-preview]\"),result=section.querySelector(\"[data-addon-recovery-result]\"),showPreview=async()=>{setLoading(previewButton,!0);try{const data=await api(\"/api/admin/attendance-reconciliation/\"+encodeURIComponent(eventId)+\"/add-ons/preview\",{cacheMs:0});result.innerHTML=historicalAddOnRecoveryResultMarkupV480(data),result.hidden=!1;const repairButton=result.querySelector(\"[data-addon-recovery-repair]\");repairButton&&repairButton.addEventListener(\"click\",async function(){const count=Number(data.repairable||0);if(!window.confirm(\"Repair \"+count+\" uniquely proven historical add-on claim\"+(count===1?\"\":\"s\")+\"? This changes Orbit's local claim records only and does not change Eventbrite sales or admission check-ins.\"))return;const typed=window.prompt(\"Type REPAIR PROVEN ADD-ON CLAIMS to confirm:\",\"\");if(typed!==\"REPAIR PROVEN ADD-ON CLAIMS\"){setNotice2(\"Historical add-on repair cancelled. Confirmation text did not match.\",!0);return}setLoading(repairButton,!0);try{const repaired=await api(\"/api/admin/attendance-reconciliation/\"+encodeURIComponent(eventId)+\"/add-ons/repair\",{method:\"POST\",body:JSON.stringify({confirmation:typed}),cacheMs:0,timeoutMs:6e4});setNotice2(\"Historical add-on repair complete: \"+Number(repaired.repaired||0)+\" proven claim\"+(Number(repaired.repaired||0)===1?\"\":\"s\")+\" restored.\"),typeof refresh==\"function\"&&await refresh()}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(repairButton,!1)}})}catch(error){result.innerHTML=\"<div class='orbit-empty-state orbit-error-state'><strong>Historical scan check failed</strong><span>\"+esc(error.message||String(error))+\"</span></div>\",result.hidden=!1}finally{setLoading(previewButton,!1)}};previewButton?.addEventListener(\"click\",showPreview)}let systemAddonRecoveryEventsLoadedV507=!1;async function loadSystemAddonRecoveryEventsV507(force=!1){const select=$2(\"systemAddonRecoveryEventV507\");if(!select)return[];if(systemAddonRecoveryEventsLoadedV507&&!force&&select.options.length>1)return[...select.options].map(o=>o.value).filter(Boolean);const previous=select.value;select.disabled=!0;try{const events=((state.eventbrite?.events?.length&&!force?{events:state.eventbrite.events}:await api(\"/api/admin/eventbrite/events?limit=100&metrics=0\",{cacheMs:5e3,timeoutMs:15e3}))?.events||[]).filter(e=>String(e.status||\"\").toLowerCase()!==\"draft\").sort((a,b)=>String(b.startLocal||b.start?.local||b.startUtc||b.start?.utc||b.date||\"\").localeCompare(String(a.startLocal||a.start?.local||a.startUtc||a.start?.utc||a.date||\"\")));return select.innerHTML=\"<option value=''>Choose an event\\u2026</option>\"+events.map(e=>{const id=e.eventbriteEventId||e.eventbrite_event_id||e.id||\"\",label=e.name||e.title||\"Orbit event\",raw=e.startLocal||e.start?.local||e.startUtc||e.start?.utc||e.date||\"\",date=raw?prettyShortDate(raw):\"\";return\"<option value='\"+esc(id)+\"'>\"+esc(label)+(date?\" \\xB7 \"+esc(date):\"\")+\"</option>\"}).join(\"\"),previous&&[...select.options].some(o=>o.value===previous)&&(select.value=previous),systemAddonRecoveryEventsLoadedV507=!0,events}finally{select.disabled=!1}}async function previewSystemAddonRecoveryV507(button2){const select=$2(\"systemAddonRecoveryEventV507\"),result=$2(\"systemAddonRecoveryResultV507\");if(!select||!result)return;if(!select.value&&(await loadSystemAddonRecoveryEventsV507(!1),!select.value)){setNotice2(\"Choose the event whose historical add-on scans you want to check.\",!0),select.focus();return}const eventId=select.value;setLoading(button2,!0);try{const data=await api(\"/api/admin/attendance-reconciliation/\"+encodeURIComponent(eventId)+\"/add-ons/preview\",{cacheMs:0,timeoutMs:3e4});result.innerHTML=historicalAddOnRecoveryResultMarkupV480(data),result.hidden=!1;const repairButton=result.querySelector(\"[data-addon-recovery-repair]\");repairButton&&repairButton.addEventListener(\"click\",async function(){const count=Number(data.repairable||0);if(!window.confirm(\"Repair \"+count+\" uniquely proven historical add-on claim\"+(count===1?\"\":\"s\")+\"? This changes Orbit's local claim records only and does not change Eventbrite sales or admission check-ins.\"))return;const typed=window.prompt(\"Type REPAIR PROVEN ADD-ON CLAIMS to confirm:\",\"\");if(typed!==\"REPAIR PROVEN ADD-ON CLAIMS\"){setNotice2(\"Historical add-on repair cancelled. Confirmation text did not match.\",!0);return}setLoading(repairButton,!0);try{const repaired=await api(\"/api/admin/attendance-reconciliation/\"+encodeURIComponent(eventId)+\"/add-ons/repair\",{method:\"POST\",body:JSON.stringify({confirmation:typed}),cacheMs:0,timeoutMs:6e4});setNotice2(\"Historical add-on repair complete: \"+Number(repaired.repaired||0)+\" proven claim\"+(Number(repaired.repaired||0)===1?\"\":\"s\")+\" restored.\"),await previewSystemAddonRecoveryV507(button2)}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(repairButton,!1)}})}catch(error){result.innerHTML=\"<div class='orbit-empty-state orbit-error-state'><strong>Historical scan check failed</strong><span>\"+esc(error.message||String(error))+\"</span></div>\",result.hidden=!1}finally{setLoading(button2,!1)}}document.addEventListener(\"DOMContentLoaded\",()=>{const select=$2(\"systemAddonRecoveryEventV507\"),button2=$2(\"systemAddonRecoveryPreviewV507\");select?.addEventListener(\"focus\",()=>loadSystemAddonRecoveryEventsV507(!1).catch(error=>setNotice2(error.message||String(error),!0)),{once:!0}),button2?.addEventListener(\"click\",()=>previewSystemAddonRecoveryV507(button2)),document.querySelectorAll('[data-module-nav=\"testing\"]').forEach(nav=>nav.addEventListener(\"click\",()=>setTimeout(()=>loadSystemAddonRecoveryEventsV507(!1).catch(()=>{}),0)))});function wireDoorCorrectionsV489(container,eventId,refresh){!container||!eventId||container.querySelectorAll(\"[data-door-record-correction-v489]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const action=button2.dataset.action,id=button2.dataset.doorRecordCorrectionV489;if(!id)return;let reason=\"\";if(action===\"void\"){if(reason=window.prompt(\"Why are you removing this door sale from the live totals?\",\"Test / incorrect door sale\")||\"\",!reason.trim()||!window.confirm(`Remove this door sale from current attendance, add-on and revenue totals?\n\nOrbit will keep the record in the audit so it can be restored. This does NOT issue a refund.`))return}else if(!window.confirm(\"Restore this door sale to the live totals?\"))return;setLoading(button2,!0);try{await api(\"/api/admin/attendance-corrections/\"+encodeURIComponent(eventId)+\"/door-entry/\"+encodeURIComponent(id),{method:\"POST\",body:JSON.stringify({action,reason}),cacheMs:0,timeoutMs:15e3}),setNotice2(action===\"void\"?\"Door sale removed from live totals. Audit preserved.\":\"Door sale restored to live totals.\"),typeof refresh==\"function\"&&await refresh()}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(button2,!1)}}))}function renderAttendanceDetail(detail){const target=$2(\"attendanceDetailTable\");if(!target)return;target.innerHTML=attendanceDetailMarkup(detail);const eventId=detail?.event?.eventbriteEventId||\"\";wireDoorCorrectionsV489(target,eventId,async()=>{await loadAttendanceDetail(eventId),await loadAttendance()})}function renderEventsTable(events){const rows=events.map(event=>\"<tr><td><strong>\"+esc(event.title||\"Workflow event\")+\"</strong><br><span class='orbit-muted'>\"+esc(event.workflow_event_id||\"\")+\"</span></td><td>\"+esc(event.type||\"\\u2014\")+\"</td><td><span class='orbit-pill'>\"+esc(event.status||\"\\u2014\")+\"</span></td><td>\"+esc(event.message||\"\\u2014\")+\"</td><td>\"+esc(prettyShortDate(event.created_at||event.createdAt))+\"</td></tr>\"),target=$2(\"eventsTable\");target&&(target.innerHTML=table([\"Event\",\"Type\",\"Status\",\"Message\",\"Date\"],rows,\"No workflow events yet.\"))}function renderScheduledRunsTable(runs){const target=$2(\"scheduledRunsTable\");if(!target)return;const rows=runs.map(run=>\"<tr><td><strong>\"+esc(run.workflow_type||\"\\u2014\")+\"</strong><br><span class='orbit-muted'>\"+esc(run.run_key||\"\")+\"</span></td><td>\"+esc(run.month_key||\"\\u2014\")+\"</td><td><span class='orbit-pill'>\"+esc(run.status||\"\\u2014\")+\"</span></td><td>\"+esc(run.source||\"\\u2014\")+\"</td><td>\"+esc(prettyShortDate(run.created_at))+\"</td><td>\"+esc(prettyShortDate(run.finished_at))+\"</td><td>\"+esc(run.summary||run.error||\"\\u2014\")+\"</td></tr>\");target.innerHTML=table([\"Workflow\",\"Month\",\"Status\",\"Source\",\"Created\",\"Finished\",\"Summary\"],rows,\"No scheduled draws yet.\")}function renderSchedulerTestResult(result){const target=$2(\"schedulerTestResult\");if(!target)return;const jobs=Array.isArray(result&&result.jobs)?result.jobs:[],jobLines=jobs.length?jobs.map(job=>\"<li><strong>\"+esc(job.workflowType||\"workflow\")+\"</strong>: \"+esc(job.skipped?\"skipped\":\"run\")+(job.reason?\" <span>(\"+esc(job.reason)+\")</span>\":\"\")+\"</li>\").join(\"\"):\"<li>No workflow jobs were due or run.</li>\";target.innerHTML=\"<p class='orbit-kicker'>Manual Test Result</p><strong>Visible scheduler test completed</strong><small>Checked \"+esc(prettyDate(result&&result.checkedAt))+\" for \"+esc(result&&result.monthKey||\"\\u2014\")+\". Jobs run: \"+esc(result&&result.jobsRun||0)+\".</small><ul>\"+jobLines+\"</ul>\"+(result&&result.visibleAudit&&result.visibleAudit.run_key?\"<small>Audit logged in Scheduled Draws: \"+esc(result.visibleAudit.run_key)+\"</small>\":\"\")}async function runMonthStart(button2){try{setLoading(button2,!0);const result=await api(\"/api/admin/workflows/month-start\",{method:\"POST\",body:JSON.stringify({monthKey:monthKeyValue(),force:!1})}),created=Number(result?.packRun?.createdCount||result?.createdCount||0),skipped=Number(result?.packRun?.skippedCount||result?.skippedCount||0),active=Number(result?.packRun?.activeMemberCount||0),ready=Number(result?.packSummary?.ready||result?.packSummary?.readyForLabel||0),missing=Number(result?.packSummary?.missingAddress||result?.packSummary?.needsDelivery||0),summary=`MONTH START WORKFLOW\n\n\\u2713 `+active+` active member(s) checked\n\\u2713 `+created+` monthly pack row(s) created\n\\u2713 `+skipped+` existing member pack(s) skipped\n\\u2713 `+ready+` pack(s) ready for labels\n`+(missing?\"\\u26A0 \"+missing+\" pack(s) need address attention\":\"\\u2713 No missing address warnings returned\");$2(\"workflowResult\")&&($2(\"workflowResult\").textContent=summary+`\n\nDetailed raw result is hidden from the main view. Use Workflow Events if needed.`);const ordersSummary=\"Latest Month Start: \"+created+\" created, \"+skipped+\" skipped, \"+ready+\" ready for labels\"+(missing?\", \"+missing+\" address issue(s).\":\".\");setMonthStartOrdersResult(ordersSummary,!!missing),setOrdersResult(ordersSummary,!!missing),await Promise.all([loadSummary(),loadFulfilment(),loadEvents(),loadScheduler(),searchMembers(null)]),setNotice2(\"Month-start workflow completed: \"+created+\" created, \"+skipped+\" skipped.\")}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}async function runMidMonthDraw(button2){if(confirm(\"Run the monthly draw now? Orbit will freeze the eligible member pool first, commit that pool to a future independent League of Entropy randomness round, then derive the winner from that public randomness. Once committed, this draw cannot be rerolled. Continue?\"))try{setLoading(button2,!0);const result=await api(\"/api/admin/workflows/mid-month-draw\",{method:\"POST\",body:JSON.stringify({monthKey:monthKeyValue(),prizeTitle:prizeTitleValue(),force:!1}),timeoutMs:6e4}),drawResult=result?.drawRun||result,draw=drawResult?.draw||result?.draw||{},proof=drawResult?.fairness||draw?.fairness||{},winner=draw?.winnerName||result?.winner?.name||result?.winnerName||draw?.winnerMemberNumber||\"Winner recorded\",resultTarget=$2(\"monthlyDrawResult\")||$2(\"workflowResult\");resultTarget&&(resultTarget.textContent=\"Monthly draw completed. Winner: \"+winner+\". \"+(proof?.commitmentHash?\"Frozen entries: \"+Number(proof.entrantCount||0)+\". Public randomness round: \"+String(proof.beacon?.round||\"recorded\")+\". Commitment: \"+String(proof.commitmentHash).slice(0,16)+\"\\u2026 . \":\"\")+\"The recorded winner cannot be rerolled. Winner history has been saved and the parcel is ready under Prize Fulfilment.\"),await Promise.all([loadSummary(),loadDraws(),reloadSpecialShipments(),loadScheduler()]),setNotice2(\"Monthly draw completed and Prize Fulfilment refreshed.\")}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}async function runDueAutomations(button2){try{setLoading(button2,!0);const result=await api(\"/api/admin/scheduler/run-due?force=true\",{method:\"POST\",body:JSON.stringify({force:!0}),timeoutMs:12e4});$2(\"workflowResult\").textContent=JSON.stringify(result,null,2),renderSchedulerTestResult(result),await Promise.all([loadSummary(),loadFulfilment(),loadDraws(),loadEvents(),loadScheduler()]),setNotice2(\"Manual scheduled automation test completed and visibly logged in v20.\")}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}async function downloadGoldenTicketQr(code,format,button2){const cleanCode=String(code||\"\").trim(),cleanFormat=String(format||\"png\").toLowerCase()===\"svg\"?\"svg\":\"png\";if(!cleanCode)throw new Error(\"Golden Ticket code is missing.\");setLoading(button2,!0);try{const url=API_BASE+\"/api/admin/golden-tickets/\"+encodeURIComponent(cleanCode)+\"/qr?format=\"+encodeURIComponent(cleanFormat)+\"&secret=\"+encodeURIComponent(secret)+adminSessionQueryV329(),response=await fetch(url,{method:\"GET\"});if(!response.ok){let message=\"Golden Ticket QR download failed.\";try{message=(await response.json())?.error||message}catch{const body=await response.text();body&&(message=body)}throw new Error(message)}const blob=await response.blob(),objectUrl=URL.createObjectURL(blob),anchor=document.createElement(\"a\");anchor.href=objectUrl,anchor.download=cleanCode.toUpperCase()+\"-golden-ticket-qr-40mm.\"+cleanFormat,document.body.appendChild(anchor),anchor.click(),anchor.remove(),window.setTimeout(()=>URL.revokeObjectURL(objectUrl),5e3),setNotice2(\"Golden Ticket \"+cleanFormat.toUpperCase()+\" QR downloaded.\")}finally{setLoading(button2,!1)}}async function copyGoldenTicketClaimLink(value,button2){const link=String(value||\"\").trim();if(!link)throw new Error(\"Claim link is not available yet.\");setLoading(button2,!0);try{if(navigator.clipboard?.writeText)await navigator.clipboard.writeText(link);else{const input=document.createElement(\"textarea\");input.value=link,input.setAttribute(\"readonly\",\"readonly\"),input.style.position=\"fixed\",input.style.opacity=\"0\",document.body.appendChild(input),input.select();const copied=document.execCommand(\"copy\");if(input.remove(),!copied)throw new Error(\"Your browser blocked clipboard access.\")}setNotice2(\"Golden Ticket claim link copied.\")}finally{setLoading(button2,!1)}}async function createGoldenTicket(button2){try{setLoading(button2,!0);const result=await api(\"/api/admin/golden-tickets\",{method:\"POST\",body:JSON.stringify({code:$2(\"goldenTicketCode\")?.value||\"\",prizeTitle:$2(\"goldenTicketPrize\")?.value||\"\",prizeValue:$2(\"goldenTicketValue\")?.value||\"\",imageUrl:$2(\"goldenTicketImageUrl\")?.value||\"\",notes:$2(\"goldenTicketDescription\")?.value||\"\",expiresAt:$2(\"goldenTicketExpiry\")?.value?new Date($2(\"goldenTicketExpiry\").value).toISOString():null})});$2(\"goldenTicketResult\")&&($2(\"goldenTicketResult\").hidden=!1,$2(\"goldenTicketResult\").innerHTML=\"<strong>Golden Ticket saved</strong><span>\"+esc(result.ticket?.code||$2(\"goldenTicketCode\")?.value||\"\")+\" is now available in Ticket Manager.</span>\"),await Promise.all([loadGolden(),loadSummary()]),[\"goldenTicketCode\",\"goldenTicketPrize\",\"goldenTicketValue\",\"goldenTicketExpiry\",\"goldenTicketImageUrl\",\"goldenTicketDescription\"].forEach(id=>{$2(id)&&($2(id).value=\"\")}),setDrawPane(\"golden\"),rememberOrbitSubtab(\"automation\",\"golden\"),window.setTimeout(function(){$2(\"goldenContentTableRuntime\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"})},60),setNotice2(\"Golden Ticket created. Ticket Manager is now open.\")}catch(err){$2(\"goldenTicketResult\")&&($2(\"goldenTicketResult\").hidden=!1,$2(\"goldenTicketResult\").classList.add(\"error\"),$2(\"goldenTicketResult\").innerHTML=\"<strong>Golden Ticket was not created</strong><span>\"+esc(err.message||err)+\"</span>\"),setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}async function updatePackStatus(packId,status){await api(\"/api/admin/monthly-packs/\"+encodeURIComponent(packId)+\"/status\",{method:\"POST\",body:JSON.stringify({fulfilmentStatus:status,status:status===\"fulfilled\"?\"fulfilled\":void 0})}),await Promise.all([loadFulfilment(),loadSummary(),loadEvents()]),setNotice2(\"Pack updated to \"+status+\".\")}async function updateTicketStatus(code,status){await api(\"/api/admin/golden-tickets/\"+encodeURIComponent(code)+\"/status\",{method:\"POST\",body:JSON.stringify({status})}),await Promise.all([loadGolden(),loadSummary(),loadEvents()]),setNotice2(\"Golden Ticket updated to \"+status+\".\")}let selectedMemberLookup=null,selectedMemberProfile=null,addressRecoveryContext={lookup:null,packId:null,delivery:null},activeMemberPane=\"overview\",rechargeMembershipPreviewV473=null;function memberSearchQuery(){return($2(\"memberSearchInput\")?.value||\"\").trim()}function memberSearchStatus(){return($2(\"memberSearchStatus\")?.value||\"all\").trim()}function formatMoney(value,fallback){if(value==null||value===\"\")return fallback||\"\\u2014\";if(String(value).startsWith(\"\\xA3\"))return String(value);const number=Number(value);return Number.isNaN(number)?String(value):\"\\xA3\"+number.toFixed(2)}function memberDate(value){if(!value)return\"\\u2014\";const text2=String(value),date=new Date(value);return Number.isNaN(date.getTime())?text2:/^\\d{4}-\\d{2}-\\d{2}$/.test(text2)?date.toLocaleDateString(\"en-GB\",{day:\"2-digit\",month:\"short\",year:\"numeric\",timeZone:\"UTC\"}):date.toLocaleString(\"en-GB\",{day:\"2-digit\",month:\"short\",year:\"numeric\",hour:\"2-digit\",minute:\"2-digit\",timeZone:\"Europe/London\"})}function memberRetryDateV501(value){if(!value)return\"Recharge retrying automatically\";const date=new Date(value);return Number.isNaN(date.getTime())||date.getTime()<=Date.now()?\"Recharge retrying automatically\":date.toLocaleString(\"en-GB\",{day:\"numeric\",month:\"long\",year:\"numeric\",hour:\"numeric\",minute:\"2-digit\",hour12:!0,timeZone:\"Europe/London\"}).replace(/am|pm/gi,match=>match.toLowerCase())}async function loadMemberSummary(){const target=$2(\"memberSummaryCards\");if(target)try{const data=await api(\"/api/admin/members-summary\");target.innerHTML=\"<button type='button' class='orbit-communications-status-card orbit-member-summary-card' data-member-summary-filter='all'><span>Total Members</span><strong>\"+esc(data.total||0)+\"</strong><small>All</small></button><button type='button' class='orbit-communications-status-card orbit-member-summary-card configured' data-member-summary-filter='active'><span>Active</span><strong>\"+esc(data.active||0)+\"</strong><small>Active</small></button><button type='button' class='orbit-communications-status-card orbit-member-summary-card warning' data-member-summary-filter='pending'><span>Pending</span><strong>\"+esc(data.pending||0)+\"</strong><small>Pending</small></button><button type='button' class='orbit-communications-status-card orbit-member-summary-card' data-member-summary-filter='cancelled'><span>Cancelled</span><strong>\"+esc(data.cancelled||0)+\"</strong><small>Cancelled</small></button>\"}catch(err){target.innerHTML=\"<div class='orbit-notice error'>Member summary unavailable: \"+esc(err.message)+\"</div>\"}}function renderMemberSearchEmpty(){const target=$2(\"memberSearchResults\");target&&(state.memberSearchResult=null,target.innerHTML=\"<div class='orbit-customer-empty-state orbit-customer-search-prompt'><div class='orbit-customer-search-prompt-copy'><strong>Find a member</strong><span>Search by member number, name, email or integration ID, or select a status card above.</span></div></div>\")}let memberSearchSortV496={key:null,direction:\"asc\"};function memberSortValueV496(member,key){return key===\"member\"?String(member.name||member.holderName||member.email||\"\").toLowerCase():key===\"number\"?Number(String(member.memberNumber||\"\").replace(/\\D/g,\"\"))||0:key===\"status\"?String(member.status||\"\").toLowerCase():key===\"price\"?Number(member.currentPrice||String(member.currentPriceFormatted||\"\").replace(/[^0-9.-]/g,\"\"))||0:key===\"renewal\"?member.nextChargeDate?new Date(member.nextChargeDate).getTime():Number.MAX_SAFE_INTEGER:key===\"signup\"?member.signupAt?new Date(member.signupAt).getTime():0:\"\"}function renderMemberSearchResults(result){const target=$2(\"memberSearchResults\");if(!target)return;const members=[...result.members||[]];if(memberSearchSortV496.key){const{key,direction}=memberSearchSortV496;members.sort((a,b)=>{const av=memberSortValueV496(a,key),bv=memberSortValueV496(b,key),cmp=typeof av==\"number\"&&typeof bv==\"number\"?av-bv:String(av).localeCompare(String(bv),\"en-GB\",{numeric:!0,sensitivity:\"base\"});return direction===\"desc\"?-cmp:cmp})}if(!members.length){target.innerHTML=\"<div class='orbit-customer-empty-state'><div><strong>No members found</strong><span>Try a member number, name, email, Recharge subscription ID or Shopify customer ID.</span></div></div>\";return}const sortButton=(key,label)=>{const active=memberSearchSortV496.key===key,arrow=active?memberSearchSortV496.direction===\"asc\"?\" \\u2191\":\" \\u2193\":\"\";return\"<button type='button' class='orbit-member-sort-v496 orbit-admin-table-sort-v497\"+(active?\" active\":\"\")+\"' data-member-sort-v496='\"+key+\"' aria-label='Sort by \"+label+\"' aria-sort='\"+(active?memberSearchSortV496.direction===\"asc\"?\"ascending\":\"descending\":\"none\")+\"'>\"+label+arrow+\"</button>\"},tableHead=\"<div class='orbit-member-table-head'><span>\"+sortButton(\"member\",\"Name / email\")+\"</span><span>\"+sortButton(\"number\",\"Number\")+\"</span><span>\"+sortButton(\"status\",\"Status\")+\"</span><span>\"+sortButton(\"price\",\"Price\")+\"</span><span>\"+sortButton(\"renewal\",\"Renewal\")+\"</span><span>\"+sortButton(\"signup\",\"Sign up date\")+\"</span><span>Action</span></div>\";target.innerHTML=tableHead+members.map(function(member){const active=selectedMemberLookup&&selectedMemberLookup===member.subscriptionId?\" active\":\"\",memberName=member.name||member.holderName||member.email||\"Unknown member\",status=member.statusDisplay||member.status||\"Pending\",statusKey=String(status).toLowerCase().replace(/[^a-z0-9]+/g,\"-\"),renewalDate=member.nextChargeDate?memberDate(member.nextChargeDate):\"No charge scheduled\",renewalAmount=member.nextChargeAmountFormatted||member.currentPriceFormatted||\"\\u2014\",recoveryStatus=String(member.paymentRecoveryStatus||\"\").toLowerCase(),recoveryMeta=recoveryStatus===\"grace\"?[member.paymentFailedAt?\"Failed \"+memberDate(member.paymentFailedAt):\"Payment failed\",member.paymentFailedReason||\"\",member.paymentRetryScheduledAt?\"Retry \"+memberRetryDateV501(member.paymentRetryScheduledAt):\"Retry schedule unavailable\",member.paymentGraceThroughDate?\"Grace to \"+memberDate(member.paymentGraceThroughDate):\"\"].filter(Boolean).join(\" \\xB7 \"):recoveryStatus===\"payment_pending\"?[member.paymentPendingProviderStatus||\"Payment pending\",member.paymentPendingScheduledAt?memberDate(member.paymentPendingScheduledAt):\"\"].filter(Boolean).join(\" \\xB7 \"):\"\",signupDate=member.signupAt?memberDate(member.signupAt):\"\\u2014\",flag=member.supportFlag?\"<span class='orbit-customer-attention-chip'>Needs attention</span>\":\"\",testClass=member.testMember?\" orbit-test-member-row\":\"\",testBadge=member.testMember?\"<span class='orbit-test-member-badge'>TEST MEMBER</span>\":\"\";return\"<article class='orbit-member-result orbit-customer-member-row\"+active+testClass+\"'><span class='orbit-customer-member-identity'><strong>\"+esc(memberName)+\"</strong><small>\"+esc(member.email||\"No email\")+\"</small>\"+testBadge+\"</span><span class='orbit-customer-member-number'>\"+esc(member.memberNumber||\"No member number\")+\"</span><span><em class='orbit-customer-status-pill status-\"+esc(statusKey)+\"'>\"+esc(status)+\"</em></span><span class='orbit-customer-member-price'>\"+esc(member.currentPriceFormatted||\"\\xA30.00\")+\"<small>per month</small></span><span class='orbit-customer-member-renewal'><strong>\"+esc(renewalDate)+\"</strong><small>\"+esc(recoveryMeta||renewalAmount)+\"</small></span><span class='orbit-customer-member-signup'><strong>\"+esc(signupDate)+\"</strong><small>Sign up date</small></span><span class='orbit-customer-member-action'>\"+flag+\"<button type='button' data-member-lookup='\"+esc(member.subscriptionId)+\"'>Open profile \\u2192</button><button type='button' class='secondary' data-member-login-as='\"+esc(member.subscriptionId)+\"'>Login as</button></span></article>\"}).join(\"\"),target.querySelectorAll(\"[data-member-sort-v496]\").forEach(button2=>button2.addEventListener(\"click\",()=>{const key=button2.dataset.memberSortV496;memberSearchSortV496.key===key?memberSearchSortV496.direction=memberSearchSortV496.direction===\"asc\"?\"desc\":\"asc\":memberSearchSortV496={key,direction:\"asc\"},renderMemberSearchResults(state.memberSearchResult||result)}))}async function loginAsMember(lookup,button2){if(!lookup||!confirm(\"Open the Members Area as this member in a new tab? The access link expires in 15 minutes and is recorded in the admin audit log.\"))return;const opened=window.open(\"about:blank\",\"_blank\");if(!opened)throw new Error(\"Your browser blocked the new tab. Allow pop-ups for Orbit Admin and try again.\");try{opened.opener=null}catch{}setLoading(button2,!0);try{const result=await api(\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/login-as\",{method:\"POST\",body:JSON.stringify({returnUrl:\"https://orbitcollectorsclub.com/pages/members-area\"})});opened.location.replace(result.loginUrl),setNotice2(\"Secure member view opened in a new tab. It expires in 15 minutes.\")}catch(error){try{opened.close()}catch{}throw error}finally{setLoading(button2,!1)}}let pendingPermanentDeleteLookup=null;async function loadArchivedMembers(button2){try{setLoading(button2,!0);const q=encodeURIComponent(String($2(\"archivedMemberSearchInput\")?.value||\"\").trim()),data=await api(\"/api/admin/archived-members?q=\"+q+\"&limit=200\",{cacheMs:0}),target=$2(\"archivedMembersList\"),rows=data.members||[];target.innerHTML=rows.length?rows.map(function(member){const lookup=member.subscription_id||member.member_number||member.email,name=member.card_holder_name||member.member_name||member.name||member.email||\"Unknown member\";return\"<article class='orbit-member-result orbit-customer-member-row orbit-archived-member-row'><span class='orbit-customer-member-identity'><strong>\"+esc(name)+\"</strong><small>\"+esc(member.email||\"No email\")+\"</small></span><span class='orbit-customer-member-number'>\"+esc(member.member_number||\"\\u2014\")+\"</span><span><em class='orbit-customer-status-pill'>Archived</em></span><span><small>Archived</small><strong>\"+esc(memberDate(member.archived_at))+\"</strong></span><span class='orbit-customer-member-action'><button type='button' data-member-lookup='\"+esc(lookup)+\"'>Open profile \\u2192</button><button type='button' class='secondary' data-member-login-as='\"+esc(lookup)+\"'>Login as</button><button type='button' class='secondary' data-restore-member='\"+esc(lookup)+\"'>Restore</button><button type='button' class='danger' data-delete-archived-member='\"+esc(lookup)+\"'>Delete Permanently</button></span></article>\"}).join(\"\"):\"<div class='orbit-customer-empty-state'><strong>No archived members found</strong><span>Archived members will appear here.</span></div>\"}finally{setLoading(button2,!1)}}async function archiveSelectedMember(button2){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");if(confirm(\"Archive this member? They will disappear from operational views, but no Orbit data will be deleted and they can be restored.\")){setLoading(button2,!0);try{const archivedLookup=String(selectedMemberLookup);await api(\"/api/admin/members/\"+encodeURIComponent(archivedLookup)+\"/archive\",{method:\"POST\",body:JSON.stringify({})}),state.memberSearchResult&&Array.isArray(state.memberSearchResult.members)&&(state.memberSearchResult.members=state.memberSearchResult.members.filter(function(member){return String(member.subscriptionId||member.memberNumber||member.email||\"\")!==archivedLookup}),state.memberSearchResult.count=state.memberSearchResult.members.length),returnToMemberSearch(),state.memberSearchResult?renderMemberSearchResults(state.memberSearchResult):renderMemberSearchEmpty(),await Promise.all([loadMemberSummary(),loadArchivedMembers()]),setNotice2(\"Member archived and moved to Archived Members. No data was deleted.\")}finally{setLoading(button2,!1)}}}async function openPermanentDeletePreview(lookup,button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/archived-members/\"+encodeURIComponent(lookup)+\"/delete-preview\",{cacheMs:0,timeoutMs:12e4});pendingPermanentDeleteLookup=lookup;const rows=data.records||[];$2(\"memberDeletePreviewBody\").innerHTML=\"<div class='orbit-notice warning'><strong>This deletes Orbit database records only.</strong><span>Shopify, Recharge, Eventbrite and ShipEngine are not touched.</span></div><div class='orbit-delete-member-summary'><strong>\"+esc(data.member.member_number||data.member.email||lookup)+\"</strong><span>\"+Number(data.totalRecords||0)+\" linked record(s) across \"+rows.length+\" collection(s).</span></div><div class='orbit-table-wrap'>\"+table([\"Collection\",\"Records\"],rows.map(x=>\"<tr><td>\"+esc(x.collection)+\"</td><td><strong>\"+Number(x.count||0)+\"</strong></td></tr>\"),\"No linked records found.\")+\"</div>\",$2(\"memberDeleteConfirmInput\").value=\"\",$2(\"confirmPermanentMemberDelete\").disabled=!0,$2(\"memberDeleteResult\").textContent=\"Review the full scan, then type DELETE exactly.\",$2(\"memberDeleteDialog\").showModal()}finally{setLoading(button2,!1)}}async function searchMembers(button2){try{setLoading(button2,!0);const query=encodeURIComponent(memberSearchQuery()),status=encodeURIComponent(memberSearchStatus()),result=await api(\"/api/admin/members/search?q=\"+query+\"&status=\"+status+\"&limit=50\");state.memberSearchResult=result,renderMemberSearchResults(result),await loadMemberSummary(),setNotice2(\"Member search loaded \"+result.count+\" result(s).\")}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}async function loadMemberProfile(lookup,button2){selectedMemberLookup=lookup;try{localStorage.setItem(\"orbitAdminOpenMember\",String(lookup))}catch{}const searchWorkspace=$2(\"memberSearchWorkspace\"),profileWorkspace=$2(\"memberProfileWorkspace\"),panel=$2(\"memberProfilePanel\");searchWorkspace&&(searchWorkspace.hidden=!0),profileWorkspace&&(profileWorkspace.hidden=!1),panel&&(panel.className=\"orbit-member-empty\",panel.innerHTML=\"<div><p class='orbit-kicker'>Loading Member</p><h2>Building member profile...</h2><p>Orbit OS is loading membership, billing, parcels, loyalty and support information.</p></div>\");try{setLoading(button2,!0);const result=await api(\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/profile?monthKey=\"+encodeURIComponent(monthKeyValue()),{timeoutMs:2e4,cacheMs:15e3});selectedMemberProfile=result.profile,renderMemberProfile(result.profile),setNotice2(\"Loaded member profile \"+(result.profile.profile.memberNumber||result.profile.profile.subscriptionId)+\".\")}catch(err){throw searchWorkspace&&(searchWorkspace.hidden=!1),profileWorkspace&&(profileWorkspace.hidden=!0),err}finally{setLoading(button2,!1)}}function returnToMemberSearch(){selectedMemberLookup=null,selectedMemberProfile=null;try{localStorage.removeItem(\"orbitAdminOpenMember\")}catch{}const searchWorkspace=$2(\"memberSearchWorkspace\"),profileWorkspace=$2(\"memberProfileWorkspace\");profileWorkspace&&(profileWorkspace.hidden=!0),searchWorkspace&&(searchWorkspace.hidden=!1),state.memberSearchResult&&renderMemberSearchResults(state.memberSearchResult),document.querySelectorAll(\"#memberSearchResults .orbit-member-result\").forEach(function(card){card.classList.remove(\"active\"),card.blur()}),document.getElementById(\"memberSearchResults\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"}),setNotice2(\"Returned to member search results.\")}function profileDetail(label,value){return\"<div class='orbit-member-detail'><span>\"+esc(label)+\"</span><strong>\"+esc(value||\"\\u2014\")+\"</strong></div>\"}function renderDeliveryAddressCard(delivery){delivery=delivery||{};const lines=[delivery.recipientName,delivery.addressLine1,delivery.addressLine2,delivery.city,delivery.county,delivery.postcode,delivery.country].filter(Boolean),complete=!!(delivery.complete&&lines.length),source=[delivery.source,delivery.sourceOrderName?\"Order \"+delivery.sourceOrderName:\"\",delivery.sourceCheckedAt?\"checked \"+memberDate(delivery.sourceCheckedAt):\"\"].filter(Boolean).join(\" \\xB7 \"),sourceError=delivery.lastError?(delivery.lastErrorStatus?\"HTTP \"+delivery.lastErrorStatus+\": \":\"\")+delivery.lastError+(delivery.lastErrorAt?\" \\xB7 \"+memberDate(delivery.lastErrorAt):\"\"):\"\";return\"<section class='orbit-delivery-address-card\"+(complete?\"\":\" warning\")+\"'><div><p class='orbit-kicker'>Delivery Address</p>\"+(complete?\"\":\"<h3>Address needs attention</h3>\")+\"</div>\"+(complete?\"<address>\"+lines.map(function(line){return\"<span>\"+esc(line)+\"</span>\"}).join(\"\")+\"</address>\":\"<p>No complete delivery address is currently available for this member.</p>\")+(sourceError?\"<div class='orbit-notice warning'><strong>Last address sync problem</strong><br><span>\"+esc(sourceError)+\"</span></div>\":\"\")+\"<small>Orbit checks the latest available delivery address automatically when this profile opens\"+(source?\". Source: \"+esc(source):\"\")+\".</small><div class='orbit-delivery-actions'><button type='button' data-address-action='recharge' data-address-lookup='\"+esc(selectedMemberProfile?.profile?.memberNumber||selectedMemberLookup||\"\")+\"'>Sync Recharge</button><button type='button' class='secondary' data-address-action='shopify' data-address-lookup='\"+esc(selectedMemberProfile?.profile?.memberNumber||selectedMemberLookup||\"\")+\"'>Sync Shopify</button><button type='button' class='secondary' data-address-action='edit' data-address-lookup='\"+esc(selectedMemberProfile?.profile?.memberNumber||selectedMemberLookup||\"\")+\"'>Edit Address</button></div></section>\"}function memberBillingDisplay(profile){const recharge=profile.recharge||{},last=profile.profile?.paymentPresentation?.last,nextDate=recharge.nextChargeDate||null,conflict=!!(last?.paidAt&&nextDate&&new Date(last.paidAt).getTime()>new Date(nextDate).getTime());return{lastCharge:last?last.dateTimeLabel+\" / \"+(last.amount===null?\"Amount unavailable\":formatMoney(last.amount)):\"No successful payment recorded\",nextCharge:nextDate?memberDate(nextDate)+\" / \"+(recharge.currentPriceFormatted||\"\\u2014\"):\"No live next charge returned\",conflict}}function renderMemberTickets(tickets){const items=tickets&&tickets.items||[];return items.length?\"<div class='orbit-member-messages-heading'><div><p class='orbit-kicker'>Issued tickets</p><h3>Member event tickets</h3><p>Unissue or permanently delete an issued member ticket pair. Either action removes the current member + guest claim so an eligible active member can claim the event again.</p></div></div>\"+items.map(function(ticket){const checked=ticket.checkedInAt?\" \\xB7 Checked in \"+esc(memberDate(ticket.checkedInAt)):\"\";return\"<article class='orbit-member-ticket-card'><div><strong>\"+esc(ticket.eventName||\"Orbit event\")+\"</strong><p>\"+esc(ticket.ticketName||\"Member ticket\")+\" \\xB7 \"+esc(ticket.ticketId||\"No ticket ID\")+checked+\"</p><small>Issued \"+esc(memberDate(ticket.issuedAt))+\"</small></div><div class='orbit-action-row'><button type='button' class='secondary' data-member-ticket-action='unissue' data-member-ticket-claim='\"+esc(ticket.claimKey||\"\")+\"'>Undo Issue</button><button type='button' class='danger' data-member-ticket-action='delete' data-member-ticket-claim='\"+esc(ticket.claimKey||\"\")+\"'>Delete Ticket</button></div></article>\"}).join(\"\"):\"<div class='orbit-empty'><strong>No issued member tickets</strong><p>This member has no active Orbit member/guest event tickets. If eligible, they can claim available tickets from the Members Area.</p></div>\"}let memberWalletRequestSeqV767=0;function renderMemberTopUpsV712(rows=[]){return`<section class=\"orbit-panel orbit-member-wallet-admin-v767\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">MEMBER CREDIT \\xB7 LIVE WALLET</p><h3>Manage Member Credit</h3><p>Add spendable Member Credit without charging the member or editing Shopify orders. Every grant is recorded and audited.</p></div></div>\n      <div id=\"memberWalletStatusV767\" class=\"orbit-info-banner info\" role=\"status\" aria-live=\"polite\"><strong>Loading live wallet balance...</strong></div>\n      <form id=\"memberManualCreditFormV767\" class=\"orbit-form-grid\" autocomplete=\"off\">\n        <label>Credit amount (\\xA3)<input name=\"creditAmount\" inputmode=\"decimal\" type=\"number\" min=\"0.01\" max=\"1000\" step=\"0.01\" placeholder=\"e.g. 25.00\" required></label>\n        <label>Reason for credit<input name=\"creditReason\" maxlength=\"300\" placeholder=\"e.g. Customer service goodwill\" required></label>\n        <div class=\"orbit-action-row\"><button type=\"submit\">Add Live Credit</button><span class=\"orbit-muted\">Owner/Admin only. Maximum \\xA31,000 per grant.</span></div>\n      </form>\n      <div id=\"memberWalletLedgerV767\" aria-live=\"polite\"></div>\n    </section>\n    <div class=\"orbit-panel\"><div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">SHOPIFY CHECKOUT \\xB7 SUPPORT HISTORY</p><h3>Paid top ups</h3><p>Existing Shopify payment, Orbit settlement and linked ledger history. Manual grants never create Shopify orders.</p></div></div>${rows.length?memberStoreTopUpsTableV712(rows):\"<div class='orbit-empty-state'><strong>No Shopify credit purchases yet</strong><span>Manual grants are recorded in the live wallet ledger above.</span></div>\"}</div>`}function memberWalletLookupV767(){return String(selectedMemberProfile?.profile?.subscriptionId||selectedMemberProfile?.profile?.memberNumber||selectedMemberLookup||\"\").trim()}function renderMemberWalletV767(wallet){const status=$2(\"memberWalletStatusV767\"),target=$2(\"memberWalletLedgerV767\");if(!status||!target)return;status.className=\"orbit-info-banner success\",status.innerHTML=\"<strong>\\xA3\"+esc(Number(wallet.balancePence/100).toFixed(2))+\" available</strong><span>Live spendable Member Credit, including purchased and promotional credit. This is not a test balance.</span>\";const rows=Array.isArray(wallet.ledger)?wallet.ledger:[];target.innerHTML=\"<div class='orbit-panel-header compact' style='margin-top:16px'><div><h3>Wallet transaction history</h3><p>Most recent 50 ledger entries, including manual credits, purchases and spending.</p></div></div>\"+(rows.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>Date</th><th>Type</th><th>Amount</th><th>Details / reason</th><th>Operator</th></tr></thead><tbody>\"+rows.map(x=>\"<tr><td>\"+esc(memberDate(x.createdAt))+\"</td><td>\"+esc(x.type===\"admin_manual_credit\"?\"Manual admin credit\":String(x.type||\"Activity\").replace(/_/g,\" \"))+\"</td><td>\"+(Number(x.amountPence)<0?\"\\u2212\":\"+\")+\"\\xA3\"+esc((Math.abs(Number(x.amountPence)||0)/100).toFixed(2))+\"</td><td>\"+esc(x.description||\"\\u2014\")+\"</td><td>\"+esc(x.operator||\"\\u2014\")+\"</td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p class='orbit-muted'>No wallet transactions recorded yet.</p>\")}async function loadMemberWalletV767(){const lookup=memberWalletLookupV767(),status=$2(\"memberWalletStatusV767\"),seq=++memberWalletRequestSeqV767;if(!(!lookup||!status)){status.className=\"orbit-info-banner info\",status.innerHTML=\"<strong>Loading live wallet balance...</strong>\";try{const result=await api(\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/wallet\",{cacheMs:0,timeoutMs:2e4});if(seq!==memberWalletRequestSeqV767||lookup!==memberWalletLookupV767())return;renderMemberWalletV767(result.wallet||{})}catch(error){if(seq!==memberWalletRequestSeqV767)return;status.className=\"orbit-info-banner error\",status.innerHTML=\"<strong>Wallet could not be loaded.</strong><span>\"+esc(error.message||String(error))+'</span><button type=\"button\" class=\"secondary\" id=\"memberWalletRetryV767\">Retry wallet load</button>',$2(\"memberWalletRetryV767\")?.addEventListener(\"click\",()=>loadMemberWalletV767().catch(()=>{}))}}}function newCreditRequestIdV767(){if(window.crypto?.randomUUID)return window.crypto.randomUUID();const bytes=new Uint8Array(16);window.crypto.getRandomValues(bytes),bytes[6]=bytes[6]&15|64,bytes[8]=bytes[8]&63|128;const hex=[...bytes].map(x=>x.toString(16).padStart(2,\"0\")).join(\"\");return[hex.slice(0,8),hex.slice(8,12),hex.slice(12,16),hex.slice(16,20),hex.slice(20)].join(\"-\")}async function submitMemberManualCreditV767(form){const lookup=memberWalletLookupV767(),amountString=String(form.elements.creditAmount?.value||\"\").trim(),reason=String(form.elements.creditReason?.value||\"\").trim(),button2=form.querySelector('[type=\"submit\"]');if(!lookup)throw new Error(\"Open a member profile before adding credit.\");if(!/^(?:\\d{1,4})(?:\\.\\d{1,2})?$/.test(amountString))throw new Error(\"Enter a valid amount in pounds and pence.\");const[whole,fraction=\"\"]=amountString.split(\".\"),amountPence=Number(whole)*100+Number((fraction+\"00\").slice(0,2));if(!Number.isSafeInteger(amountPence)||amountPence<1||amountPence>1e5)throw new Error(\"Amount must be between \\xA30.01 and \\xA31,000.00.\");if(reason.length<3||reason.length>300)throw new Error(\"Enter a reason of 3 to 300 characters for the audit.\");const memberLabel=selectedMemberProfile?.profile?.memberNumber||lookup;if(!confirm(\"Add \\xA3\"+(amountPence/100).toFixed(2)+\" of REAL, SPENDABLE Member Credit to \"+memberLabel+`?\n\nReason: `+reason+`\n\nThis does not charge the member or create a Shopify order.`))return;const fingerprint=JSON.stringify([lookup,amountPence,reason]);form.dataset.creditFingerprint!==fingerprint&&(form.dataset.creditRequestId=newCreditRequestIdV767(),form.dataset.creditFingerprint=fingerprint);const requestId=form.dataset.creditRequestId;setLoading(button2,!0),form.elements.creditAmount.readOnly=!0,form.elements.creditReason.readOnly=!0;try{const result=await api(\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/wallet/credit\",{method:\"POST\",body:JSON.stringify({amountPence,reason,requestId}),timeoutMs:3e4});form.dataset.creditRequestId=\"\",form.dataset.creditFingerprint=\"\",form.reset(),lookup===memberWalletLookupV767()&&(++memberWalletRequestSeqV767,renderMemberWalletV767(result.wallet)),setNotice2(result.alreadyApplied?\"This credit request was already processed; no duplicate was added.\":\"\\xA3\"+(amountPence/100).toFixed(2)+\" live Member Credit added to \"+memberLabel+\".\")}catch(error){const status=$2(\"memberWalletStatusV767\");throw status&&lookup===memberWalletLookupV767()&&(status.className=\"orbit-info-banner warning\",status.innerHTML=\"<strong>Credit not confirmed.</strong><span>\"+esc(error.message||String(error))+\" Retry the same details to safely check the original request, without creating a duplicate.</span>\"),error}finally{form.elements.creditAmount.readOnly=!1,form.elements.creditReason.readOnly=!1,setLoading(button2,!1)}}function renderMemberProfile(profile){const panel=$2(\"memberProfilePanel\");if(!panel||!profile)return;const p=profile.profile||{},billing=profile.billing||{},delivery=profile.delivery||{},recharge=profile.recharge||{},shopify=profile.shopify||{},sharedBilling=!!(p.sharedBilling||recharge.sharedBilling||recharge.quantityReviewRequired),statusClass=p.statusKey===\"active\"?\" active\":\"\",isUpgrade=String(billing.route||profile.future&&profile.future.acquisitionRoute||p.acquisitionRoute||\"UNKNOWN\").toUpperCase()===\"EVENT_UPGRADE\",billingDisplay=memberBillingDisplay(profile),recovery=profile.paymentRecovery||p.paymentRecovery||{},paymentGrace=p.statusKey===\"payment_grace\"||String(p.paymentRecoveryStatus||\"\").toLowerCase()===\"grace\"||String(p.billingSyncStatus||recharge.billingSyncStatus||\"\").toLowerCase()===\"payment_grace\",paymentPending=p.statusKey===\"payment_pending\"||String(p.paymentRecoveryStatus||\"\").toLowerCase()===\"payment_pending\"||String(p.billingSyncStatus||recharge.billingSyncStatus||\"\").toLowerCase()===\"payment_pending\",paymentRecoveryActive=paymentGrace||paymentPending,billingCritical=!paymentRecoveryActive&&String(p.billingSyncStatus||recharge.billingSyncStatus||\"\").toLowerCase()===\"critical\",attentionRequired=!!(billingCritical||paymentRecoveryActive||profile.health&&profile.health.ok===!1||p.supportFlag),recoveryHeading=paymentRecoveryActive?paymentGrace?\"Payment recovery in progress\":\"Payment waiting for Recharge\":attentionRequired?\"Attention required\":\"Everything looks on track\",recoveryPaymentTitle=paymentGrace?\"PAYMENT DUE \\xB7 RETRYING\":paymentPending?\"PAYMENT PENDING\":billingCritical?\"BILLING SYNC REQUIRES REVIEW\":recharge.nextChargeDate?memberDate(recharge.nextChargeDate):\"Not available from Recharge\",recoveryPaymentMeta=paymentRecoveryActive?[recovery.lastAttemptAt?\"Last attempt \"+memberRetryDateV501(recovery.lastAttemptAt):\"\",recovery.failureReason||\"\",recovery.nextRetryAt?\"Next retry \"+memberRetryDateV501(recovery.nextRetryAt):paymentGrace?\"Recharge retry schedule not returned\":\"Waiting for provider result\",recovery.graceThroughDate?\"Grace through \"+memberDate(recovery.graceThroughDate):\"\"].filter(Boolean).join(\" \\xB7 \"):billingCritical?\"Orbit contract: \"+memberDate(p.contractualNextChargeDate||recharge.contractualNextChargeDate||\"\\u2014\")+\" \\xB7 Provider: \"+memberDate(p.providerQueuedChargeDate||recharge.queuedChargeDate||recharge.nextChargeDate||\"\\u2014\"):\"Recharge confirmed date\",supportCount=profile.support&&profile.support.tickets?profile.support.tickets.length:0,currentParcel=profile.fulfilment&&profile.fulfilment.packs&&profile.fulfilment.packs[0]&&(profile.fulfilment.packs[0].fulfilmentStatus||profile.fulfilment.packs[0].status)||\"No parcel\",advancedControls=\"<details class='orbit-customer-advanced'><summary><span><strong>Advanced membership controls</strong><small>Lifecycle stage, technical IDs and integration data</small></span></summary><div class='orbit-customer-advanced-body'><div class='orbit-member-lifecycle-panel'><p class='orbit-kicker'>Admin Lifecycle Control</p><p class='orbit-muted'>\"+(sharedBilling?\"This membership shares one Recharge billing subscription with multiple Orbit membership cards. Manual lifecycle overrides are disabled so one card cannot accidentally change shared billing independently.\":\"Move this member to any stage for testing or recovery. This updates the membership lifecycle and Recharge price. If the selected stage requires a parcel, Orbit creates or preserves the correct pack automatically. Use carefully on real customers.\")+\"</p><div class='orbit-form-grid'><label>Stage<select id='memberStageOverrideSelect'><option value='1'\"+(Number(p.stage||0)===1?\" selected\":\"\")+\">Stage 1 / \\xA31 signup / Pending</option><option value='2'\"+(Number(p.stage||0)===2?\" selected\":\"\")+\">Stage 2 / \\xA333.95 due / Pending</option><option value='3'\"+(Number(p.stage||0)===3?\" selected\":\"\")+\">Stage 3 / Active / first full payment complete</option><option value='4'\"+(Number(p.stage||0)===4?\" selected\":\"\")+\">Stage 4 / Active / intro renewal</option><option value='5'\"+(Number(p.stage||0)===5?\" selected\":\"\")+\">Stage 5 / Active / \\xA339.95 standard</option></select></label><label>Reason<input id='memberStageOverrideReason' value='\"+esc(isUpgrade?\"Event Upgrade membership activation\":\"Manual membership lifecycle correction\")+\"'></label></div><div class='orbit-action-row'><button type='button' data-member-action='set-stage'\"+(sharedBilling?\" disabled title='Shared billing lifecycle is controlled by Recharge paid events'\":\"\")+\">\"+(sharedBilling?\"Shared Billing \\xB7 Stage Locked\":\"Apply Stage\")+\"</button></div><div id='memberLifecycleResult' class='orbit-result' style='min-height:54px;max-height:150px;'>Current stage: \"+esc(String(p.stage||0))+\" / \"+esc(p.currentPriceFormatted||\"\")+\"</div></div><div class='orbit-member-detail-grid'>\"+profileDetail(\"Serial\",p.memberSerial)+profileDetail(\"Current Price\",p.currentPriceFormatted)+profileDetail(\"Stage\",String(p.stage||0))+profileDetail(\"Member Since\",memberDate(p.memberSince))+profileDetail(\"Last Successful Charge\",billingDisplay.lastCharge)+profileDetail(\"Next Recharge Charge\",billingDisplay.nextCharge)+profileDetail(\"Current Parcel Month\",profile.future?.currentPackMonth||profile.future?.nextBoxDate||\"\\u2014\")+profileDetail(\"Orbit Membership ID\",p.subscriptionId)+profileDetail(\"Recharge Billing Sub\",recharge.subscriptionId||p.billingSubscriptionId)+(sharedBilling?profileDetail(\"Membership Seat\",String(p.membershipSeat||recharge.membershipSeat||1)+\" of \"+String(p.billingQuantity||recharge.billingQuantity||1)):\"\")+profileDetail(\"Recharge Customer\",recharge.customerId)+profileDetail(\"Billing Source\",recharge.source||\"Orbit cached from Recharge\")+profileDetail(\"Recharge Refreshed\",memberDate(recharge.refreshedAt))+profileDetail(\"Recharge Status\",recharge.status||\"\\u2014\")+profileDetail(\"Shopify Customer\",shopify.customerId)+\"</div>\"+(billingDisplay.conflict?\"<div class='orbit-notice warning'><strong>Recharge billing history needs review.</strong><br><span>The latest returned successful charge is later than the live next-charge date, so Orbit has hidden the contradictory date from the summary. Review the Billing tab before relying on the chronology.</span></div>\":\"\")+\"</div></details>\",profilePane=renderDeliveryAddressCard(delivery)+advancedControls+renderMemberHealth(profile.health||{},p)+renderMemberOverview(profile,billing,delivery),communicationPane=\"<div class='orbit-member-messages-heading'><div><p class='orbit-kicker'>Communication history</p><h3>Email and notification audit trail</h3><p>Review automated and manual communications sent to this member, including delivery status and resend history.</p></div></div>\"+renderMemberCommunications(profile.communications||[]);panel.className=\"\",panel.innerHTML=\"<div class='orbit-member-workspace-back'><button type='button' class='secondary' data-member-back-search>\\u2190 Back to Member Search</button></div><section class='orbit-customer-attention orbit-member-overview-card \"+(attentionRequired?\"warning\":\"healthy\")+\"'><div class='orbit-member-overview-heading'><div class='orbit-member-overview-identity'><p class='orbit-kicker'>Member overview</p><h2>\"+esc(p.holderName||p.email||\"Unknown member\")+\"</h2><p class='orbit-member-overview-meta'><strong>\"+esc(p.memberNumber||\"No member number\")+\"</strong><span>\"+esc(p.email||\"No email\")+\"</span></p></div><div class='orbit-member-refresh-block'><button type='button' class='secondary' data-member-action='refresh'>Refresh Profile</button><small class='orbit-member-sync-stamp'>Last synced<br><strong>\"+esc(memberDate(recharge.refreshedAt||p.updatedAt||profile.generatedAt))+\"</strong></small></div></div><div class='orbit-member-overview-actions'><button type='button' class='secondary' data-copy-value='\"+esc(p.memberNumber||\"\")+\"'>Copy Member Number</button><button type='button' class='secondary' data-copy-value='\"+esc(p.email||\"\")+\"'>Copy Email</button><button type='button' class='secondary' data-member-action='flag-support'>Flag for Attention</button><button type='button' class='secondary' data-member-action='archive'>Archive Member</button><button type='button' class='secondary' data-member-qr='png'>Download 40mm PNG</button><button type='button' class='secondary' data-member-qr='svg'>Download SVG</button>\"+(p.supportFlag?\"<button type='button' class='secondary' data-member-action='clear-support-flag'>Clear Flag</button>\":\"\")+\"</div><div class='orbit-member-overview-status'><h3>\"+esc(recoveryHeading)+\"</h3><span class='orbit-member-status\"+statusClass+\"'>\"+esc(p.status||\"Pending\")+\"</span></div><div class='orbit-customer-attention-grid'><span><small>Membership</small><strong>\"+esc(p.statusDisplay||p.status||\"Pending\")+\"</strong></span><span><small>\"+(paymentRecoveryActive?\"Payment recovery\":\"Next payment queued for\")+\"</small><strong>\"+esc(recoveryPaymentTitle)+\"</strong><em>\"+esc(recoveryPaymentMeta)+\"</em></span><span><small>Current parcel</small><strong>\"+esc(currentParcel)+\"</strong></span><span><small>Support</small><strong>\"+esc(supportCount?supportCount+\" case\"+(supportCount===1?\"\":\"s\"):\"No open cases\")+\"</strong></span></div></section>\"+(p.cancelsAtPeriodEnd?\"<div class='orbit-notice'><strong>Active \\xB7 Cancels at period end</strong><span>The current paid cycle remains fully active and its parcel stays funded. Automatic renewal is cancelled\"+(p.paidThroughCycle?\" after \"+esc(p.paidThroughCycle):\"\")+\".\"+(p.cancellationReason?\" Recharge reason: \"+esc(p.cancellationReason)+\".\":\"\")+\"</span></div>\":\"\")+(billingCritical?\"<div class='orbit-notice warning'><strong>Critical Billing Sync</strong><span>\"+esc(p.billingSyncMessage||recharge.billingSyncMessage||\"Recharge billing does not match the Orbit contract. Use Members \\u2192 Recharge Reconciliation \\u2192 Billing Integrity to verify and repair the target subscription safely.\")+\"</span></div>\":\"\")+(paymentRecoveryActive?\"<div class='orbit-notice warning'><strong>\"+(paymentGrace?\"Payment Due \\xB7 Retrying\":\"Payment Pending\")+\"</strong><span>\"+esc(p.billingSyncMessage||\"Paid benefits and the current parcel are paused until Recharge confirms a successful payment.\")+\"</span></div>\":\"\")+\"<div class='orbit-member-tabs' aria-label='Member profile sections'><button class='active' type='button' data-member-pane-tab='overview'>Profile</button><button type='button' data-member-pane-tab='billing'>Billing</button><button type='button' data-member-pane-tab='topups'>Top ups</button><button type='button' data-member-pane-tab='communications'>Communication History</button><button type='button' data-member-pane-tab='timeline'>Timeline</button><button type='button' data-member-pane-tab='fulfilment'>Parcels</button><button type='button' data-member-pane-tab='rewards'>Rewards</button><button type='button' data-member-pane-tab='support'>Support</button><button type='button' data-member-pane-tab='tickets'>Tickets\"+(profile.tickets&&profile.tickets.count?\" (\"+esc(profile.tickets.count)+\")\":\"\")+\"</button></div><div id='member-pane-overview' class='orbit-member-pane active'>\"+profilePane+\"</div><div id='member-pane-billing' class='orbit-member-pane'>\"+renderMemberBilling(profile)+\"</div><div id='member-pane-topups' class='orbit-member-pane'>\"+renderMemberTopUpsV712(profile.memberCreditTopUps||[])+\"</div><div id='member-pane-communications' class='orbit-member-pane'>\"+communicationPane+\"</div><div id='member-pane-timeline' class='orbit-member-pane'>\"+renderMemberTimeline(profile.timeline||[])+\"</div><div id='member-pane-fulfilment' class='orbit-member-pane'>\"+renderMemberFulfilment(profile.fulfilment||{})+\"</div><div id='member-pane-rewards' class='orbit-member-pane'>\"+renderMemberRewards(profile.rewards||{})+\"</div><div id='member-pane-support' class='orbit-member-pane'>\"+renderMemberSupport(profile.support||{})+\"</div><div id='member-pane-tickets' class='orbit-member-pane'>\"+renderMemberTickets(profile.tickets||{})+\"</div>\",setActiveMemberPane(activeMemberPane),panel.querySelector(\"#memberManualCreditFormV767\")?.addEventListener(\"submit\",function(event){event.preventDefault(),submitMemberManualCreditV767(this).catch(error=>setNotice2(error.message||String(error),!0))}),panel.querySelector(\"[data-member-action='start-support']\")?.addEventListener(\"click\",function(event){event.preventDefault(),event.stopPropagation();try{startSelectedMemberSupportConversation()}catch(err){setNotice2(err.message||String(err),!0)}}),panel.querySelectorAll(\"[data-member-ticket-action]\").forEach(function(button2){button2.addEventListener(\"click\",async function(event){event.preventDefault();const action=button2.dataset.memberTicketAction,claimKey=button2.dataset.memberTicketClaim,label=action===\"delete\"?\"DELETE\":\"UNISSUE\";if(confirm(action===\"delete\"?\"Delete this issued member + guest ticket pair? The member will be able to claim again if still eligible.\":\"Undo issue for this member + guest ticket pair? The member will be able to claim again if still eligible.\")&&!(action===\"delete\"&&prompt(\"Type DELETE to permanently remove this issued ticket pair.\")!==\"DELETE\"))try{setLoading(button2,!0);const result=await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/tickets/\"+encodeURIComponent(claimKey)+\"/action\",{method:\"POST\",body:JSON.stringify({action,monthKey:monthKeyValue(),operator:\"Orbit Admin\"})});result.profile?(selectedMemberProfile=result.profile,activeMemberPane=\"tickets\",renderMemberProfile(result.profile)):await loadMemberProfile(selectedMemberLookup),setNotice2(action===\"delete\"?\"Member ticket deleted. They can claim again if eligible.\":\"Ticket issue undone. They can claim again if eligible.\")}catch(err){setNotice2(err.message||String(err),!0)}finally{setLoading(button2,!1)}})})}function setActiveMemberPane(name){activeMemberPane=name||\"overview\",document.querySelectorAll(\"[data-member-pane-tab]\").forEach(function(btn){btn.classList.toggle(\"active\",btn.dataset.memberPaneTab===activeMemberPane)}),document.querySelectorAll(\".orbit-member-pane\").forEach(function(pane){pane.classList.toggle(\"active\",pane.id===\"member-pane-\"+activeMemberPane)}),activeMemberPane===\"topups\"&&$2(\"memberWalletStatusV767\")&&loadMemberWalletV767().catch(error=>setNotice2(error.message||String(error),!0))}function renderMemberHealth(health,p){const checks=Array.isArray(health.checks)?health.checks:[];return\"<div class='orbit-notice\"+(health.overall===\"problem\"?\" error\":health.overall===\"warning\"?\" warning\":\"\")+\"'><strong>Member Health: \"+esc(health.summary||\"No health checks returned.\")+\"</strong>\"+(p.supportFlag?\"<br><span>Manual flag: \"+esc(p.supportFlagNote||\"Needs attention\")+\"</span>\":\"\")+(checks.length?\"<div class='orbit-mini-list' style='margin-top:12px;'>\"+checks.map(function(c){return\"<div><strong>\"+esc(c.label||c.key||\"Check\")+\"</strong><br><span class='orbit-muted'>\"+esc(c.status||\"\\u2014\")+\" \\xB7 \"+esc(c.message||\"\")+\"</span></div>\"}).join(\"\")+\"</div>\":\"\")+\"</div>\"}function renderMemberOverview(profile,billing,delivery){const future=profile.future||{},p=profile.profile||{},isUpgrade=String(billing.route||future.acquisitionRoute||\"UNKNOWN\").toUpperCase()===\"EVENT_UPGRADE\",paidLine=future.lastPaymentDisplay?\"\\u2713 Latest payment recorded: \"+(future.firstPaymentAmount||\"amount unavailable\")+\" \\xB7 \"+future.lastPaymentDisplay.dateLabel:isUpgrade?\"\\u26A0 Upgrade route but no paid charge recorded yet.\":\"\\xA31 signup route. First full \\xA333.95 payment not recorded yet.\",deliveryText=[delivery.recipientName,delivery.addressLine1,delivery.city,delivery.postcode].filter(Boolean).join(\", \"),lifecycleItems=Array.isArray(billing.lifecycle)?billing.lifecycle:[],lifecycleSchedule=Array.isArray(future.lifecycleSchedule)?future.lifecycleSchedule:[],lifecycleHtml=lifecycleSchedule.length?\"<div class='orbit-lifecycle-inspector'><div class='orbit-lifecycle-title'><strong>Full membership cycle</strong><span>Expected dates, charges and parcel months</span></div>\"+lifecycleSchedule.map(function(item){return\"<div class='orbit-lifecycle-step'><span class='orbit-lifecycle-date'>\"+esc(item.paymentDisplay?.dateLabel||memberDate(item.date))+\"</span><strong>\"+esc(item.paymentDisplay?item.paymentDisplay.amount==null?\"Paid \\xB7 amount unavailable\":\"\\xA3\"+Number(item.paymentDisplay.amount).toFixed(2):item.amount>0?\"\\xA3\"+Number(item.amount).toFixed(2):\"No charge\")+\"</strong><span>\"+esc(item.stageAfter||\"\")+\"</span><span>Parcel: \"+esc(item.parcelMonth||\"\\u2014\")+\"</span><small>\"+esc(item.note||\"\")+\"</small></div>\"}).join(\"\")+\"</div>\":\"\",sourceBits=[delivery.source||\"not recorded\"];return delivery.sourceOrderName&&sourceBits.push(\"Order \"+delivery.sourceOrderName),delivery.sourceCheckedAt&&sourceBits.push(\"Checked \"+memberDate(delivery.sourceCheckedAt)),\"<div class='orbit-member-list'><div class='orbit-member-row'><strong>Membership journey</strong><span>\"+esc(isUpgrade?\"Upgrade route \\xB7 active immediately\":\"\\xA31 signup route \\xB7 Members Area only until first full payment\")+\"</span><span>\"+esc(billing.currentStageExplanation||future.summary||\"\")+\"</span></div><div class='orbit-member-row'><strong>Payment lifecycle</strong><span>\"+esc(paidLine)+\"</span><span>Next expected charge: \"+esc(future.expectedNextCharge||billing.nextExpectedPrice||\"\\u2014\")+\" on \"+esc(future.nextRebillDate||\"\\u2014\")+\"</span></div><div class='orbit-member-row'><strong>Benefits</strong><span>Members Area: open</span><span>Benefits: \"+esc(future.benefitsActive?\"active\":\"locked until first \\xA333.95 payment\")+\" \\xB7 Prize draw: \"+esc(future.prizeEligibleNow?\"eligible if active on draw day\":\"not eligible yet\")+\"</span></div><div class='orbit-member-row'><strong>Next member events</strong><span>First box: \"+esc(future.firstBoxDate||\"\\u2014\")+\" \\xB7 Next box: \"+esc(future.nextBoxDate||\"\\u2014\")+\"</span><span>Prize draw: \"+esc(future.prizeDrawDate||\"\\u2014\")+\" \\xB7 Next renewal: \"+esc(future.nextRebillDate||\"\\u2014\")+\"</span></div><div class='orbit-member-row'><strong>Delivery address</strong><span>\"+esc(delivery.complete?\"Complete\":\"Missing / incomplete\")+\" \\xB7 \"+esc(deliveryText||\"No delivery address saved\")+\"</span><span>Source: \"+esc(sourceBits.join(\" \\xB7 \"))+\"</span></div>\"+(Array.isArray(delivery.sourceCheckedSources)&&delivery.sourceCheckedSources.length?\"<div class='orbit-member-row'><strong>Address diagnostics</strong><span>Checked sources:</span><span>\"+esc(delivery.sourceCheckedSources.join(\", \"))+\"</span></div>\":\"\")+\"<div class='orbit-member-row'><strong>Current parcel</strong><span>\"+esc(future.currentPackStatus||\"waiting\")+\"</span><span>\"+esc(future.currentPackId||\"No current monthly parcel yet\")+\"</span></div>\"+(lifecycleItems.length?\"<div class='orbit-member-row'><strong>Route steps</strong><span>\"+esc(lifecycleItems.join(\" \\u2192 \"))+\"</span></div>\":\"\")+lifecycleHtml+\"</div>\"}function renderMemberBilling(profile){const recharge=profile.recharge||{},charges=Array.isArray(profile.billingHistory)?profile.billingHistory:[],confidence=recharge.error?\"<div class='orbit-notice warning'><strong>Recharge live refresh failed.</strong><br><span>Showing cached Orbit data where available. \"+esc(recharge.error)+\"</span></div>\":\"<div class='orbit-notice'><strong>Billing source: \"+esc(recharge.source||\"Orbit cached from Recharge\")+\"</strong><br><span>Last refreshed: \"+esc(memberDate(recharge.refreshedAt))+\". Next charge and price below come from the live Recharge subscription when available.</span></div>\",sharedBillingNotice=recharge.sharedBilling?\"<div class='orbit-notice warning'><strong>Shared Recharge billing subscription.</strong><br><span>This is Orbit membership seat \"+esc(String(recharge.membershipSeat||1))+\" of \"+esc(String(recharge.billingQuantity||1))+\". Recharge charges are shared by the quantity subscription; Orbit benefits, holder and fulfilment remain separate per membership card.\"+(recharge.quantityReviewRequired?\" Quantity changed and requires operator review; no membership was removed automatically.\":\"\")+\"</span></div>\":\"\",summary=\"<div class='orbit-member-detail-grid'>\"+profileDetail(\"Subscription Status\",recharge.status||profile.profile?.status||profile.status||\"\\u2014\")+profileDetail(\"Next Charge Date\",memberDate(recharge.nextChargeDate))+profileDetail(\"Next Charge Amount\",recharge.currentPriceFormatted||\"\\u2014\")+profileDetail(\"Recharge Subscription\",recharge.subscriptionId||\"\\u2014\")+profileDetail(\"Recharge Customer\",recharge.customerId||\"\\u2014\")+\"</div>\",recovery=profile.paymentRecovery||profile.profile?.paymentRecovery||null,recoveryHtml=recovery?\"<div class='orbit-notice warning'><strong>Recharge payment recovery detail</strong><br><span>Status: \"+esc(recovery.status||\"\\u2014\")+\" \\xB7 Charge: \"+esc(recovery.chargeId||\"\\u2014\")+\" \\xB7 Amount: \"+esc(recovery.amountFormatted||\"\\u2014\")+\"</span><br><span>Last attempt: \"+esc(recovery.lastAttemptAt?memberRetryDateV501(recovery.lastAttemptAt):\"not returned\")+(recovery.failureReason?\" \\xB7 Reason: \"+esc(recovery.failureReason):\"\")+\"</span><br><span>Next retry: \"+esc(recovery.nextRetryAt?memberRetryDateV501(recovery.nextRetryAt):\"not returned by Recharge\")+(recovery.attemptCount!==null&&recovery.attemptCount!==void 0?\" \\xB7 Attempts: \"+esc(String(recovery.attemptCount)):\"\")+\"</span><br><span>Grace cutoff: \"+esc(recovery.graceThroughDate?memberDate(recovery.graceThroughDate)+\" close of business\":\"\\u2014\")+\" \\xB7 Benefits: \"+(recovery.benefitsPaused?\"paused\":\"available\")+\" \\xB7 Parcel: \"+(recovery.parcelPaused?\"paused\":\"eligible\")+\"</span><br><span>Next normal billing: \"+esc(recovery.nextNormalBillingDate?memberDate(recovery.nextNormalBillingDate):\"\\u2014\")+\" \\xB7 Source: \"+esc(recovery.source||\"Recharge\")+\"</span></div>\":\"\",attempt=profile.immediatePaymentAttempt||null,attemptStatus=String(attempt?.status||\"\").toLowerCase(),permissionBlocked=attemptStatus===\"provider_permission_blocked\"||String(attempt?.processPermissionRequired||\"\").toLowerCase()===\"process_charge\",attemptWarning=[\"provider_uncertain\",\"provider_permission_blocked\",\"provider_rejected\"].includes(attemptStatus),permissionHtml=permissionBlocked?\"<br><span><strong>Recharge permission required:</strong> process_charge\"+(attempt.processHttpStatus?\" \\xB7 HTTP \"+esc(String(attempt.processHttpStatus)):\"\")+\". No immediate payment was accepted. Confirm the production Recharge API token can process queued charges before asking the member to try again.</span>\":\"\",providerRejectHtml=attempt?.processHttpStatus||attempt?.processProviderMessage?\"<br><span><strong>Provider process response:</strong>\"+(attempt.processHttpStatus?\" HTTP \"+esc(String(attempt.processHttpStatus)):\"\")+(attempt.processProviderMessage?\" \\xB7 \"+esc(attempt.processProviderMessage):\"\")+\".</span>\":\"\",retryHtml=attempt?.processRecoveryRetryRelease?\"<br><span>Process recovery attempt: \"+esc(attempt.processRecoveryRetryRelease)+(attempt.processRecoveryRetryAt?\" at \"+esc(memberDate(attempt.processRecoveryRetryAt)):\"\")+\".</span>\":attempt?.permissionRetryRelease?\"<br><span>Permission recovery: \"+esc(attempt.permissionRetryRelease)+(attempt.permissionRetryAt?\" at \"+esc(memberDate(attempt.permissionRetryAt)):\"\")+\".</span>\":\"\",attemptHtml=attempt?\"<div class='orbit-notice \"+(attemptWarning?\"warning\":\"\")+\"'><strong>Latest Upgrade Now / Reactivate attempt</strong><br><span>Orbit: \"+esc(attempt.status||\"\\u2014\")+\" \\xB7 Recharge: \"+esc(attempt.providerStatus||\"not read yet\")+\" \\xB7 Amount: \"+esc(formatMoney(attempt.amount))+\" \\xB7 Charge: \"+esc(attempt.chargeId||\"\\u2014\")+\"</span><br><span>Provider read: \"+esc(attempt.providerReadSource===\"customer_delivery_schedule\"?\"Customer Delivery Schedule\":attempt.providerReadSource===\"process_response\"?\"Process response\":attempt.providerReadSource||\"not read yet\")+(attempt.chargeReadScopeForbidden?\" (charge-history read forbidden; safe fallback used)\":\"\")+\"</span><br><span>Submitted: \"+esc(attempt.processRequestedAt?memberDate(attempt.processRequestedAt):\"not submitted\")+\" \\xB7 Provider accepted: \"+esc(attempt.processAcceptedAt?memberDate(attempt.processAcceptedAt):\"not confirmed\")+\" \\xB7 Provider checked: \"+esc(attempt.providerCheckedAt?memberDate(attempt.providerCheckedAt):\"not checked\")+(attempt.error?\" \\xB7 Error: \"+esc(attempt.error):\"\")+\"</span>\"+permissionHtml+providerRejectHtml+retryHtml+\"</div>\":\"\";return charges.length?confidence+sharedBillingNotice+summary+recoveryHtml+attemptHtml+\"<div class='orbit-table-wrap'><table><thead><tr><th>Date / Time</th><th>Status</th><th>Amount</th><th>Refunded</th><th>Charge Reference</th><th>Source</th></tr></thead><tbody>\"+charges.map(function(c){return\"<tr><td>\"+esc(c.paymentDisplay?.dateTimeLabel||\"Payment date unavailable\")+\"</td><td>\"+esc(c.status||\"\\u2014\")+\"</td><td>\"+esc(c.amount===null?\"Amount unavailable\":formatMoney(c.amount))+\" \"+esc(c.currency||\"GBP\")+\"</td><td>\"+esc(formatMoney(c.refundedAmount||0))+\"</td><td>\"+esc(c.chargeId||\"\\u2014\")+\"</td><td>\"+esc(c.source||recharge.chargeHistorySource||\"Recharge\")+\"</td></tr>\"}).join(\"\")+\"</tbody></table></div>\":confidence+sharedBillingNotice+summary+recoveryHtml+attemptHtml+\"<div class='orbit-member-row'><strong>No Recharge charge history returned</strong><span>This may mean no completed charges exist or Recharge did not return charge records for this subscription.</span></div>\"}function renderMemberCommunications(items){return items.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>Sent</th><th>Type</th><th>Subject</th><th>Recipient</th><th>Status</th><th>Provider Ref</th><th>Action</th></tr></thead><tbody>\"+items.map(function(item){return\"<tr><td>\"+esc(memberDate(item.createdAt))+\"</td><td>\"+esc(item.type||\"email\")+\"</td><td>\"+esc(item.subject||\"\\u2014\")+\"</td><td>\"+esc(item.to||\"\\u2014\")+\"</td><td>\"+esc(item.status||\"\\u2014\")+(item.error?\"<br><small>\"+esc(item.error)+\"</small>\":\"\")+\"</td><td>\"+esc(item.providerId||\"\\u2014\")+\"</td><td><button type='button' class='secondary' data-member-communication-resend='\"+esc(item.id||\"\")+\"'>Resend</button></td></tr>\"}).join(\"\")+\"</tbody></table></div>\":\"<div class='orbit-member-row'><strong>No communications recorded</strong><span>New Orbit emails will be persisted here after this release. Older messages may not exist because the previous log was memory-only.</span></div>\"}function renderMemberTimeline(items){return items.length?\"<div class='orbit-member-timeline'>\"+items.slice(0,35).map(item=>\"<div class='orbit-member-timeline-item'><span>\"+esc(item.metadata?.paymentDisplay?.dateTimeLabel||memberDate(item.date))+\" \\xB7 \"+esc(item.type||\"event\")+\"</span><strong>\"+esc(item.title||\"Timeline event\")+\"</strong><p>\"+esc(item.message||\"\")+\"</p></div>\").join(\"\")+\"</div>\":\"<div class='orbit-member-row'><strong>No timeline yet</strong><span>Events will appear as payments, packs, prize wins, Golden Tickets and support records are created.</span></div>\"}function renderMemberFulfilment(fulfilment){const packs=fulfilment.packs||[];return packs.length?\"<div class='orbit-member-list'>\"+packs.map(pack=>\"<div class='orbit-member-row'><strong>\"+esc(pack.monthKey||\"Parcel\")+\" \\xB7 \"+esc(pack.fulfilmentStatus||pack.status||\"pending\")+\"</strong><span>Tracking: \"+esc(pack.trackingNumber||\"Not added yet\")+\"</span>\"+(pack.replacementPackId?\"<span>Replaced by: \"+esc(pack.replacementPackId)+\"</span>\":\"\")+(pack.replacementOfPackId?\"<span>Replacement for: \"+esc(pack.replacementOfPackId)+\"</span>\":\"\")+\"<span>Created: \"+esc(memberDate(pack.createdAt))+\"</span>\"+(pack.replacementOfPackId?\"<div class='orbit-row-actions'><button type='button' class='secondary' data-pack-undo-reissue='\"+esc(pack.packId||\"\")+\"'>Undo Reissue</button></div>\":[\"replaced\",\"superseded\"].includes(String(pack.fulfilmentStatus||pack.status||\"\").toLowerCase())?\"\":\"<div class='orbit-row-actions'><button type='button' class='secondary' data-pack-reissue='\"+esc(pack.packId||\"\")+\"'>Reissue Parcel</button></div>\")+\"</div>\").join(\"\")+\"</div>\":\"<div class='orbit-member-row'><strong>No parcels yet</strong><span>Paid monthly parcel history will appear here when a parcel is created.</span></div>\"}function renderMemberRewards(rewards){const loyalty=rewards.loyalty||{},history2=Array.isArray(loyalty.history)?loyalty.history:[],prizes=rewards.prizes||[],golden=rewards.goldenTickets||[],loyaltyHtml=\"<section class='orbit-loyalty-dashboard'><div class='orbit-loyalty-metrics'>\"+profileDetail(\"Points Balance\",String(loyalty.pointsBalance||0))+profileDetail(\"Lifetime Earned\",String(loyalty.lifetimeEarned||0))+profileDetail(\"Lifetime Redeemed\",String(loyalty.lifetimeSpent||0))+profileDetail(\"Reversed / Corrected\",String(loyalty.lifetimeReversed||0))+profileDetail(\"Shows Attended\",String(loyalty.showsAttended||0))+\"</div><div class='orbit-loyalty-actions'><label>Points<input id='loyaltyPointsAmount' type='number' step='1' placeholder='100 or -25'></label><label>Reason<select id='loyaltyPointsReason'><option value='manual_bonus'>Manual bonus</option><option value='customer_service'>Customer service</option><option value='show_attendance'>Show attendance correction</option><option value='referral'>Referral correction</option><option value='other'>Other</option></select></label><label>Internal note<input id='loyaltyPointsNote' placeholder='Why are these points changing?'></label><button type='button' data-loyalty-adjust>Apply Points</button></div><div class='orbit-action-row orbit-qr-actions'><button type='button' class='secondary' data-loyalty-test>Test QR Lookup</button></div>\"+(loyalty.referrals?\"<section class='orbit-referral-foundation'><h3>Referral Links</h3><div class='orbit-referral-grid'><div><span>Membership referrals</span><strong>\"+esc(loyalty.referrals.membershipReferrals||0)+\" completed</strong><input readonly value='\"+esc(loyalty.referrals.membershipUrl||\"\")+\"'><button type='button' class='secondary' data-copy-value='\"+esc(loyalty.referrals.membershipUrl||\"\")+\"'>Copy Membership Link</button></div><div><span>Ticket referrals</span><strong>\"+esc(loyalty.referrals.ticketReferrals||0)+\" completed</strong><input readonly value='\"+esc(loyalty.referrals.ticketUrl||\"\")+\"'><button type='button' class='secondary' data-copy-value='\"+esc(loyalty.referrals.ticketUrl||\"\")+\"'>Copy Ticket Link</button></div></div></section>\":\"\")+(loyalty.scanUrl?\"<div class='orbit-result'><strong>Permanent scan address</strong><br><span>\"+esc(loyalty.scanUrl)+\"</span></div>\":\"\")+\"<h3>Points History</h3>\"+(history2.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>Date</th><th>Points</th><th>Reason</th><th>Note</th><th>Action</th></tr></thead><tbody>\"+history2.map(function(item){return\"<tr><td>\"+esc(memberDate(item.createdAt))+\"</td><td><strong>\"+(Number(item.points)>0?\"+\":\"\")+esc(item.points)+\"</strong></td><td>\"+esc(String(item.reason||\"\").replaceAll(\"_\",\" \"))+\"</td><td>\"+esc(item.note||item.eventName||\"\\u2014\")+\"</td><td>\"+(item.reversedAt||item.reversalOf?\"\\u2014\":\"<button type='button' class='secondary' data-loyalty-reverse='\"+esc(item.id)+\"'>Reverse</button>\")+\"</td></tr>\"}).join(\"\")+\"</tbody></table></div>\":\"<div class='orbit-member-row'><strong>No points history yet</strong><span>Attendance, rebills, referrals and manual adjustments will appear here.</span></div>\")+\"</section>\",parts=[];return prizes.forEach(prize=>parts.push(\"<div class='orbit-member-row'><strong>Prize Draw \"+esc(prize.monthKey||\"\")+\"</strong><span>\"+esc(prize.prizeTitle||\"Monthly prize\")+\" \\xB7 \"+esc(humanStatus(prize.fulfilmentStatus||prize.status||\"pending\"))+\"</span></div>\")),golden.forEach(ticket=>parts.push(\"<div class='orbit-member-row'><strong>Golden Ticket \"+esc(ticket.code||\"\")+\"</strong><span>\"+esc(ticket.prizeTitle||\"Golden Ticket prize\")+\" \\xB7 \"+esc(ticket.status||\"active\")+\"</span></div>\")),loyaltyHtml+\"<h3>Prize and Golden Ticket History</h3>\"+(parts.length?\"<div class='orbit-member-list'>\"+parts.join(\"\")+\"</div>\":\"<div class='orbit-member-row'><strong>No prize rewards yet</strong><span>Prize wins and redeemed Golden Tickets will appear here.</span></div>\")}function renderMemberSupport(support){const tickets=support.tickets||[],heading=\"<div class='orbit-member-support-heading'><div><p class='orbit-kicker'>Member support</p><h3>Support conversations</h3><p>Open an existing thread or start a new conversation as Orbit.</p></div><button type='button' data-member-action='start-support'>New Support Conversation</button></div>\";return tickets.length?heading+\"<div class='orbit-member-list'>\"+tickets.map(function(ticket){const friendly=String(ticket.status||\"open\").toLowerCase()===\"closed\"?\"Closed\":ticket.lastSender===\"member\"||ticket.awaitingAdminReply?\"Awaiting Admin\":\"Awaiting Member\";return\"<article class='orbit-member-row orbit-support-row'><div><strong>\"+esc(ticket.ticketId||\"Ticket\")+\" \\xB7 \"+esc(friendly)+\"</strong><span>\"+esc(ticket.subject||\"No subject\")+\"</span><span>Updated: \"+esc(memberDate(ticket.updatedAt||ticket.createdAt))+\"</span></div><button type='button' data-support-open='\"+esc(ticket.ticketId||ticket.id||ticket._id||\"\")+\"'>Open Conversation</button></article>\"}).join(\"\")+\"</div>\":heading+\"<div class='orbit-customer-empty-state'><div><strong>No support conversations</strong><span>This member has no linked support history yet.</span></div></div>\"}async function refreshSelectedMember(button2){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");const lookup=selectedMemberLookup,pane=activeMemberPane,scrollY=window.scrollY;setLoading(button2,!0);try{const result=await api(\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/refresh\",{method:\"POST\",body:JSON.stringify({monthKey:monthKeyValue()})});selectedMemberLookup=lookup,activeMemberPane=pane,selectedMemberProfile=result.profile,renderMemberProfile(result.profile),requestAnimationFrame(function(){window.scrollTo({top:scrollY,behavior:\"instant\"})}),setNotice2(result.message||\"Member profile refreshed successfully.\")}finally{setLoading(button2,!1)}}async function flagSelectedMember(){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");const note=window.prompt(\"Support flag note\",\"Needs admin attention\");if(note===null)return;const result=await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/flag-support\",{method:\"POST\",body:JSON.stringify({note})});selectedMemberProfile=result.profile,renderMemberProfile(result.profile),$2(\"memberSearchWorkspace\")&&($2(\"memberSearchWorkspace\").hidden=!0),$2(\"memberProfileWorkspace\")&&($2(\"memberProfileWorkspace\").hidden=!1),setNotice2(\"Member flagged for support.\")}async function clearSelectedMemberFlag(){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");const result=await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/clear-support-flag\",{method:\"POST\",body:JSON.stringify({})});selectedMemberProfile=result.profile,renderMemberProfile(result.profile),$2(\"memberSearchWorkspace\")&&($2(\"memberSearchWorkspace\").hidden=!0),$2(\"memberProfileWorkspace\")&&($2(\"memberProfileWorkspace\").hidden=!1),setNotice2(\"Member support flag cleared.\")}async function setSelectedMemberStage(button2){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");const stage=Number($2(\"memberStageOverrideSelect\")?.value||1),reason=String($2(\"memberStageOverrideReason\")?.value||\"Manual membership lifecycle correction\").trim(),resultBox=$2(\"memberLifecycleResult\");resultBox&&(resultBox.textContent=\"Applying stage \"+stage+\" and ensuring any required pack...\"),setLoading(button2,!0);try{const result=await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/stage\",{method:\"POST\",body:JSON.stringify({stage,reason,monthKey:monthKeyValue()})});selectedMemberProfile=result.profile,renderMemberProfile(result.profile);const refreshedResultBox=$2(\"memberLifecycleResult\");if(refreshedResultBox){const lines=[\"Membership changed successfully.\",result.stageLabel||\"Stage \"+stage,result.packAction||(stage>=3?\"Paid monthly parcel checked.\":\"Pending membership confirmed.\"),\"Member overview and billing dates refreshed.\"];refreshedResultBox.textContent=lines.filter(Boolean).join(`\n`)}await Promise.all([searchMembers(null),loadSummary(),loadFulfilment(),loadEvents()]),setNotice2(\"Member lifecycle stage updated.\")}finally{setLoading(button2,!1)}}async function generatePackForSelectedMember(button2){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");const resultBox=$2(\"memberLifecycleResult\");resultBox&&(resultBox.textContent=\"Generating or repairing current month pack row...\"),setLoading(button2,!0);try{const result=await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/generate-pack\",{method:\"POST\",body:JSON.stringify({monthKey:monthKeyValue(),force:!0,reason:\"Manual admin pack generation for testing/recovery\"})});if(selectedMemberProfile=result.profile,renderMemberProfile(result.profile),$2(\"memberLifecycleResult\")){const pack=result.pack||result.packResult?.pack||{};$2(\"memberLifecycleResult\").textContent=(result.created?\"Created\":\"Repaired\")+\" current month pack\"+(pack.packId?\": \"+pack.packId:\".\")+`\nDelivery: `+(pack.delivery&&pack.delivery.addressLine1?\"ready for label\":\"missing/incomplete\")+\".\"}await Promise.all([loadFulfilment(),loadSummary(),loadEvents()]),setNotice2(\"Member pack row generated/repaired.\")}finally{setLoading(button2,!1)}}function resetRechargeMembershipPreviewV473(message){rechargeMembershipPreviewV473=null;const reconcileButton=$2(\"rechargeSyncEmailButton\");reconcileButton&&(reconcileButton.disabled=!0,reconcileButton.textContent=\"Reconcile Missing Memberships\");const target=$2(\"rechargeSyncResult\");target&&(target.innerHTML=\"<div class='orbit-recharge-reconcile-empty-v473'><strong>Nothing has been changed.</strong><span>\"+esc(message||\"Enter the customer's email and check Recharge first.\")+\"</span></div>\")}function renderRechargeSyncResult(result,mode){const target=$2(\"rechargeSyncResult\");if(!target)return;const isPreview=mode===\"preview\"||result?.mode===\"preview\",quantity=Number(result?.rechargeQuantity||0),before=Number(result?.orbitMembershipsBefore||0),after=isPreview?before:Number(result?.orbitMembershipsAfter??before),missing=Number(isPreview?result?.missingMembershipSeats:result?.missingMembershipSeatsBefore||0),created=Number(result?.membersCreated||0),subscriptions=Array.isArray(result?.subscriptions)?result.subscriptions:Array.isArray(result?.results)?result.results:[],statusClass=result?.rechargeSubscriptionsFound?isPreview&&missing>0||!isPreview&&created>0?\"attention\":\"good\":\"warning\",statusTitle=result?.rechargeSubscriptionsFound?isPreview?missing>0?\"Missing Orbit membership seats found\":\"Recharge and Orbit membership counts already match\":created>0?\"Membership reconciliation completed\":\"Reconciliation rerun complete \\u2014 no duplicates created\":\"No Recharge subscription found\",stats=[[\"Recharge quantity\",quantity],[\"Orbit memberships before\",before],[isPreview?\"Missing memberships\":\"Memberships created\",isPreview?missing:created],[\"Orbit memberships after\",after]],detailRows=subscriptions.map(function(item){const itemQuantity=Number(item?.quantity||0),itemBefore=Number(item?.orbitMembershipsBefore||0),itemAfter=isPreview?itemBefore:Number(item?.orbitMembershipsAfter??itemBefore),itemMissing=Number(isPreview?item?.missingMembershipSeats:item?.missingMembershipSeatsBefore||0),itemCreated=Number(item?.membersCreated||0),seatList=(item?.membershipSeats||item?.existingSeats||[]).map(function(seat){const number=seat?.memberNumber||\"Member number pending\",index=Number(seat?.seatIndex||0)||1,action=seat?.action?\" \\xB7 \"+humanStatus(seat.action):\"\";return\"<li><strong>Seat \"+esc(index)+\"</strong><span>\"+esc(number)+action+\"</span></li>\"}).join(\"\");return\"<article class='orbit-recharge-subscription-v473'><div><strong>Recharge subscription \"+esc(item?.rechargeSubscriptionId||item?.subscriptionId||\"\\u2014\")+\"</strong><span>Quantity \"+esc(itemQuantity)+\" \\xB7 Orbit before \"+esc(itemBefore)+\" \\xB7 \"+(isPreview?\"Missing \"+esc(itemMissing):\"Created \"+esc(itemCreated)+\" \\xB7 Orbit after \"+esc(itemAfter))+\"</span></div>\"+(seatList?\"<ul>\"+seatList+\"</ul>\":\"\")+(item?.requiresQuantityReductionReview?\"<p class='orbit-recharge-review-warning-v473'>Recharge quantity is lower than Orbit membership records. No membership was removed automatically; operator review is required.</p>\":\"\")+\"</article>\"}).join(\"\");target.innerHTML=\"<div class='orbit-recharge-reconcile-status-v473 \"+statusClass+\"'><strong>\"+esc(statusTitle)+\"</strong><span>\"+esc(result?.message||\"Recharge reconciliation check complete.\")+\"</span></div><div class='orbit-recharge-reconcile-stats-v473'>\"+stats.map(function(row){return\"<div><span>\"+esc(row[0])+\"</span><strong>\"+esc(row[1])+\"</strong></div>\"}).join(\"\")+\"</div>\"+(detailRows?\"<div class='orbit-recharge-subscriptions-v473'>\"+detailRows+\"</div>\":\"\")+\"<p class='orbit-recharge-boundary-v473'><strong>Billing safety:</strong> this reconciliation never changes Recharge quantity and never creates another Recharge billing subscription. Missing Orbit membership seats only are reconciled.</p>\"}async function previewRechargeByEmailV473(button2){const email=String($2(\"rechargeSyncEmailInput\")?.value||$2(\"memberSearchInput\")?.value||\"\").trim().toLowerCase();if(!email||!email.includes(\"@\"))throw new Error(\"Enter the Recharge customer email to check.\");setLoading(button2,!0);try{const result=await api(\"/api/admin/recharge-sync/preview-email\",{method:\"POST\",body:JSON.stringify({email})});result.message=result.message||\"Recharge preview complete. Nothing has been changed.\",rechargeMembershipPreviewV473={...result,email},renderRechargeSyncResult(result,\"preview\");const reconcileButton=$2(\"rechargeSyncEmailButton\");reconcileButton&&(reconcileButton.disabled=Number(result.rechargeSubscriptionsFound||0)<1,reconcileButton.textContent=Number(result.missingMembershipSeats||0)>0?\"Reconcile Missing Memberships\":\"Run Reconciliation Again\"),$2(\"memberSearchInput\")&&($2(\"memberSearchInput\").value=email),setNotice2(\"Recharge membership check completed. Nothing has been changed.\")}finally{setLoading(button2,!1)}}async function syncRechargeByEmail(button2){const email=String($2(\"rechargeSyncEmailInput\")?.value||$2(\"memberSearchInput\")?.value||\"\").trim().toLowerCase();if(!email||!email.includes(\"@\"))throw new Error(\"Enter the Recharge customer email to sync.\");if(!rechargeMembershipPreviewV473||rechargeMembershipPreviewV473.email!==email)throw new Error(\"Check Recharge first. Orbit will not run membership reconciliation until the current email has been previewed.\");const quantity=Number(rechargeMembershipPreviewV473.rechargeQuantity||0),before=Number(rechargeMembershipPreviewV473.orbitMembershipsBefore||0),missing=Number(rechargeMembershipPreviewV473.missingMembershipSeats||0),confirmMessage=missing>0?\"Recharge reports quantity \"+quantity+\" and Orbit currently has \"+before+\" membership(s). Reconcile \"+missing+\" missing Orbit membership seat(s)? Recharge billing quantity will NOT be changed.\":\"Recharge and Orbit already appear to match. Run reconciliation again to prove the operation is idempotent? No Recharge billing changes will be made.\";if(!(typeof window.confirm==\"function\"&&!window.confirm(confirmMessage))){setLoading(button2,!0);try{const result=await api(\"/api/admin/recharge-sync/email/\"+encodeURIComponent(email),{method:\"POST\"});result.message=result.message||\"Recharge membership reconciliation completed.\",renderRechargeSyncResult(result,\"sync\"),rechargeMembershipPreviewV473={success:!0,mode:\"preview\",email,rechargeCustomersFound:result.rechargeCustomersFound,rechargeSubscriptionsFound:result.rechargeSubscriptionsFound,rechargeQuantity:result.rechargeQuantity,orbitMembershipsBefore:result.orbitMembershipsAfter,missingMembershipSeats:Math.max(0,Number(result.rechargeQuantity||0)-Number(result.orbitMembershipsAfter||0)),quantityReductionReviews:result.quantityReductionReviews||0,subscriptions:(result.results||[]).map(function(item){return{...item,orbitMembershipsBefore:item.orbitMembershipsAfter,missingMembershipSeats:Math.max(0,Number(item.quantity||0)-Number(item.orbitMembershipsAfter||0)),existingSeats:item.membershipSeats||[]}})},button2.textContent=\"Run Reconciliation Again\",button2.disabled=!1,$2(\"memberSearchInput\")&&($2(\"memberSearchInput\").value=email),await Promise.all([searchMembers(null),loadSummary()]),setNotice2(Number(result.membersCreated||0)>0?\"Missing Orbit membership seat created safely.\":\"Recharge reconciliation rerun complete \\u2014 no duplicate membership created.\")}finally{setLoading(button2,!1)}}}async function syncRechargeByCustomer(button2){const customerId=String($2(\"rechargeSyncCustomerInput\")?.value||\"\").trim();if(!customerId)throw new Error(\"Enter the Recharge customer ID to sync.\");setLoading(button2,!0);try{const result=await api(\"/api/admin/recharge-sync/customer/\"+encodeURIComponent(customerId),{method:\"POST\"});renderRechargeSyncResult(result,\"sync\"),result.email&&$2(\"memberSearchInput\")&&($2(\"memberSearchInput\").value=result.email),await searchMembers(null),setNotice2(\"Recharge customer sync completed.\")}finally{setLoading(button2,!1)}}function renderBillingIntegrityV482(result){const target=$2(\"billingIntegrityResult\");if(!target)return;const rows=Array.isArray(result?.rows)?result.rows:[],checkout=result?.directSignupCheckoutIntegrity||null,checkoutLine=checkout?\"<div class='orbit-recharge-reconcile-status-v473 \"+(Number(checkout.stillCritical||0)>0||checkout.success===!1?\"warning\":\"good\")+\"'><strong>Direct \\xA31 Shopify checkout integrity</strong><span>Re-read \"+esc(Number(checkout.checked||0))+\" previously critical Shopify order(s): \"+esc(Number(checkout.verified||0))+\" verified, \"+esc(Number(checkout.stillCritical||0))+\" still critical\"+(Number((checkout.errors||[]).length)?\" \\xB7 \"+esc((checkout.errors||[]).length)+\" lookup error(s)\":\"\")+\".</span></div>\":\"\";target.innerHTML=checkoutLine+\"<div class='orbit-recharge-reconcile-status-v473 \"+(Number(result?.critical||0)>0?\"warning\":\"good\")+\"'><strong>\"+esc(Number(result?.critical||0)>0?\"Billing mismatch found\":\"Pending billing verified\")+\"</strong><span>Checked \"+esc(Number(result?.total||0))+\" pending \\xA31 subscription(s): \"+esc(Number(result?.verified||0))+\" verified, \"+esc(Number(result?.critical||0))+\" critical.</span></div>\"+(rows.length?\"<div class='orbit-recharge-subscriptions-v473'>\"+rows.map(function(row){return\"<article class='orbit-recharge-subscription-v473'><div><strong>\"+esc(row.memberNumber||row.email||row.subscriptionId)+\"</strong><span>Expected \"+esc(row.expectedDate||\"\\u2014\")+\" \\xB7 Recharge Charge \"+esc(row.chargeId||\"not found\")+\" \\xB7 Actual \"+esc(row.actualDate||\"\\u2014\")+\" \\xB7 \"+esc(row.actualUnitPrice==null?\"price unknown\":\"\\xA3\"+Number(row.actualUnitPrice).toFixed(2))+\"</span></div><span class='orbit-recharge-safe-badge-v473'>\"+esc(row.verified?\"Verified\":\"CRITICAL\")+\"</span>\"+(row.verified?\"\":\"<button type='button' class='secondary' data-billing-repair='\"+esc(row.subscriptionId)+\"'>Verify & Repair</button>\")+\"</article>\"}).join(\"\")+\"</div>\":\"\")}async function checkBillingIntegrityV482(button2){setLoading(button2,!0);try{const result=await api(\"/api/admin/members/billing-integrity\");renderBillingIntegrityV482(result),setNotice2(Number(result.critical||0)>0?\"Billing integrity check found provider mismatches.\":\"Pending \\xA31 billing matches Recharge queued Charges.\",Number(result.critical||0)>0)}finally{setLoading(button2,!1)}}function ensureRechargeEntitlementAuditV665(){const host=$2(\"rechargeReconciliationWorkspace\");if(!host)return null;let panel=$2(\"rechargeEntitlementAuditV665\");return panel||(panel=document.createElement(\"article\"),panel.id=\"rechargeEntitlementAuditV665\",panel.className=\"orbit-recharge-reconcile-v473\",panel.innerHTML='<div class=\"orbit-recharge-reconcile-head-v473\"><div><p class=\"orbit-kicker\">Recharge Entitlement Audit</p><h3>Reconcile every member, payment and parcel</h3><p>Reads Recharge status and the current-cycle charge, then compares Orbit status and parcel entitlement. It never clicks Process now or creates a provider charge.</p></div><span class=\"orbit-recharge-safe-badge-v473\">Provider read-only</span></div><div class=\"orbit-recharge-reconcile-controls-v473\"><button id=\"rechargeEntitlementAuditButtonV665\" type=\"button\" class=\"secondary\">Audit All Members</button><button id=\"rechargeEntitlementReconcileButtonV665\" type=\"button\">Reconcile Safe Local State</button></div><div id=\"rechargeEntitlementAuditResultV665\" class=\"orbit-recharge-reconcile-result-v473\" aria-live=\"polite\"><div class=\"orbit-recharge-reconcile-empty-v473\"><strong>Not checked yet.</strong><span>Audit compares Recharge subscription/charge truth with Orbit member status and funded parcel entitlement.</span></div></div><hr><div class=\"orbit-recharge-reconcile-head-v473\"><div><p class=\"orbit-kicker\">Protected parcel cleanup</p><h3>Remove impossible pre-September parcel records</h3><p>September 2026 was the first real Members Club parcel cycle. This tool deletes only invalid parcel/fulfilment rows; member, billing and payment records are never deleted.</p></div><span class=\"orbit-recharge-safe-badge-v473\">Dry run first</span></div><div class=\"orbit-recharge-reconcile-controls-v473\"><button id=\"parcelIntegrityPreviewButtonV669\" type=\"button\" class=\"secondary\">Preview Parcel Cleanup</button><button id=\"parcelIntegrityApplyButtonV669\" type=\"button\" disabled>Purge Proven Invalid Parcels</button></div><div id=\"parcelIntegrityResultV669\" class=\"orbit-recharge-reconcile-result-v473\" aria-live=\"polite\"><div class=\"orbit-recharge-reconcile-empty-v473\"><strong>Not checked yet.</strong><span>Preview lists the exact parcel rows eligible for permanent deletion before anything is removed.</span></div></div>',host.appendChild(panel),panel)}function renderRechargeEntitlementAuditV665(result){const target=$2(\"rechargeEntitlementAuditResultV665\");if(!target)return;const counts=result?.counts||{},rows=result?.rows||[],errors=result?.errors||[],currentOk=Number(counts.currentCycleMismatchSeats||0)===0&&Number(counts.currentCycleFundedSeats||0)===Number(counts.currentCycleParcels||0),cards=`<div class=\"orbit-dashboard-kpis\"><article class=\"orbit-metric\"><span>Members checked</span><strong>${Number(counts.members||0)}</strong><small>${Number(counts.billingSubscriptions||0)} Recharge subscriptions</small></article><article class=\"orbit-metric\"><span>Current funded seats</span><strong>${Number(counts.currentCycleFundedSeats||0)}</strong><small>${Number(counts.currentCycleParcels||0)} current parcel(s) \\xB7 ${Number(counts.currentCycleMismatchSeats||0)} mismatch(es)</small></article><article class=\"orbit-metric\"><span>Payment Pending</span><strong>${Number(counts.paymentPending||0)}</strong><small>Queued / draft / processing</small></article><article class=\"orbit-metric\"><span>Payment Due</span><strong>${Number(counts.paymentDue||0)}</strong><small>Failed charge recovery</small></article></div><div class=\"orbit-action-result ${currentOk?\"success\":\"warning\"}\"><strong>${currentOk?\"Current fulfilment reconciles to successful payments.\":\"Current fulfilment still needs reconciliation.\"}</strong> Funded seats ${Number(counts.currentCycleFundedSeats||0)} \\xB7 current parcels ${Number(counts.currentCycleParcels||0)} \\xB7 mismatched seats ${Number(counts.currentCycleMismatchSeats||0)}. ${Number(counts.prelaunchParcelsRetired||0)} impossible pre-September parcel(s), ${Number(counts.unfundedCurrentParcelsRetired||0)} unfunded current parcel(s), and ${Number(counts.satisfiedHistoricalDuplicatesRetired||0)} satisfied historical duplicate(s) were retired on this run.</div>`,table2=rows.length?`<div class=\"orbit-table-wrap\"><table><thead><tr><th>Member</th><th>Recharge</th><th>Charge</th><th>Orbit</th><th>Funded cycle</th><th>Current cycle</th><th>Parcel</th><th>Sequence</th><th>Why</th></tr></thead><tbody>${rows.map(r=>`<tr><td><strong>${esc(r.memberNumber||r.subscriptionId)}</strong><small>${esc(r.email||\"\")}</small></td><td>${esc(r.rechargeStatus||\"\\u2014\")}<small>${esc(r.billingSubscriptionId||\"\")}</small></td><td>${esc(r.chargeStatus||\"\\u2014\")}<small>${esc(r.scheduledAt?prettyDate(r.scheduledAt):\"\")}</small></td><td><strong>${esc(r.orbitStatus||\"\\u2014\")}</strong>${r.orbitStatusBefore&&r.orbitStatusBefore!==r.orbitStatus?`<small>was ${esc(r.orbitStatusBefore)}</small>`:\"\"}</td><td>${esc(r.expectedFundedCycle||\"\\u2014\")}</td><td>${r.hasSuccessfulCurrentCycleFunding?\"Funded\":\"Not funded\"}<small>${r.currentCycleParcelExists?`${Number(r.currentCycleParcelCount||1)} parcel(s)`:\"No current parcel\"}</small></td><td>${r.parcelExists?`Yes${Number(r.parcelCount||0)>1?` (${Number(r.parcelCount)})`:\"\"}`:\"No\"}</td><td>${r.actualParcelSequence?`Parcel ${Number(r.actualParcelSequence)}`:`Expected Parcel ${Number(r.expectedParcelSequence||1)}`}<small>${Number(r.priorFundedParcels||0)} prior funded parcel(s)</small></td><td>${esc(r.discrepancyReason||\"\")}</td></tr>`).join(\"\")}</tbody></table></div>`:\"<p>No linked Recharge memberships were returned.</p>\",err=errors.length?`<div class=\"orbit-action-result error\"><strong>${errors.length} item(s) need review.</strong> ${esc(errors.slice(0,3).map(x=>x.error).join(\" \\xB7 \"))}</div>`:\"\";target.innerHTML=cards+err+table2}async function loadRechargeEntitlementAuditV665(button2,apply=!1){setLoading(button2,!0);const other=$2(apply?\"rechargeEntitlementAuditButtonV665\":\"rechargeEntitlementReconcileButtonV665\");other&&(other.disabled=!0);try{const result=await api(\"/api/admin/members/recharge-entitlement-audit\"+(apply?\"/reconcile\":\"\"),{method:apply?\"POST\":\"GET\",body:apply?\"{}\":void 0,cacheMs:0,timeoutMs:12e4});return renderRechargeEntitlementAuditV665(result),apply&&(await loadMemberSummary(),setNotice2(`Recharge reconciliation complete: ${Number(result.counts?.reconciledGroups||0)} billing group(s) updated, ${Number(result.counts?.missingExpectedParcels||0)} funded parcel mismatch(es) remain.`,!!result.counts?.errors)),result}finally{setLoading(button2,!1),other&&(other.disabled=!1)}}function renderParcelIntegrityPreviewV669(result){const target=$2(\"parcelIntegrityResultV669\"),apply=$2(\"parcelIntegrityApplyButtonV669\");if(!target)return;const c=result?.counts||{},pre=result?.preSeptemberCandidates||[],sep=result?.septemberOutstandingCandidates||[],candidates=[...pre,...sep],unsafe=result?.unsafePreSeptember||[];apply&&(apply.disabled=!result?.safe||!candidates.length);const rows=candidates.map(x=>({...x,reason:String(x.month_key||\"\")<\"2026-09\"?\"Impossible pre-September parcel entitlement\":\"Stale unshipped September outstanding parcel\"}));target.innerHTML=`<div class=\"orbit-dashboard-kpis\"><article class=\"orbit-metric\"><span>Delete candidates</span><strong>${Number(c.totalDelete||rows.length||0)}</strong><small>Invalid parcel rows only</small></article><article class=\"orbit-metric\"><span>Pre-September</span><strong>${Number(c.preSeptemberDelete||0)}</strong><small>July/August impossible entitlements</small></article><article class=\"orbit-metric\"><span>Stale September</span><strong>${Number(c.septemberOutstandingDelete||0)}</strong><small>Unshipped operational rows</small></article><article class=\"orbit-metric\"><span>Unsafe / review</span><strong>${Number(c.unsafe||unsafe.length||0)}</strong><small>Shipping evidence blocks auto-delete</small></article></div>${unsafe.length?`<div class=\"orbit-action-result warning\"><strong>${unsafe.length} pre-September row(s) were NOT selected for deletion.</strong> They have shipping/tracking evidence and require manual review.</div>`:\"\"}${rows.length?`<div class=\"orbit-table-wrap\"><table><thead><tr><th>Member</th><th>Funded cycle</th><th>Status</th><th>Reason</th><th>Pack ID</th></tr></thead><tbody>${rows.map(x=>`<tr><td><strong>${esc(x.member_number||x.subscription_id||\"Unknown seat\")}</strong></td><td>${esc(x.month_key||\"\\u2014\")}</td><td>${esc(x.fulfilment_status||x.status||\"\\u2014\")}</td><td>${esc(x.reason)}</td><td>${esc(x.pack_id||\"\\u2014\")}</td></tr>`).join(\"\")}</tbody></table></div>`:'<div class=\"orbit-action-result success\"><strong>No invalid parcel rows found.</strong></div>'}`}async function loadParcelIntegrityV669(button2,apply=!1){setLoading(button2,!0);try{if(apply){const confirmation=prompt(\"This permanently deletes only proven invalid parcel records. Member and billing data are preserved. Type PURGE INVALID PARCELS exactly:\");if(confirmation!==\"PURGE INVALID PARCELS\")return null;const result2=await api(\"/api/admin/members/parcel-integrity-cleanup/apply\",{method:\"POST\",body:JSON.stringify({confirmation}),cacheMs:0,timeoutMs:6e4});return renderParcelIntegrityPreviewV669(result2.after||result2.preview||result2),setNotice2(`Parcel cleanup complete: ${Number(result2.deleted?.monthlyPacks||0)} invalid parcel row(s) permanently removed.`),await loadMemberSummary(),await loadFulfilment(null,!0),await loadRechargeEntitlementAuditV665($2(\"rechargeEntitlementAuditButtonV665\"),!1),result2}const result=await api(\"/api/admin/members/parcel-integrity-cleanup/preview\",{cacheMs:0,timeoutMs:3e4});return renderParcelIntegrityPreviewV669(result),result}finally{setLoading(button2,!1)}}async function repairBillingIntegrityV482(subscriptionId,button2){if(typeof window.prompt!=\"function\")return;const confirmation=window.prompt(\"This changes the real Recharge billing schedule. Type VERIFY AND REPAIR BILLING exactly:\");if(confirmation===\"VERIFY AND REPAIR BILLING\"){setLoading(button2,!0);try{const result=await api(\"/api/admin/members/billing-integrity/\"+encodeURIComponent(subscriptionId)+\"/repair\",{method:\"POST\",body:JSON.stringify({confirmation})});setNotice2(result.verified?\"Recharge queued Charge verified after repair.\":\"Recharge still does not match. Critical Billing Sync remains open.\",!result.verified),await checkBillingIntegrityV482($2(\"billingIntegrityCheckButton\"))}finally{setLoading(button2,!1)}}}function renderBillingIncidentV482(result){const target=$2(\"billingIncidentResult\");target&&(target.innerHTML=\"<div class='orbit-recharge-reconcile-status-v473 \"+(result.repairable?\"attention\":\"good\")+\"'><strong>Activation incident preview</strong><span>Actual payment \"+esc(result.actualPaidDate||\"\\u2014\")+\" \\xB7 Contract first full charge \"+esc(result.expectedFirstFullChargeDate||\"\\u2014\")+\" \\xB7 Correct parcel cycle \"+esc(result.expectedActivationMonth||\"\\u2014\")+\" \\xB7 Wrong unshipped parcels \"+esc((result.wrongPacks||[]).length)+\".</span></div>\"+(result.repairable?\"<button id='billingIncidentRepairButton' type='button'>Repair Billing Incident</button>\":\"\")+(result.unsafeWrongPacks?.length?\"<p class='orbit-recharge-review-warning-v473'>Automatic repair blocked because shipping evidence exists.</p>\":\"\"))}async function previewBillingIncidentV482(button2){const id=String($2(\"billingIncidentSubscriptionInput\")?.value||\"\").trim();if(!id)throw new Error(\"Enter the Recharge subscription ID.\");setLoading(button2,!0);try{const result=await api(\"/api/admin/members/billing-incident/\"+encodeURIComponent(id)+\"/preview\");renderBillingIncidentV482(result),$2(\"billingIncidentRepairButton\")?.addEventListener(\"click\",function(){repairBillingIncidentV482(id,this).catch(err=>setNotice2(err.message||String(err),!0))})}finally{setLoading(button2,!1)}}async function repairBillingIncidentV482(subscriptionId,button2){if(typeof window.prompt!=\"function\")return;const confirmation=window.prompt(\"This voids only proven incorrect, unshipped parcel rows. Type REPAIR BILLING INCIDENT exactly:\");if(confirmation===\"REPAIR BILLING INCIDENT\"){setLoading(button2,!0);try{const result=await api(\"/api/admin/members/billing-incident/\"+encodeURIComponent(subscriptionId)+\"/repair\",{method:\"POST\",body:JSON.stringify({confirmation,operator:\"Orbit Admin\"})});setNotice2(\"Billing incident repaired: wrong cycle voided and contractual parcel preserved.\"),renderBillingIncidentV482(result.after||result),await loadFulfilment()}finally{setLoading(button2,!1)}}}function renderPostCutoffRetryV698(result){const target=$2(\"postCutoffRetryResultV698\");if(!target)return;const evidence=result?.successfulPaymentEvidence||{},wrong=result?.wrongPacks||[],targetPacks=result?.targetPacks||[];target.innerHTML=`<div class=\"orbit-recharge-reconcile-status-v473 ${result?.repairable?\"attention\":\"good\"}\"><strong>Post-cutoff retry preview</strong><span>Successful payment ${esc(evidence.paidDate||\"\\u2014\")} \\xB7 ${evidence.paidAmount==null?\"amount unavailable\":formatMoney(evidence.paidAmount)} \\xB7 funded cycle ${esc(result?.cycleMonth||\"\\u2014\")} \\xB7 next normal billing ${esc(result?.nextDate||\"\\u2014\")} \\xB7 incorrect following-month parcels ${wrong.length} \\xB7 approved exception parcel rows ${targetPacks.length}.</span></div>${result?.unsafeWrongPacks?.length?'<p class=\"orbit-recharge-review-warning-v473\">Repair blocked: the incorrect following-month parcel has shipping/label evidence.</p>':\"\"}${result?.repairable?'<button id=\"postCutoffRetryRepairV698\" type=\"button\">Repair Post-Cutoff Retry</button>':\"\"}`}async function previewPostCutoffRetryV698(button2){const subscriptionId=String($2(\"postCutoffRetrySubscriptionV698\")?.value||\"\").trim(),parcelExceptionMonth=String($2(\"postCutoffRetryMonthV698\")?.value||\"\").trim();if(!subscriptionId)throw new Error(\"Enter the Recharge subscription ID.\");if(!/^\\d{4}-\\d{2}$/.test(parcelExceptionMonth))throw new Error(\"Choose the explicitly approved one-off parcel month.\");setLoading(button2,!0);try{const result=await api(`/api/admin/members/post-cutoff-retry/${encodeURIComponent(subscriptionId)}/preview?parcelExceptionMonth=${encodeURIComponent(parcelExceptionMonth)}`,{cacheMs:0,timeoutMs:3e4});return renderPostCutoffRetryV698(result),$2(\"postCutoffRetryRepairV698\")?.addEventListener(\"click\",function(){repairPostCutoffRetryV698(subscriptionId,parcelExceptionMonth,this).catch(err=>setNotice2(err.message||String(err),!0))}),result}finally{setLoading(button2,!1)}}async function repairPostCutoffRetryV698(subscriptionId,parcelExceptionMonth,button2){if(typeof window.prompt!=\"function\"||!window.confirm(`This keeps the midnight-on-the-5th cutoff unchanged. It will bind the proven late payment to ${parcelExceptionMonth}, remove only an unshipped unfunded following-month parcel, and restore the next normal Recharge date. Continue?`))return;const confirmation=window.prompt(\"Type REPAIR POST CUTOFF RETRY exactly:\");if(confirmation===\"REPAIR POST CUTOFF RETRY\"){setLoading(button2,!0);try{const result=await api(`/api/admin/members/post-cutoff-retry/${encodeURIComponent(subscriptionId)}/repair`,{method:\"POST\",body:JSON.stringify({confirmation,parcelExceptionMonth,operator:\"Orbit Admin\"}),cacheMs:0,timeoutMs:6e4});renderPostCutoffRetryV698(result.after||result),setNotice2(`Post-cutoff retry repaired. ${parcelExceptionMonth} remains the one-off parcel exception; the normal cutoff rule is unchanged.`),await loadFulfilment(null,!0),state.selectedMemberLookup&&await openMemberWorkspace(state.selectedMemberLookup,{preservePane:!0}).catch(()=>{})}finally{setLoading(button2,!1)}}}async function copyText(value,button2){if(!value)throw new Error(\"Nothing to copy.\");const originalText=button2?button2.textContent:\"\";button2&&(button2.disabled=!0,button2.textContent=\"Copied \\u2713\",button2.classList.add(\"orbit-copy-confirmed\"));try{if(navigator.clipboard?.writeText)await navigator.clipboard.writeText(value);else{const input=document.createElement(\"textarea\");if(input.value=value,input.setAttribute(\"readonly\",\"\"),input.style.position=\"fixed\",input.style.opacity=\"0\",document.body.appendChild(input),input.select(),!document.execCommand(\"copy\"))throw new Error(\"Clipboard copy was blocked.\");input.remove()}setNotice2(\"Copied to clipboard.\")}finally{button2&&window.setTimeout(function(){button2.disabled=!1,button2.textContent=originalText,button2.classList.remove(\"orbit-copy-confirmed\")},1400)}}async function refreshScheduledRuns(button2){const originalText=button2?button2.textContent:\"\";try{button2&&(button2.disabled=!0,button2.textContent=\"Refreshing...\"),await loadScheduler();const stamp=new Date().toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\"});setNotice2(\"Scheduled Draws refreshed at \"+stamp+\".\"),text(\"scheduledRunsRefreshNotice\",\"Scheduled Draws refreshed at \"+stamp);const panel=$2(\"tab-scheduled-runs\");panel&&(panel.dataset.lastRefresh=stamp,panel.classList.add(\"orbit-panel-flash\"),window.setTimeout(()=>panel.classList.remove(\"orbit-panel-flash\"),900))}catch(err){console.error(err),setNotice2(\"Scheduled Draws refresh failed: \"+(err.message||err),!0),text(\"scheduledRunsRefreshNotice\",\"Refresh failed\")}finally{button2&&(button2.disabled=!1,button2.textContent=originalText||\"Refresh\")}}function getTestMemberSearchValue(){return String($2(\"testMemberSearchInput\")?.value||\"\").trim()}function renderTestMemberResult(data){const target=$2(\"testMemberResult\");if(!target)return;if(!data||!data.member){target.innerHTML=\"Search a member to load testing tools.\";return}const member=data.member||{},tickets=data.tickets||[],summary=data.ticketSummary||{};target.innerHTML=\"<div class='orbit-test-member-hero'><p class='orbit-kicker'>Selected Test Member</p><h3>\"+esc(member.memberNumber||\"No member number\")+\"</h3><small>\"+esc(member.name||\"Orbit Member\")+\" \\xB7 \"+esc(member.email||\"No email\")+\"</small><span class='orbit-pill'>\"+esc(member.status||\"Status unknown\")+\" \\xB7 Stage \"+esc(member.stage??\"\\u2014\")+\"</span><small>Tickets \"+esc(summary.total||0)+\" \\xB7 Checked in \"+esc(summary.checkedIn||0)+\" \\xB7 Waiting \"+esc(summary.waiting||0)+\"</small></div><div class='orbit-test-ticket-list'>\"+(tickets.length?tickets.map(function(ticket){return\"<div class='orbit-test-ticket-row'><strong>\"+esc(ticket.ticketId||\"No ticket ID\")+\"</strong><small>\"+esc(ticket.eventName||ticket.eventbriteEventId||\"Orbit event\")+\"</small><small>Status: \"+esc(ticket.ticketStatus||\"\\u2014\")+\" \\xB7 Checked in: \"+esc(ticket.checkedIn?\"Yes\":\"No\")+\" \\xB7 Scans: \"+esc(ticket.scanCount||0)+\"</small></div>\"}).join(\"\"):\"<p class='orbit-muted'>No current Orbit tickets found for this member.</p>\")+\"</div>\"}async function lookupTestMember(button2){const search=getTestMemberSearchValue();if(!search)throw new Error(\"Enter a member number or email first.\");try{setLoading(button2,!0);const data=await api(\"/api/admin/test/member-lookup?search=\"+encodeURIComponent(search));return state.testMember=data,renderTestMemberResult(data),setNotice2(\"Test member loaded.\"),data}finally{setLoading(button2,!1)}}async function setTestMemberStatus(status,button2){const search=getTestMemberSearchValue();if(!search)throw new Error(\"Enter a member number or email first.\");try{setLoading(button2,!0);const data=await api(\"/api/admin/test/member-status\",{method:\"POST\",body:JSON.stringify({search,status})});state.testMember=data,renderTestMemberResult(data),setNotice2(status===\"active\"?\"Member set Active for testing.\":\"Member set Pending for testing.\")}finally{setLoading(button2,!1)}}async function resetTestMemberTools(mode,button2){const search=getTestMemberSearchValue();if(!search)throw new Error(\"Enter a member number or email first.\");const body=mode===\"attendance\"?{search,clearClaims:!1,clearAttendance:!0,keepTickets:!0}:{search,clearClaims:!0,clearAttendance:!0,keepTickets:!1};try{setLoading(button2,!0);const data=await api(\"/api/admin/test/member-tools-reset\",{method:\"POST\",body:JSON.stringify(body)});state.testMember=data,renderTestMemberResult(data),await Promise.all([loadAttendance(),loadSummary()]),setNotice2(mode===\"attendance\"?\"Check-ins reset. Tickets kept.\":\"Ticket claims reset. Member can claim again.\")}finally{setLoading(button2,!1)}}async function testFulfilCheckout(checkoutId,button2){if(checkoutId){setLoading(button2,!0);try{const result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/test-fulfil\",{method:\"POST\",body:JSON.stringify({})}),target=$2(\"shopifyWebhookResult\");target&&(target.textContent=JSON.stringify(result,null,2)),await loadShopify(),setNotice2(\"Test fulfilment ran. Check Resend email and scanner next.\")}finally{setLoading(button2,!1)}}}async function createFreeTestCheckout(checkoutId,button2){if(checkoutId){setLoading(button2,!0);try{const result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/free-test-checkout\",{method:\"POST\",body:JSON.stringify({})}),target=$2(\"shopifyWebhookResult\");target&&(target.textContent=JSON.stringify(result,null,2)),await loadShopify(),result.checkoutUrl&&window.open(result.checkoutUrl,\"_blank\",\"noopener\"),setNotice2(\"\\xA30 Shopify test checkout created. Complete that checkout, then return here and refresh.\")}finally{setLoading(button2,!1)}}}async function syncCheckoutOrder(checkoutId,button2){if(checkoutId){setLoading(button2,!0);try{const result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/sync-order\",{method:\"POST\",body:JSON.stringify({})}),target=$2(\"shopifyWebhookResult\");target&&(target.textContent=JSON.stringify(result,null,2)),await loadShopify(),setNotice2(result.success?\"Sync completed. Check row status and email.\":\"Sync ran but did not find the Shopify order yet.\",!result.success)}finally{setLoading(button2,!1)}}}async function resendPublicTickets(checkoutId,button2){if(!checkoutId)return;const row=(state.ticketCheckouts?.checkouts||[]).find(function(item){return String(item.checkoutId||\"\")===String(checkoutId||\"\")});state.pendingTicketResendCheckoutId=checkoutId,$2(\"ticketResendEmailInput\")&&($2(\"ticketResendEmailInput\").value=row?.customerEmail||button2?.dataset?.ticketEmail||\"\"),$2(\"ticketResendResult\")&&($2(\"ticketResendResult\").textContent=\"No email has been sent.\");const dialog=$2(\"ticketResendDialog\");dialog&&typeof dialog.showModal==\"function\"&&!dialog.open&&dialog.showModal()}async function forceFulfilCheckout(checkoutId,button2){if(checkoutId){setLoading(button2,!0);try{const result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/force-fulfil\",{method:\"POST\",body:JSON.stringify({})}),target=$2(\"shopifyWebhookResult\");target&&(target.textContent=JSON.stringify(result,null,2)),await loadShopify();const status=result.checkout?.status||result.result?.checkout?.status||\"unknown\",tickets=result.checkout?.ticketCount||result.result?.ticketCount||0;setNotice2(status===\"fulfilled\"?\"Force fulfilment complete. Row is fulfilled and \"+tickets+\" ticket(s) were issued.\":\"Force fulfilment ran. Check the result panel for details.\",status!==\"fulfilled\")}finally{setLoading(button2,!1)}}}async function ensureShopifyWebhook(button2){setLoading(button2,!0);try{const result=await api(\"/api/admin/shopify/webhooks/ensure\",{method:\"POST\",body:JSON.stringify({})}),target=$2(\"shopifyWebhookResult\");target&&(target.textContent=JSON.stringify(result,null,2)),await loadShopify(),setNotice2(result.message||\"Shopify ticket lifecycle webhooks confirmed.\")}finally{setLoading(button2,!1)}}function factoryPayload(){return{name:$2(\"factoryNameInput\")?.value||\"Orbit Test Member\",email:$2(\"factoryEmailInput\")?.value||\"\",route:$2(\"factoryRouteInput\")?.value||\"upgrade_route\",stage:Number($2(\"factoryStageInput\")?.value||3),addressLine1:$2(\"factoryAddress1Input\")?.value||\"25 Test Street\",addressLine2:$2(\"factoryAddress2Input\")?.value||\"\",city:$2(\"factoryCityInput\")?.value||\"Bristol\",county:$2(\"factoryCountyInput\")?.value||\"\",postcode:$2(\"factoryPostcodeInput\")?.value||\"BS1 1AA\",phone:$2(\"factoryPhoneInput\")?.value||\"07400000000\",signupDate:$2(\"factorySignupDateInput\")?.value||\"\",monthKey:$2(\"factoryMonthKeyInput\")?.value||currentMonthKey(),createPack:$2(\"factoryCreatePackInput\")?$2(\"factoryCreatePackInput\").checked:!0}}async function createTestMemberFactory(button2){const payload=factoryPayload();if(!payload.email||!payload.email.includes(\"@\"))throw new Error(\"Enter a valid test member email.\");setLoading(button2,!0);try{const result=await api(\"/api/admin/testing/create-test-member\",{method:\"POST\",body:JSON.stringify(payload)}),target=$2(\"testMemberFactoryResult\");target&&(target.innerHTML=\"<strong>Created:</strong> \"+esc(result.memberNumber)+\"<br>Email: \"+esc(result.email)+(result.pack?\"<br>Pack: \"+esc(result.pack.pack_id||result.pack.packId):\"<br>No pack created.\")),$2(\"memberSearchInput\")&&($2(\"memberSearchInput\").value=result.email),$2(\"testMemberSearchInput\")&&($2(\"testMemberSearchInput\").value=result.email),await Promise.all([loadSummary(),loadFulfilment(),searchMembers(null)]),setNotice2(\"Test member created and available in Membership Centre.\")}finally{setLoading(button2,!1)}}async function loadAdminActivityLog(button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/activity-log\"),rows=[];(data.activity||[]).slice(0,50).forEach(item=>rows.push(\"<tr><td>Member</td><td>\"+esc(item.title||item.type||\"activity\")+\"</td><td>\"+esc(item.member_number||item.email||\"\\u2014\")+\"</td><td>\"+esc(item.message||\"\")+\"</td><td>\"+esc(prettyShortDate(item.created_at||item.createdAt))+\"</td></tr>\")),(data.workflows||[]).slice(0,50).forEach(item=>rows.push(\"<tr><td>Workflow</td><td>\"+esc(item.title||item.type||\"workflow\")+\"</td><td>\"+esc(item.status||\"\\u2014\")+\"</td><td>\"+esc(item.message||\"\")+\"</td><td>\"+esc(prettyShortDate(item.created_at||item.createdAt))+\"</td></tr>\")),(data.communications||[]).slice(0,50).forEach(item=>rows.push(\"<tr><td>Email</td><td>\"+esc(item.type||\"email\")+\"</td><td>\"+esc(item.to||\"\\u2014\")+\"</td><td>\"+esc(item.status||item.subject||\"\")+\"</td><td>\"+esc(prettyShortDate(item.createdAt))+\"</td></tr>\"));const target=$2(\"adminActivityLogTable\");target&&(target.innerHTML=table([\"Type\",\"Action\",\"Subject\",\"Detail\",\"Created\"],rows,\"No admin activity found yet.\")),setNotice2(\"Admin activity log loaded.\")}finally{setLoading(button2,!1)}}function launchResetReport(data){const counts=data?.counts||data?.before||{},rows=Object.entries(counts).map(([name,value])=>{const count=typeof value==\"number\"?value:value?.error?\"Error\":0;return\"<tr><td>\"+esc(name)+\"</td><td>\"+esc(count)+\"</td></tr>\"});return table([\"Operational collection\",\"Records\"],rows,\"No operational customer or test records found.\")}async function loadLaunchResetPreview(button2){setLoading(button2,!0);try{const result=await api(\"/api/admin/danger-zone/launch-reset/preview\"),target=$2(\"launchResetPreview\");target&&(target.innerHTML='<div class=\"orbit-launch-reset-total\"><strong>'+esc(result.total||0)+\"</strong><span>operational records will be deleted</span></div>\"+launchResetReport(result));const preserved=$2(\"launchResetPreserved\");preserved&&(preserved.textContent=(result.preserveCollections||[]).join(\", \")),setNotice2(\"Launch Reset preview loaded. No data has been deleted.\")}finally{setLoading(button2,!1)}}async function runLaunchReset(button2){const confirmation=String($2(\"launchResetConfirmInput\")?.value||\"\").trim(),acknowledged=!!$2(\"launchResetAcknowledge\")?.checked;if(confirmation!==\"DELETE CUSTOMER DATA\")throw new Error(\"Type DELETE CUSTOMER DATA exactly.\");if(!acknowledged)throw new Error(\"Confirm that Shopify, Recharge and other external customer records will remain.\");if(window.confirm(\"FINAL CONFIRMATION: permanently delete all internal Orbit OS customer and test operational data while preserving templates and configuration?\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/danger-zone/launch-reset\",{method:\"POST\",body:JSON.stringify({confirmation,acknowledged})}),target=$2(\"launchResetResult\");if(target&&(target.innerHTML=\"<strong>\"+esc(result.message)+\"</strong><p>Total deleted: \"+esc(result.totalDeleted||0)+\"</p><p>Remaining operational records: \"+esc(result.remainingOperationalRecords||0)+\"</p>\"+launchResetReport({counts:result.deleted||{}})),Object.keys(result.errors||{}).length)throw new Error(\"Launch Reset completed with errors. Review the deletion report.\");$2(\"launchResetConfirmInput\")&&($2(\"launchResetConfirmInput\").value=\"\"),$2(\"launchResetAcknowledge\")&&($2(\"launchResetAcknowledge\").checked=!1),await loadAll(null),setNotice2(\"Launch Reset complete. Templates and configuration were preserved.\")}finally{setLoading(button2,!1)}}}async function downloadMemberQr(format,button2,memberLookup,memberNumber){if(!memberLookup)throw new Error(\"Select a member first.\");setLoading(button2,!0);try{const url=API_BASE+\"/api/admin/members/\"+encodeURIComponent(memberLookup)+\"/loyalty-qr?format=\"+encodeURIComponent(format||\"png\")+\"&secret=\"+encodeURIComponent(secret)+adminSessionQueryV329(),response=await fetch(url);if(!response.ok)throw new Error(await response.text()||\"QR download failed.\");const blob=await response.blob(),a=document.createElement(\"a\");a.href=URL.createObjectURL(blob),a.download=(memberNumber||\"member\")+\"-loyalty-qr-40mm.\"+(format||\"png\"),document.body.appendChild(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(a.href),5e3),setNotice2(\"Member QR downloaded.\")}finally{setLoading(button2,!1)}}async function downloadSelectedMemberQr(format,button2){return downloadMemberQr(format,button2,selectedMemberLookup,selectedMemberProfile?.profile?.memberNumber||\"member\")}async function testSelectedMemberQr(button2){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");setLoading(button2,!0);try{const l=(await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/loyalty\")).loyalty||{};alert(\"Member: \"+(l.memberNumber||\"\\u2014\")+`\nStatus: `+(l.status||\"\\u2014\")+`\nPoints: `+Number(l.pointsBalance||0)+`\nShows attended: `+Number(l.showsAttended||0)+`\n\n`+(l.scanUrl||\"No scan URL\"))}finally{setLoading(button2,!1)}}async function adjustSelectedMemberPoints(button2){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");const points=Number($2(\"loyaltyPointsAmount\")?.value||0),reason=$2(\"loyaltyPointsReason\")?.value||\"manual_bonus\",note=$2(\"loyaltyPointsNote\")?.value||\"\";if(!points)throw new Error(\"Enter a non-zero points amount.\");if(confirm(\"Apply \"+(points>0?\"+\":\"\")+points+\" points to this member?\")){setLoading(button2,!0);try{await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/loyalty/adjust\",{method:\"POST\",body:JSON.stringify({points,reason,note})});const y=window.scrollY;activeMemberPane=\"rewards\",await loadMemberProfile(selectedMemberLookup),requestAnimationFrame(()=>window.scrollTo({top:y,behavior:\"instant\"})),setNotice2(\"Loyalty points updated.\")}finally{setLoading(button2,!1)}}}async function reverseSelectedMemberPoints(entryId,button2){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");if(confirm(\"Reverse this points entry? The original record will remain in the audit history.\")){setLoading(button2,!0);try{await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/loyalty/\"+encodeURIComponent(entryId)+\"/reverse\",{method:\"POST\",body:JSON.stringify({})});const y=window.scrollY;activeMemberPane=\"rewards\",await loadMemberProfile(selectedMemberLookup),requestAnimationFrame(()=>window.scrollTo({top:y,behavior:\"instant\"})),setNotice2(\"Points entry reversed.\")}finally{setLoading(button2,!1)}}}async function confirmTicketResend(button2){const checkoutId=state.pendingTicketResendCheckoutId,email=String($2(\"ticketResendEmailInput\")?.value||\"\").trim();if(!checkoutId)throw new Error(\"No ticket order is selected.\");if(!email||!email.includes(\"@\"))throw new Error(\"Enter a valid recipient email.\");if(confirm(\"Resend all issued tickets for this order to \"+email+\"?\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/resend-tickets\",{method:\"POST\",body:JSON.stringify({email})});$2(\"ticketResendResult\")&&($2(\"ticketResendResult\").textContent=\"Sent \"+Number(result.resent||0)+\" ticket(s) to \"+email+\".\"),await loadShopify(),setNotice2(\"Tickets resent to \"+email+\".\")}finally{setLoading(button2,!1)}}}function setPrizeArea(area){const selected=area===\"golden\"?\"golden\":\"monthly\";state.currentPrizeArea=selected,document.querySelectorAll(\"[data-prize-area]\").forEach(button2=>button2.classList.toggle(\"active\",button2.dataset.prizeArea===selected)),document.querySelectorAll(\"[data-prize-subnav]\").forEach(button2=>{button2.hidden=button2.dataset.prizeSubnav!==selected}),setDrawPane(selected===\"golden\"?\"golden-create\":\"current\")}function syncPrizeNavigation(pane){const current=String(pane||\"current\"),isGolden=current.startsWith(\"golden\"),isSettings=current===\"schedule\";document.querySelectorAll('[data-workspace-group=\"draws\"] [data-module-nav=\"automation\"]').forEach(function(button2){let active=!1;button2.dataset.drawOpen?active=button2.dataset.drawOpen===current:button2.dataset.prizeArea===\"golden\"?active=isGolden:button2.dataset.prizeArea===\"monthly\"&&(active=!isGolden),button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")})}function setDrawPane(name){const pane=name||\"current\";state.currentDrawPane=pane,rememberOrbitSubtab(\"automation\",pane),String(pane).startsWith(\"golden\")?state.currentPrizeArea=\"golden\":state.currentPrizeArea=\"monthly\",document.querySelectorAll(\"[data-v77-draw-pane]\").forEach(section=>{section.hidden=section.dataset.v77DrawPane!==pane}),document.querySelectorAll(\"[data-v77-draw-tab]\").forEach(button2=>{const active=button2.dataset.v77DrawTab===pane;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")}),document.querySelectorAll(\"[data-prize-subnav]\").forEach(button2=>button2.hidden=button2.dataset.prizeSubnav!==state.currentPrizeArea),syncPrizeNavigation(pane),state.adminAuthenticated&&[\"monthly-prize-schedule\",\"golden-schedule\"].includes(pane)&&loadPrizeSchedulesV536().catch(err=>setNotice2(\"Prize schedules unavailable: \"+(err.message||err),!0)),state.adminAuthenticated&&[\"current\",\"history\"].includes(pane)&&loadDraws().catch(err=>setNotice2(\"Draws unavailable: \"+(err.message||err),!0)),pane===\"schedule\"&&loadScheduler().catch(function(err){const summary=$2(\"v77DrawScheduleSummary\");summary&&(summary.innerHTML=\"<strong>Draw schedule unavailable</strong><span>\"+esc(err.message||err)+\"</span>\")})}function ensureMemberMessageModal(){let modal=$2(\"memberMessageModal\");return modal||((document.querySelector(\".orbit-admin-app\")||document.body).insertAdjacentHTML(\"beforeend\",`\n        <div id=\"memberMessageModal\" class=\"orbit-modal\" hidden aria-hidden=\"true\">\n          <div class=\"orbit-modal-backdrop\" data-close-member-message></div>\n          <section class=\"orbit-modal-dialog\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"memberMessageModalTitle\">\n            <div class=\"orbit-modal-header\"><div><p class=\"orbit-kicker\">Member support</p><h2 id=\"memberMessageModalTitle\">New Support Conversation</h2><p id=\"memberMessageRecipient\" class=\"orbit-modal-recipient\"></p></div><button type=\"button\" class=\"orbit-modal-close\" data-close-member-message aria-label=\"Close\">\\xD7</button></div>\n            <label>Subject<input id=\"memberMessageSubject\" type=\"text\" value=\"Support message from Orbit\"></label>\n            <label>Opening message<textarea id=\"memberMessageBody\" rows=\"8\" placeholder=\"Write the first support message from Orbit. Paragraphs and line breaks are supported.\"></textarea></label>\n            <label class=\"orbit-modal-checkbox\"><input id=\"memberMessageNotify\" type=\"checkbox\" checked> <span>Email the member that a support message is waiting</span></label>\n            <div id=\"memberMessageResult\" class=\"orbit-action-result\" hidden></div>\n            <div class=\"orbit-action-row orbit-modal-actions\"><button type=\"button\" class=\"secondary\" data-close-member-message>Cancel</button><button type=\"button\" id=\"sendMemberMessageButton\">Start Conversation</button></div>\n          </section>\n        </div>`),modal=$2(\"memberMessageModal\")),modal?(modal.dataset.orbitBound!==\"true\"&&(modal.dataset.orbitBound=\"true\",modal.querySelectorAll(\"[data-close-member-message]\").forEach(button2=>button2.addEventListener(\"click\",closeMemberMessageModal)),$2(\"sendMemberMessageButton\")?.addEventListener(\"click\",function(){sendSelectedMemberSupportConversation(this).catch(err=>{const box=$2(\"memberMessageResult\");box&&(box.hidden=!1,box.textContent=err.message||String(err)),setNotice2(err.message||String(err),!0)})}),$2(\"memberMessageBody\")?.addEventListener(\"keydown\",function(event){(event.ctrlKey||event.metaKey)&&event.key===\"Enter\"&&(event.preventDefault(),$2(\"sendMemberMessageButton\")?.click())})),modal):null}function startSelectedMemberSupportConversation(){if(!selectedMemberLookup)throw new Error(\"Open a member before starting a support conversation.\");const modal=ensureMemberMessageModal();if(!modal)throw new Error(\"Support composer could not be created.\");const memberName=selectedMemberProfile?.profile?.holderName||selectedMemberProfile?.profile?.email||\"Member\",memberEmail=selectedMemberProfile?.profile?.email||\"\";return $2(\"memberMessageModalTitle\")&&($2(\"memberMessageModalTitle\").textContent=\"New support conversation with \"+memberName),$2(\"memberMessageRecipient\")&&($2(\"memberMessageRecipient\").textContent=memberEmail?memberName+\" \\xB7 \"+memberEmail:memberName),$2(\"memberMessageSubject\")&&($2(\"memberMessageSubject\").value=\"Support message from Orbit\"),$2(\"memberMessageBody\")&&($2(\"memberMessageBody\").value=\"\"),$2(\"memberMessageResult\")&&($2(\"memberMessageResult\").hidden=!0),modal.hidden=!1,modal.setAttribute(\"aria-hidden\",\"false\"),document.body.classList.add(\"orbit-modal-open\"),window.setTimeout(()=>$2(\"memberMessageBody\")?.focus(),20),!0}window.orbitOpenMemberSupportComposer=startSelectedMemberSupportConversation;function closeMemberMessageModal(){const modal=$2(\"memberMessageModal\");modal&&(modal.hidden=!0,modal.setAttribute(\"aria-hidden\",\"true\"),document.body.classList.remove(\"orbit-modal-open\"))}async function sendSelectedMemberSupportConversation(button2){if(!selectedMemberLookup)throw new Error(\"Open a member before starting a support conversation.\");const subject=String($2(\"memberMessageSubject\")?.value||\"\").trim()||\"Support message from Orbit\",message=String($2(\"memberMessageBody\")?.value||\"\").trim(),notifyMember=$2(\"memberMessageNotify\")?!!$2(\"memberMessageNotify\").checked:!0;if(!message)throw $2(\"memberMessageBody\")?.focus(),new Error(\"Write a message before sending.\");setLoading(button2,!0);try{const result=await api(\"/api/admin/support/start\",{method:\"POST\",body:JSON.stringify({lookup:selectedMemberLookup,subject,message,category:\"membership\",priority:\"normal\",notifyMember})});closeMemberMessageModal(),setNotice2(\"Support conversation started successfully.\"),activeMemberPane=\"support\",await Promise.all([loadSupportInbox(null,!0),loadOperationsV74(),loadSummary()]),await loadMemberProfile(selectedMemberLookup);const ticketId=result.ticket?.ticketId||result.ticket?.ticket_id||result.ticket?.id||result.ticketId;ticketId&&await openSupportConversation(ticketId)}finally{setLoading(button2,!1)}}function performanceMoney(value){return\"\\xA3\"+Number(value||0).toLocaleString(\"en-GB\",{minimumFractionDigits:2,maximumFractionDigits:2})}function ensureReportsPeriodV348(){const reports=document.querySelector('[data-module=\"reports\"]');if(!reports)return null;let select=document.getElementById(\"reportsPeriod\");if(select)return select;const header=reports.querySelector(\".orbit-panel-header\")||reports,label=document.createElement(\"label\");return label.className=\"orbit-period-filter orbit-period-filter-v348\",label.innerHTML='<span>Report period</span><select id=\"reportsPeriod\"><option value=\"today\">Today</option><option value=\"yesterday\">Yesterday</option><option value=\"last_7_days\">Last 7 days</option><option value=\"last_30_days\">Last 30 days</option><option value=\"this_month\">This month</option></select>',header.appendChild(label),select=label.querySelector(\"select\"),select.value=state.performancePeriod||document.getElementById(\"performancePeriod\")?.value||\"this_month\",select}document.addEventListener(\"DOMContentLoaded\",function(){ensureReportsPeriodV348()});function performanceDate(value){return value?new Date(value).toLocaleString(\"en-GB\",{dateStyle:\"medium\",timeStyle:\"short\"}):\"\\u2014\"}function performancePeriodLabelV346(data){const start=data?.start?new Date(data.start):null,end=data?.end?new Date(data.end):null;if(!start||!end||Number.isNaN(start.getTime())||Number.isNaN(end.getTime()))return\"Selected period\";const fmt=value=>value.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\",timeZone:\"Europe/London\"});return fmt(start)+\" \\u2192 \"+fmt(end)}function vendorMoneyV384(value){const amount=Number(value||0);return new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency:\"GBP\"}).format(Number.isFinite(amount)?amount:0)}function vendorSyncTextV384(sync,totalOrders){if(!sync||sync.status===\"never_synced\")return Number(totalOrders||0)>0?\"Historical archive is stored locally. No sync-state record is available yet.\":\"Historical import has not been run yet.\";const mode=sync.mode||sync.lastSuccessfulMode||\"historical_backfill\";if(sync.status===\"running\"){const read=Number(sync.ordersImported||0);return mode===\"incremental\"?\"Checking Shopify for new or changed data \\xB7 \"+read.toLocaleString(\"en-GB\")+\" updated orders received so far.\":\"Initial historical backfill running \\xB7 \"+read.toLocaleString(\"en-GB\")+\" orders received across \"+Number(sync.pages||0)+\" pages.\"}return sync.status===\"failed\"?\"Last Shopify sync failed: \"+(sync.error||\"Unknown error\")+(sync.hint?\" \\xB7 \"+sync.hint:\"\"):mode===\"incremental\"?\"Archive stored locally \\xB7 last incremental check received \"+Number(sync.ordersImported||0).toLocaleString(\"en-GB\")+\" changed orders and \"+Number(sync.productsImported||0).toLocaleString(\"en-GB\")+\" changed products \\xB7 completed \"+prettyDate(sync.completedAt||sync.updatedAt)+\".\":\"Historical backfill complete \\xB7 \"+Number(totalOrders||sync.ordersImported||0).toLocaleString(\"en-GB\")+\" orders stored locally \\xB7 completed \"+prettyDate(sync.completedAt||sync.updatedAt)+\".\"}function growthRunV719(){const runId=state.vendorGrowthV719?.runId;if(!runId)throw new Error(\"Reload Growth Lab to obtain the current sandbox run.\");return runId}function growthPriceV719(n){return\"\\xA3\"+Number(n||0).toLocaleString(\"en-GB\",{minimumFractionDigits:2,maximumFractionDigits:2})}function growthNoticeV719(message=\"\",bad=!1){const el=$2(\"vendorGrowthNoticeV719\");el&&(el.textContent=message,el.classList.toggle(\"is-error\",!!bad))}async function growthPostV719(path,body){const answer=await api(path,{method:\"POST\",body:JSON.stringify({...body,runId:growthRunV719()}),timeoutMs:45e3});return await loadVendorGrowthV719(),answer}function growthEventOptionsV719(data){const ev=data.events||[];document.querySelectorAll(\"[data-growth-event-select]\").forEach(select=>{const selected=select.value,upcoming=ev.filter(e=>Date.parse(e.eventDate||\"\")>=Date.now()-864e5),options=upcoming.length?upcoming:ev;if(select.innerHTML=options.map(e=>`<option value=\"${esc(e.eventKey)}\">${esc(e.name)} \\xB7 ${esc(String(e.eventDate||\"\").slice(0,10))}</option>`).join(\"\"),[...select.options].some(o=>o.value===selected))select.value=selected;else{const wolves=[...select.options].find(o=>/Wolverhampton/i.test(o.textContent));wolves&&(select.value=wolves.value)}})}function renderVendorGrowthV719(data){state.vendorGrowthV719=data;const summary=$2(\"vendorGrowthSummaryV719\"),products=data.products||[],contests=data.competitions||[],templates=data.templates||[],campaigns=data.campaigns||[],orders=data.orders||[];summary&&(summary.innerHTML=`<span><small>Wholesale offers</small><strong>${products.length}</strong></span><span><small>Sandbox orders</small><strong>${orders.length}</strong></span><span><small>Competitions</small><strong>${contests.length}</strong></span><span><small>Flyer templates</small><strong>${templates.length}</strong></span>`);const safety=$2(\"vendorGrowthSafetyV719\");safety&&(safety.innerHTML=`<strong>TEST SANDBOX \\xB7 ${esc(data.runId)}</strong><span>Provider checkout: ${esc(data.providerCheckout)} \\xB7 MSTX connection ${data.shopifyMstxConnected?\"ON\":\"OFF\"} \\xB7 Campaign send DISABLED \\xB7 Credit awards SIMULATED.</span>`),growthEventOptionsV719(data);const previewForm=$2(\"vendorGrowthCompetitionFormV719\"),wolves=contests.find(c=>c.eventDate===\"2026-11-14\"&&/wolverhampton/i.test(c.eventName||\"\"));previewForm&&wolves&&!previewForm.dataset.v720Prefilled&&(growthPutFieldsV719(previewForm,{id:wolves.id,title:wolves.title,eventKey:wolves.eventKey,status:wolves.status,startAt:growthFormDateV719(wolves.startAt),endAt:growthFormDateV719(wolves.endAt)}),previewForm.dataset.v720Prefilled=\"1\");const simForm=$2(\"vendorGrowthSimFormV719\"),testOrder=simForm?.elements?.namedItem(\"orderId\");testOrder&&!testOrder.value&&(testOrder.value=\"WOLVES-DEMO-\"+Date.now().toString(36).toUpperCase());const productList=$2(\"vendorGrowthProductListV719\");productList&&(productList.innerHTML=products.length?products.map(p=>`<div class=\"orbit-vendor-growth-listitem-v719\"><div class=\"orbit-vendor-growth-thumb-v719\">${p.imageBase64?`<img alt=\"${esc(p.title)}\" loading=\"lazy\" src=\"data:image/jpeg;base64,${p.imageBase64}\">`:\"\"}</div><div><strong>${esc(p.title)}</strong><small>${esc(p.status)} \\xB7 stock ${Number(p.stock||0)} \\xB7 ${growthPriceV719(p.priceGbp)} / market ${growthPriceV719(p.marketGbp)} \\xB7 ${Math.round((1-Number(p.marketRatio))*100)}% off</small></div><button type=\"button\" class=\"secondary\" data-growth-edit-product=\"${esc(p.id)}\">Edit</button></div>`).join(\"\"):'<p class=\"orbit-muted\">No products in this test run. Create your first vendor-only offer above.</p>');const contestList=$2(\"vendorGrowthCompetitionListV719\");contestList&&(contestList.innerHTML=contests.length?contests.map(c=>`<article class=\"orbit-vendor-growth-listcontest-v719\"><div class=\"orbit-vendor-growth-row-head-v719\"><div><strong>${esc(c.title)}</strong><small>${esc(c.eventName)} \\xB7 ${esc(c.status)} \\xB7 closes ${esc(prettyDate(c.endAt))}</small></div><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-growth-edit-contest=\"${esc(c.id)}\">Edit</button>${c.status===\"sandbox_closed\"?`<button type=\"button\" data-growth-award-contest=\"${esc(c.id)}\">Simulate prizes</button>`:\"\"}</div></div><div class=\"orbit-vendor-growth-table-v719\"><div><b>Vendor</b><b>Eligible demo orders</b><b>Prize preview</b></div>${(c.leaderboard||[]).map(v=>`<div><span>#${Number(v.rank)} ${esc(v.name)}</span><span>${Number(v.orders)} <small>+${Number(v.referralPointsIllustration)} illustrative points</small></span><strong>${v.prizeGbp?growthPriceV719(v.prizeGbp):\"\\u2014\"}</strong></div>`).join(\"\")}</div></article>`).join(\"\"):'<p class=\"orbit-muted\">Create the Wolverhampton competition above, then add synthetic paid orders to test rankings.</p>');const sim=$2(\"vendorGrowthSimCompetitionV719\");if(sim){const keep=sim.value;sim.innerHTML=contests.map(c=>`<option value=\"${esc(c.id)}\">${esc(c.eventName)} (${esc(c.status)})</option>`).join(\"\"),[...sim.options].some(o=>o.value===keep)&&(sim.value=keep)}const flyerList=$2(\"vendorGrowthFlyerListV719\");flyerList&&(flyerList.innerHTML=templates.length?templates.map(t=>`<div class=\"orbit-vendor-growth-listitem-v719\"><div><strong>${esc(t.eventName||t.eventKey)}</strong><small>${t.artworkBase64?\"Custom art uploaded\":\"Branded default art\"} \\xB7 QR x ${Math.round(t.placement.x*100)}%, y ${Math.round(t.placement.y*100)}%, size ${Math.round(t.placement.size*100)}%</small></div><button type=\"button\" class=\"secondary\" data-growth-edit-flyer=\"${esc(t.eventKey)}\">Edit placement</button></div>`).join(\"\"):'<p class=\"orbit-muted\">Upload event artwork above to enable personalised A6 downloads for that event.</p>');const campaignList=$2(\"vendorGrowthCampaignListV719\");campaignList&&(campaignList.innerHTML=campaigns.length?campaigns.map(c=>`<article class=\"orbit-vendor-growth-campaign-v719\"><strong>${esc(c.channel.toUpperCase())} \\xB7 ${esc(c.eventName)}</strong><small>DRAFT ONLY \\xB7 never sent \\xB7 recipients unverified</small>${c.channel===\"sms\"?`<p>${esc(c.content?.text)}</p>`:`<p><b>Subject:</b> ${esc(c.content?.subject)}</p><button class=\"secondary\" type=\"button\" data-growth-preview-email=\"${esc(c.id)}\">View HTML email design</button>`}</article>`).join(\"\"):'<p class=\"orbit-muted\">No draft campaigns yet.</p>'),bindVendorGrowthControlsV719()}async function loadVendorGrowthV719(){growthNoticeV719(\"Reading the current isolated Growth Lab\\u2026\");const data=await api(\"/api/admin/vendors/club/growth/sandbox\",{cacheMs:0,timeoutMs:3e4});return renderVendorGrowthV719(data),growthNoticeV719(\"Current sandbox loaded. No live orders, accounts or communications were changed.\"),data}async function growthFileV719(file){if(!file)return null;if(file.size>5*1024*1024)throw new Error(\"Select an image under 5 MB.\");if(![\"image/png\",\"image/jpeg\",\"image/webp\"].includes(file.type))throw new Error(\"Upload PNG, JPEG or WebP artwork.\");return new Promise((resolve,reject)=>{const reader=new FileReader;reader.onload=()=>resolve(String(reader.result)),reader.onerror=()=>reject(new Error(\"Unable to read artwork.\")),reader.readAsDataURL(file)})}function growthFieldsV719(form){const fd=new FormData(form),out={};for(const[k,v]of fd.entries())v instanceof File||(out[k]=String(v));return out}function growthFormDateV719(value){if(!value)return\"\";const parsed=new Date(value);if(!Number.isFinite(parsed.getTime()))return\"\";const to2=v=>String(v).padStart(2,\"0\");return`${parsed.getFullYear()}-${to2(parsed.getMonth()+1)}-${to2(parsed.getDate())}T${to2(parsed.getHours())}:${to2(parsed.getMinutes())}`}function growthPutFieldsV719(form,values){Object.entries(values).forEach(([key,v])=>{const f=form?.elements?.namedItem(key);f&&typeof v!=\"object\"&&(f.value=String(v??\"\"))})}function growthFlyerProofV719(){const form=$2(\"vendorGrowthFlyerFormV719\");if(!form)return;const x=Number(form.elements.namedItem(\"x\").value),y=Number(form.elements.namedItem(\"y\").value),size=Number(form.elements.namedItem(\"size\").value),qr=$2(\"vendorGrowthQrVisualV719\");qr&&(qr.style.left=x+\"%\",qr.style.top=y+\"%\",qr.style.width=size+\"%\",qr.style.aspectRatio=\"1\"),[\"X\",\"Y\",\"Size\"].forEach((label,i)=>{const output=$2(\"vendorGrowthQr\"+label+\"TextV719\");output&&(output.textContent=[x,y,size][i]+\"%\")})}function bindVendorGrowthControlsV719(){const pane=document.getElementById(\"orbitVendorsOverview\");if(!pane||pane.dataset.growthBound===\"1\")return;pane.dataset.growthBound=\"1\",$2(\"vendorGrowthRefreshV719\")?.addEventListener(\"click\",()=>loadVendorGrowthV719().catch(e=>growthNoticeV719(e.message,!0))),$2(\"vendorGrowthClearProductV719\")?.addEventListener(\"click\",()=>{const f=$2(\"vendorGrowthProductFormV719\");f?.reset(),f&&(f.elements.namedItem(\"id\").value=\"\")}),$2(\"vendorGrowthClearCompV719\")?.addEventListener(\"click\",()=>{const f=$2(\"vendorGrowthCompetitionFormV719\");f?.reset(),f&&(f.elements.namedItem(\"id\").value=\"\")}),$2(\"vendorGrowthProductFormV719\")?.addEventListener(\"submit\",async e=>{e.preventDefault();const form=e.currentTarget,fields=growthFieldsV719(form),button2=form.querySelector('[type=\"submit\"]');button2.disabled=!0;try{const file=form.elements.namedItem(\"image\").files[0],imageDataUrl=await growthFileV719(file);await growthPostV719(\"/api/admin/vendors/club/growth/products\",{...fields,marketReviewedAt:new Date(fields.marketReviewedAt).toISOString(),imageDataUrl}),growthNoticeV719(\"Wholesale offer saved in the isolated sandbox.\"),form.reset(),form.elements.namedItem(\"id\").value=\"\"}catch(err){growthNoticeV719(err.message,!0)}finally{button2.disabled=!1}}),$2(\"vendorGrowthCompetitionFormV719\")?.addEventListener(\"submit\",async e=>{e.preventDefault();const form=e.currentTarget,fields=growthFieldsV719(form),button2=form.querySelector('[type=\"submit\"]');button2.disabled=!0;try{await growthPostV719(\"/api/admin/vendors/club/growth/competitions\",{...fields,startAt:new Date(fields.startAt).toISOString(),endAt:new Date(fields.endAt).toISOString()}),growthNoticeV719(\"Competition saved in sandbox; no real referral/credit record changed.\")}catch(err){growthNoticeV719(err.message,!0)}finally{button2.disabled=!1}}),$2(\"vendorGrowthSimFormV719\")?.addEventListener(\"submit\",async e=>{e.preventDefault();const form=e.currentTarget,button2=form.querySelector('[type=\"submit\"]');button2.disabled=!0;try{await growthPostV719(\"/api/admin/vendors/club/growth/competition-orders\",growthFieldsV719(form)),growthNoticeV719(\"Synthetic referral recorded; leaderboard updated.\"),form.elements.namedItem(\"orderId\").value=\"WOLVES-DEMO-\"+Date.now().toString(36).toUpperCase()}catch(err){growthNoticeV719(err.message,!0)}finally{button2.disabled=!1}});const artForm=$2(\"vendorGrowthFlyerFormV719\");artForm?.querySelectorAll('input[type=\"range\"]').forEach(i=>i.addEventListener(\"input\",growthFlyerProofV719)),growthFlyerProofV719(),artForm?.elements?.namedItem(\"artwork\")?.addEventListener(\"change\",async e=>{const file=e.currentTarget.files?.[0];if(file)try{const url=await growthFileV719(file),image=$2(\"vendorGrowthFlyerImageV719\");image&&(image.style.backgroundImage=`url(\"${url}\")`,image.classList.add(\"has-preview\"))}catch(err){growthNoticeV719(err.message,!0)}}),artForm?.addEventListener(\"submit\",async e=>{e.preventDefault();const form=e.currentTarget,fields=growthFieldsV719(form),button2=form.querySelector('[type=\"submit\"]');button2.disabled=!0;try{const imageDataUrl=await growthFileV719(form.elements.namedItem(\"artwork\").files[0]);await growthPostV719(\"/api/admin/vendors/club/growth/flyers\",{eventKey:fields.eventKey,artworkName:form.elements.namedItem(\"artwork\").files[0]?.name||\"\",imageDataUrl,placement:{x:Number(fields.x)/100,y:Number(fields.y)/100,size:Number(fields.size)/100}}),growthNoticeV719(\"A6 artwork and QR placement saved. The test vendor can download a tracked PDF in Promote & Earn.\")}catch(err){growthNoticeV719(err.message,!0)}finally{button2.disabled=!1}}),$2(\"vendorGrowthCampaignFormV719\")?.addEventListener(\"submit\",async e=>{e.preventDefault();const form=e.currentTarget,button2=form.querySelector('[type=\"submit\"]');button2.disabled=!0;try{await growthPostV719(\"/api/admin/vendors/club/growth/campaigns\",growthFieldsV719(form)),growthNoticeV719(\"Email and SMS drafts created. Neither has been sent and recipient selection has not been validated.\")}catch(err){growthNoticeV719(err.message,!0)}finally{button2.disabled=!1}}),pane.addEventListener(\"click\",async e=>{const edit=e.target.closest(\"[data-growth-edit-product]\"),contest=e.target.closest(\"[data-growth-edit-contest]\"),flyer=e.target.closest(\"[data-growth-edit-flyer]\"),award=e.target.closest(\"[data-growth-award-contest]\"),preview=e.target.closest(\"[data-growth-preview-email]\"),data=state.vendorGrowthV719||{};if(edit){const p=(data.products||[]).find(x=>x.id===edit.dataset.growthEditProduct),form=$2(\"vendorGrowthProductFormV719\");if(!p||!form)return;growthPutFieldsV719(form,p),form.elements.namedItem(\"marketReviewedAt\").value=growthFormDateV719(p.marketReviewedAt),form.scrollIntoView({block:\"center\",behavior:\"smooth\"})}if(contest){const c=(data.competitions||[]).find(x=>x.id===contest.dataset.growthEditContest),form=$2(\"vendorGrowthCompetitionFormV719\");if(!c||!form)return;growthPutFieldsV719(form,{id:c.id,title:c.title,eventKey:c.eventKey,status:c.status,startAt:growthFormDateV719(c.startAt),endAt:growthFormDateV719(c.endAt),prizesGbp:(c.prizesGbp||[250,150,100]).join(\", \")}),form.scrollIntoView({block:\"center\",behavior:\"smooth\"})}if(flyer){const t=(data.templates||[]).find(x=>x.eventKey===flyer.dataset.growthEditFlyer),form=$2(\"vendorGrowthFlyerFormV719\");if(!t||!form)return;growthPutFieldsV719(form,{eventKey:t.eventKey,x:Math.round(t.placement.x*100),y:Math.round(t.placement.y*100),size:Math.round(t.placement.size*100)}),growthFlyerProofV719(),form.scrollIntoView({block:\"center\",behavior:\"smooth\"})}if(award){const id=award.dataset.growthAwardContest;if(!confirm(\"SIMULATE awarding test-only vendor credits? No real account credit will be issued.\"))return;award.disabled=!0;try{const result=await growthPostV719(\"/api/admin/vendors/club/growth/competition-awards\",{competitionId:id});growthNoticeV719((result.awards||[]).length+\" simulated prize records saved. Real Account Credit untouched.\")}catch(err){growthNoticeV719(err.message,!0)}finally{award.disabled=!1}}if(preview){const item=(data.campaigns||[]).find(x=>x.id===preview.dataset.growthPreviewEmail),iframe=$2(\"vendorGrowthEmailPreviewV719\");if(!item||!iframe)return;iframe.hidden=!1,iframe.srcdoc=String(item.content?.html||\"\"),iframe.scrollIntoView({block:\"nearest\",behavior:\"smooth\"})}})}function setVendorSandboxTabV727(tab){const selected=[\"sponsor\",\"vendor\",\"growth\",\"competitions\",\"vendor-shop\",\"flyer-studio\",\"launch\"].includes(tab)?tab:\"sponsor\";state.currentSandboxSectionV730=selected;const header=document.querySelector(\".orbit-vendor-workspace-header\");header&&state.currentVendorPane===\"sandbox\"&&(header.hidden=selected===\"sponsor\"),document.querySelectorAll(\"[data-vendor-sandbox-tab-v727]\").forEach(b=>{const active=b.dataset.vendorSandboxTabV727===selected;b.setAttribute(\"aria-selected\",String(active)),b.classList.toggle(\"active\",active)}),document.querySelectorAll(\"[data-vendor-sandbox-panel-v727]\").forEach(el=>{el.hidden=el.dataset.vendorSandboxPanelV727!==selected}),selected===\"vendor\"&&setVendorSettingsSectionV641(\"access\").catch(e=>setNotice2(e.message||e,!0))}function setVendorCampaignTabV727(tab){const selected=tab===\"sms\"?\"sms\":\"campaigns\";return document.querySelectorAll(\"[data-vendor-campaign-tab-v727]\").forEach(b=>{const active=b.dataset.vendorCampaignTabV727===selected;b.setAttribute(\"aria-selected\",String(active)),b.classList.toggle(\"active\",active)}),setVendorSettingsSectionV641(selected)}let sponsorLivePreviewV729=null;async function loadVendorSponsorLiveV729(){sponsorLivePreviewV729=null;const sel=$2(\"vendorSponsorLiveEventV729\"),copy=$2(\"vendorSponsorLiveCopyV729\"),list=$2(\"vendorSponsorLiveListV729\");copy&&(copy.disabled=!0);const[live,sandbox]=await Promise.all([api(\"/api/admin/vendors/club/sponsorships/live-config\",{cacheMs:0}),api(\"/api/admin/vendors/club/sponsorships/sandbox\",{cacheMs:0})]);if(sel){const previous=sel.value;sel.innerHTML='<option value=\"\">Choose a verified upcoming event</option>'+(sandbox.events||[]).filter(e=>e.eventKey&&!String(e.eventKey).startsWith(\"fallback-\")).map(e=>'<option value=\"'+esc(e.eventKey)+'\">'+esc(e.name||e.eventKey)+\" \\xB7 \"+esc(e.eventDate||\"\")+\"</option>\").join(\"\"),[...sel.options].some(x=>x.value===previous)&&(sel.value=previous)}list&&(list.innerHTML=(live.rows||[]).length?'<div class=\"orbit-table-wrap\"><table><thead><tr><th>Verified event</th><th>Date</th><th>Configuration revision</th><th>Commercial status</th></tr></thead><tbody>'+live.rows.map(r=>\"<tr><td>\"+esc(r.eventName||r.eventKey)+\"</td><td>\"+esc(r.eventDate||\"\")+\"</td><td>\"+Number(r.revision||0)+\"</td><td>Configured \\xB7 purchases disabled</td></tr>\").join(\"\")+\"</tbody></table></div>\":'<p class=\"orbit-muted\">No configurations have been copied to the live register. Sponsorship purchases remain unavailable.</p>')}async function previewVendorSponsorLiveV729(){const eventKey=$2(\"vendorSponsorLiveEventV729\")?.value,box=$2(\"vendorSponsorLiveComparisonV729\"),copy=$2(\"vendorSponsorLiveCopyV729\");if(sponsorLivePreviewV729=null,copy&&(copy.disabled=!0),!eventKey){box&&(box.textContent=\"Choose an event first.\");return}const data=await api(\"/api/admin/vendors/club/sponsorships/live-config/preview?eventKey=\"+encodeURIComponent(eventKey),{cacheMs:0});sponsorLivePreviewV729=data;const current=data.current||{},proposed=data.proposed||{},format=(k,v)=>k===\"assetDeadline\"||k.endsWith(\"Slots\")?String(v??\"Unset\"):v===void 0?\"Unset\":v?\"Enabled\":\"Disabled\";box&&(box.innerHTML=\"<h5>\"+esc(data.eventName)+\" \\xB7 \"+esc(data.eventDate)+'</h5><table class=\"orbit-sponsor-config-comparison-v729\"><thead><tr><th>Setting</th><th>Live</th><th>Sandbox proposal</th></tr></thead><tbody>'+Object.keys(proposed).map(key=>\"<tr><th>\"+esc(key.replace(/([A-Z])/g,\" $1\"))+\"</th><td>\"+esc(current[key]===void 0?\"Unset\":format(key,current[key]))+\"</td><td><strong>\"+esc(format(key,proposed[key]))+\"</strong></td></tr>\").join(\"\")+'</tbody></table><p class=\"orbit-muted\">'+esc(data.warning)+\"</p>\"),copy&&(copy.disabled=data.changes.length===0)}async function copyVendorSponsorLiveV729(){const data=sponsorLivePreviewV729,button2=$2(\"vendorSponsorLiveCopyV729\");if(!(!data||button2?.disabled)&&confirm(\"Copy exactly the displayed configuration for \"+data.eventName+\" into a separate LIVE CONFIGURATION REGISTER? This does not activate sponsorship payments, ticket issuance or website sales.\")){setLoading(button2,!0);try{const saved=await api(\"/api/admin/vendors/club/sponsorships/live-config/copy\",{method:\"POST\",body:JSON.stringify({eventKey:data.eventKey,expectedRevision:data.expectedRevision,sourceRunId:data.sourceRunId,confirm:\"COPY VERIFIED SANDBOX SETTINGS\"}),cacheMs:0});if(!saved.success||saved.commercialLaunchBlocked!==!0)throw Error(\"Live configuration read-back did not confirm safe staging.\");setNotice2(\"Live event configuration saved and read back. Real sponsorship purchases remain disabled.\"),await loadVendorSponsorLiveV729()}finally{setLoading(button2,!1),button2&&(button2.disabled=!0)}}}let wolvesCampaignReviewV760=null;const wolvesCampaignPathV760=\"/api/admin/vendors/club/campaigns/wolverhampton-invitation-draft\";async function previewWolverhamptonCampaignV729(){const box=$2(\"vendorWolvesResultV729\"),button2=$2(\"vendorWolvesPreviewV729\");setLoading(button2,!0);try{const data=await api(wolvesCampaignPathV760,{cacheMs:0,timeoutMs:3e4});if(wolvesCampaignReviewV760=data,!box)return;const rows=Array.isArray(data.audience)?data.audience:[];if(!rows.length){box.innerHTML='<p class=\"orbit-vendor-launch-warning-v729\">'+esc(data.reason||\"A verified Wolverhampton vendor audience could not be established. Nothing has been sent.\")+\"</p>\";return}const d=data.invitationDraft||{},c=data.coverage||{},fmt=n=>Number(n||0).toLocaleString(\"en-GB\"),style='style=\"display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px\"',card=(number,label,sub)=>'<div class=\"orbit-panel\" style=\"min-width:0\"><strong style=\"font-size:22px\">'+fmt(number)+\"</strong><p>\"+esc(label)+\"</p><small>\"+esc(sub)+\"</small></div>\";box.innerHTML='<div class=\"orbit-panel orbit-v760-wolves__intro\"><h4>Wolverhampton invitation audience</h4><p><strong>'+fmt(d.bookedTargetCount)+\" / \"+fmt(c.booked)+\" booked vendors accounted for and targeted</strong> \\xB7 \"+fmt(d.registeredCount)+\" log in \\xB7 \"+fmt(d.signupCount)+\" join free</p><div \"+style+\">\"+card(d.emailOnFile,\"With an email\",\"Not automatically send eligible\")+card(d.mobileOnFile,\"With a mobile on file\",\"SMS marketing consent checked separately\")+card(d.emailPreparedEligible,\"Email permission evidenced\",\"Existing opt-in or reviewed Mailchimp evidence\")+card(d.smsPreparedEligible,\"SMS permission recorded\",\"No newsletter-only SMS permission\")+'</div><p class=\"orbit-muted\">'+esc(data.competitionEligibility===\"ALL_ELIGIBLE_ORBIT_VENDORS_WITH_VERIFIED_REFERRALS\"?\"Any genuinely eligible Orbit vendor may compete for the prizes, not only traders at Wolverhampton. Booked traders are the initial invitation audience.\":\"All entrants remain subject to published competition rules.\")+'</p><p class=\"orbit-muted\">Do not override opt-outs. Draft: '+esc(d.status)+\" \\xB7 Newsletter subscribers matched: \"+fmt(d.newsletterEvidenceMatched)+\" \\xB7 Current evidence emails: \"+fmt(d.newsletterEvidenceCount)+\".</p></div>\";const blockers=(d.blockers||[]).map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\");box.insertAdjacentHTML(\"beforeend\",'<div class=\"orbit-panel\"><h5>Pre-send checks</h5><ul>'+blockers+'</ul><p class=\"orbit-muted\">'+esc(data.contestVerifiedLive?\"The authoritative competition record is verified live.\":\"Competition record is not yet independently verified live; campaign remains staged only.\")+\"</p></div>\"),box.insertAdjacentHTML(\"beforeend\",'<details open><summary>Personalised invitation designs \\xB7 unsent</summary><div class=\"orbit-v760-wolves__previews\"><div><h5>Booked vendor with account \\u2014 log in</h5><iframe title=\"Wolverhampton login email preview\" class=\"orbit-vendor-campaign-email-frame-v750\" sandbox=\"\" loading=\"lazy\" data-wolves-email-v760=\"registered\"></iframe></div><div><h5>Booked vendor without account \\u2014 join free</h5><iframe title=\"Wolverhampton signup email preview\" class=\"orbit-vendor-campaign-email-frame-v750\" sandbox=\"\" loading=\"lazy\" data-wolves-email-v760=\"notRegistered\"></iframe></div></div><h5>SMS reminder \\xB7 draft only</h5><p>'+esc(data.creative?.sms||\"\")+'</p><p class=\"orbit-muted\">STOP and inbound opt-out handling must be independently checked on the real SMS provider before any send. No SMS is queued here.</p></details>');const tableRows=rows.map(r=>\"<tr><td>\"+esc(r.vendorName)+\"</td><td>\"+esc(r.registered?\"Log in\":\"Create free account\")+\"</td><td>\"+esc(r.hasEmail?\"On file\":\"Missing\")+\"</td><td>\"+esc(r.emailLaunchReady?\"Evidence matched / eligible\":r.emailReason)+\"</td><td>\"+esc(r.hasPhone?\"On file\":\"Missing\")+\"</td><td>\"+esc(r.smsLaunchReady?\"Opted in / verified\":r.smsReason)+\"</td></tr>\").join(\"\");box.insertAdjacentHTML(\"beforeend\",'<details class=\"orbit-v757-campaign-audience\"><summary>All '+fmt(rows.length)+' booked vendors \\xB7 outreach and consent checks</summary><div class=\"orbit-table-wrap\"><table><thead><tr><th>Vendor</th><th>Invitation</th><th>Email</th><th>Email status</th><th>Mobile</th><th>SMS status</th></tr></thead><tbody>'+tableRows+\"</tbody></table></div></details>\");for(const f of box.querySelectorAll(\"[data-wolves-email-v760]\"))f.srcdoc=String(data.creative?.[f.dataset.wolvesEmailV760===\"registered\"?\"emailRegistered\":\"emailSignup\"]?.html||\"\");const status=$2(\"vendorWolvesDraftStatusV760\");status&&(status.textContent=\"Campaign \"+d.status+\" \\xB7 version \"+d.revision+\" \\xB7 \"+fmt(d.bookedTargetCount)+\" booked traders targeted \\xB7 \"+fmt(d.emailPreparedEligible)+\" email-permission candidates \\xB7 NOT SENT.\"),wolvesLoadMailV761().catch(e=>{const x=$2(\"vendorWolvesDeliverySummaryV761\");x&&(x.textContent=e.message||String(e))}),wolvesLoadSmsV763().catch(e=>{const x=$2(\"vendorWolvesSmsNoticeV763\");x&&(x.textContent=e.message||String(e))})}catch(error){throw box&&(box.textContent=error.message||String(error)),error}finally{setLoading(button2,!1)}}function parseMailchimpSubscribersV760(content){const lines=String(content||\"\").split(/\\r?\\n/).map(x=>x.trim()).filter(Boolean),result=[],statuses={excluded:0},simpleEmail=/^[^\\s@,;]+@[^\\s@,;]+\\.[^\\s@,;]+$/;if(!lines.length)throw Error(\"Paste an active newsletter subscriber list or select a Mailchimp export first.\");const sep=lines[0].includes(\";\")&&!lines[0].includes(\",\")?\";\":\",\",split=line=>{const cells=[];let buf=\"\",quoted=!1;for(let i=0;i<line.length;i++){const ch=line[i];if(ch==='\"'&&line[i+1]==='\"'&&quoted){buf+='\"',i++;continue}if(ch==='\"'){quoted=!quoted;continue}if(ch===sep&&!quoted){cells.push(buf.trim()),buf=\"\";continue}buf+=ch}return cells.push(buf.trim()),cells},first=split(lines[0]).map(x=>x.toLowerCase().replace(/[ _-]/g,\"\")),ei=first.findIndex(x=>x===\"email\"||x===\"emailaddress\"||x===\"e-mail\"),si=first.findIndex(x=>x===\"status\"||x===\"subscribed\"||x===\"subscriptionstatus\"),rows=ei>=0?lines.slice(1):lines;for(const line of rows){const cols=split(line),value=String(ei>=0?cols[ei]:line).trim().toLowerCase();if(!simpleEmail.test(value)){statuses.excluded++;continue}const state2=si>=0?String(cols[si]||\"\").toLowerCase().trim():\"subscribed\";if(si>=0&&![\"subscribed\",\"active\",\"true\",\"yes\",\"1\",\"confirmed\"].includes(state2)){statuses.excluded++;continue}result.push(value)}const emails=[...new Set(result)];if(!emails.length)throw Error(\"No confirmed, active subscriber email addresses found. Check the Mailchimp export headings or statuses.\");if(emails.length>2e3)throw Error(\"Import at most 2,000 reviewed subscriber addresses.\");return{emails,excluded:statuses.excluded}}document.addEventListener(\"click\",async event=>{const button2=event.target?.closest?.(\"#vendorWolvesSaveDraftV760,#vendorWolvesEvidenceV760\");if(!button2)return;if(event.preventDefault(),!wolvesCampaignReviewV760){setNotice2(\"Refresh the booked vendors and review the audience first.\",!0);return}setLoading(button2,!0);const note=$2(\"vendorWolvesDraftStatusV760\");try{if(button2.id===\"vendorWolvesSaveDraftV760\"){if(!confirm(\"Save the Wolverhampton invitation as an UNSENT DRAFT? This does not approve or send marketing.\"))return;const d=wolvesCampaignReviewV760,response=await api(wolvesCampaignPathV760,{method:\"POST\",body:JSON.stringify({expectedAudienceHash:d.audienceSnapshotHash,expectedRevision:d.invitationDraft?.revision,confirmation:\"SAVE WOLVERHAMPTON CAMPAIGN DRAFT\"}),cacheMs:0});note&&(note.textContent=response.message)}else{const file=$2(\"vendorWolvesSubscriberFileV760\")?.files?.[0];if(file&&file.size>128e3)throw Error(\"Mailchimp export is too large (maximum 128KB).\");const content=await(file?.text?.()||Promise.resolve(\"\"))||$2(\"vendorWolvesSubscriberListV760\")?.value||\"\",parsed=parseMailchimpSubscribersV760(content),source=$2(\"vendorWolvesSourceV760\")?.value||\"\";if(!confirm(\"Confirm these \"+parsed.emails.length+\" addresses are CURRENT active subscribers to your Mailchimp newsletter, and that you have checked the source list. \"+parsed.excluded+\" excluded/invalid rows were ignored. This does NOT approve SMS or override opt-outs.\"))return;const response=await api(\"/api/admin/vendors/club/campaigns/wolverhampton-newsletter-evidence\",{method:\"POST\",body:JSON.stringify({addresses:parsed.emails,sourceName:source,expectedRevision:wolvesCampaignReviewV760.invitationDraft?.revision,confirmation:\"I VERIFIED CURRENT MAILCHIMP NEWSLETTER SUBSCRIPTIONS\"}),cacheMs:0});note&&(note.textContent=response.message);const area=$2(\"vendorWolvesSubscriberListV760\");area&&(area.value=\"\");const picker=$2(\"vendorWolvesSubscriberFileV760\");picker&&(picker.value=\"\")}await previewWolverhamptonCampaignV729()}catch(e){note&&(note.textContent=e.message||String(e)),setNotice2(e.message||String(e),!0)}finally{setLoading(button2,!1)}},!0);let wolvesDeliveryV761=null;const wolvesMailPathV761=\"/api/admin/vendors/club/campaigns/wolverhampton-email\";function wolvesRenderMailV761(data){wolvesDeliveryV761=data;const el=$2(\"vendorWolvesDeliverySummaryV761\");if(!el)return;const fmt=x=>Number(x||0).toLocaleString(\"en-GB\"),statusLabel={not_started:\"Ready to prepare\",running:\"Sending\",paused:\"Paused\",completed:\"Completed\",review_required:\"Needs review\"}[data.status]||data.status||\"Not started\",states=data.counts||{},count=Object.entries(states).map(([k,v])=>esc(k)+\": \"+fmt(v)).join(\" \\xB7 \");el.innerHTML='<div class=\"orbit-v761-wolves-send__summary\"><strong>'+esc(String(data.emailCandidates||0))+\" ready-to-email recipients</strong> of \"+fmt(data.bookedTargets)+\" booked vendors \\xB7 \"+fmt(data.emailExclusions)+\" excluded or requiring review.<p>Mailchimp subscriber evidence: \"+fmt(data.evidenceMatched)+\" matched \\xB7 Saved as: \"+esc(data.sourceName||\"not recorded\")+\"</p><p><strong>Campaign: \"+esc(statusLabel)+\"</strong> \\xB7 \"+(data.test?\"TEST accepted by provider; confirm inbox\":\"TEST not yet accepted\")+\" \\xB7 \"+(count||\"no live recipients queued\")+\"</p><p>\"+esc(data.competitionNotice||\"\")+\"</p>\"+(data.blockers||[]).map(x=>'<p style=\"color:#9e3b42\">'+esc(x)+\"</p>\").join(\"\")+\"</div>\";const send=$2(\"vendorWolvesSendLiveV761\"),pause=$2(\"vendorWolvesPauseV761\");send&&(send.disabled=!!(data.status!==\"not_started\"||data.blockers?.length||!data.test),send.textContent=data.status===\"not_started\"?\"Send \"+fmt(data.emailCandidates)+\" Wolverhampton email invitations\":\"Campaign \"+statusLabel),pause&&(pause.disabled=![\"running\",\"paused\"].includes(data.status),pause.textContent=data.status===\"paused\"?\"Resume campaign\":\"Pause campaign\");const status=$2(\"vendorWolvesSendNoticeV761\");status&&data.status!==\"not_started\"&&(status.textContent=\"Email campaign \"+data.status+\" \\xB7 \"+fmt(data.accepted)+\" accepted by provider \\xB7 \"+fmt(data.remaining)+\" pending. No SMS sent.\")}async function wolvesLoadMailV761(){const data=await api(wolvesMailPathV761+\"/status\",{cacheMs:0,timeoutMs:3e4});return wolvesRenderMailV761(data),data}document.addEventListener(\"click\",async event=>{const button2=event.target?.closest?.(\"#vendorWolvesDeliveryRefreshV761,#vendorWolvesSendTestV761,#vendorWolvesSendLiveV761,#vendorWolvesPauseV761\");if(!button2||(event.preventDefault(),button2.dataset.wolvesBusyV762===\"1\"))return;button2.dataset.wolvesBusyV762=\"1\",setLoading(button2,!0);const note=$2(\"vendorWolvesSendNoticeV761\");try{let data=wolvesDeliveryV761||await wolvesLoadMailV761();if(button2.id===\"vendorWolvesDeliveryRefreshV761\"){data=await wolvesLoadMailV761();return}if(button2.id===\"vendorWolvesSendTestV761\"){const to=($2(\"vendorWolvesTestEmailV761\")?.value||\"\").trim();if(!/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(to))throw Error(\"Enter your own valid test email address.\");if(!confirm(\"Send one real TEST email to \"+to+\"? This does NOT send to vendors.\"))return;const result=await api(wolvesMailPathV761+\"/test\",{method:\"POST\",body:JSON.stringify({to,registered:$2(\"vendorWolvesTestSegmentV761\")?.value===\"registered\",requestId:\"wolve-test-\"+Date.now()+\"-\"+Math.random().toString(36).slice(2),expectedSnapshot:data.snapshot}),cacheMs:0,timeoutMs:3e4});note&&(note.textContent=result.message||\"Test accepted by provider. Check the inbox, then confirm you reviewed it.\")}else if(button2.id===\"vendorWolvesSendLiveV761\"){if(!data.test)throw Error(\"Send and review a test email first.\");if(data=await wolvesLoadMailV761(),!data.sendEnabled)throw Error(data.blockers?.join(\"; \")||\"Check the current test email and campaign status before sending.\");const phrase=\"SEND WOLVERHAMPTON EMAIL CAMPAIGN\";if(!confirm(\"Send \"+data.emailCandidates+` Wolverhampton email invitations now?\n\nBy sending, you confirm you have reviewed the test email, the Mailchimp subscriber audience and the \\xA3500 competition terms. Known opt-outs remain excluded.\n\nEmails cannot be recalled after sending. No SMS will be sent.`))return;const result=await api(wolvesMailPathV761+\"/send\",{method:\"POST\",body:JSON.stringify({expectedSnapshot:data.snapshot,expectedCount:data.emailCandidates,expectedRevision:data.version,testId:data.test.id,confirmation:phrase,permissionReviewed:!0,testReviewed:!0,competitionAcknowledged:!0,mailchimpSourceConfirmed:!0}),cacheMs:0,timeoutMs:3e4});note&&(note.textContent=result.message||\"Campaign queued. Refresh status to follow progress.\")}else if(button2.id===\"vendorWolvesPauseV761\"){const paused=data.status!==\"paused\";if(!confirm((paused?\"Pause\":\"Resume\")+\" the Wolverhampton invitation campaign?\"))return;await api(wolvesMailPathV761+\"/pause\",{method:\"POST\",body:JSON.stringify({paused}),cacheMs:0,timeoutMs:3e4})}await wolvesLoadMailV761()}catch(error){note&&(note.textContent=error.message||String(error)),setNotice2(error.message||String(error),!0)}finally{delete button2.dataset.wolvesBusyV762,setLoading(button2,!1),wolvesDeliveryV761&&wolvesRenderMailV761(wolvesDeliveryV761)}},!0);const wolvesSmsPathV763=\"/api/admin/vendors/club/wolverhampton-sms\";let wolvesSmsV763=null;function wolvesRenderSmsV763(data){const fmt=value=>Number(value||0).toLocaleString(\"en-GB\");wolvesSmsV763=data;const summary=$2(\"vendorWolvesSmsSummaryV763\");if(!summary)return;const n=Number(data.recipientCount||0),total=Number(data.booked||0),parts=[];for(const[reason,number]of Object.entries(data.excluded||{}))number&&parts.push(fmt(number)+\" \"+reason);summary.innerHTML='<div class=\"orbit-v763-sms-facts\"><span><strong>'+fmt(total)+\"</strong><small>Booked vendors</small></span><span><strong>\"+fmt(n)+\"</strong><small>Unique SMS recipients</small></span><span><strong>\"+fmt(data.accepted||0)+\"</strong><small>Provider accepted</small></span><span><strong>\"+fmt(data.remaining||0)+\"</strong><small>Still queued</small></span></div><p>Campaign status: <strong>\"+esc(data.status||\"not_started\")+\"</strong>. Exclusions: \"+esc(parts.join(\" \\xB7 \")||\"None\")+\".</p>\";const preview=$2(\"vendorWolvesSmsPreviewV763\");preview&&(preview.textContent=data.messagePreview||\"\");const segment=$2(\"vendorWolvesSmsSegmentsV763\");segment&&(segment.textContent=(data.smsSegments?.segments||\"?\")+\" SMS segment(s) per contact, including the individual opt-out link. The actual link is personalised before sending.\");const send=$2(\"vendorWolvesSmsSendV763\");send&&(send.disabled=!!(data.status!==\"not_started\"||!data.test||data.blocked?.length),send.textContent=data.status===\"not_started\"?\"Send \"+fmt(n)+\" Wolverhampton SMS messages\":\"SMS campaign \"+data.status);const pause=$2(\"vendorWolvesSmsPauseV763\");pause&&(pause.disabled=![\"queued\",\"paused\"].includes(data.status),pause.textContent=data.status===\"paused\"?\"Resume SMS campaign\":\"Pause SMS campaign\");const note=$2(\"vendorWolvesSmsNoticeV763\");note&&data.blocked?.length&&(note.textContent=data.blocked.join(\"; \"))}async function wolvesLoadSmsV763(){const data=await api(wolvesSmsPathV763+\"/status\",{cacheMs:0,timeoutMs:3e4});return wolvesRenderSmsV763(data),data}document.addEventListener(\"click\",async event=>{const b=event.target?.closest?.(\"#vendorWolvesSmsRefreshV763,#vendorWolvesSmsTestV763,#vendorWolvesSmsSendV763,#vendorWolvesSmsPauseV763\");if(!b||(event.preventDefault(),b.dataset.busyV763===\"1\"))return;b.dataset.busyV763=\"1\",setLoading(b,!0);const note=$2(\"vendorWolvesSmsNoticeV763\");try{let data=wolvesSmsV763||await wolvesLoadSmsV763();if(b.id===\"vendorWolvesSmsRefreshV763\"){await wolvesLoadSmsV763();return}if(b.id===\"vendorWolvesSmsTestV763\"){const to=($2(\"vendorWolvesSmsPhoneV763\")?.value||\"\").trim();if(!/^(?:07\\d{9}|\\+447\\d{9})$/.test(to.replace(/[\\s-]/g,\"\")))throw Error(\"Enter your authorised UK mobile number.\");if(!confirm(\"Send one real TEST text to your own number? No vendors will receive this test.\"))return;const test=await api(wolvesSmsPathV763+\"/test\",{method:\"POST\",body:JSON.stringify({to,confirmation:\"SEND TEST SMS\",requestId:\"wolves-sms-\"+Date.now()+\"-\"+Math.random().toString(36).slice(2)}),cacheMs:0,timeoutMs:3e4});note&&(note.textContent=test.message||\"Test accepted; confirm it reached your phone.\")}else if(b.id===\"vendorWolvesSmsSendV763\"){if(data=await wolvesLoadSmsV763(),!data.test)throw Error(\"Send and receive the TEST SMS first.\");if(!data.sendEnabled)throw Error(data.blocked?.join(\"; \")||\"SMS campaign is not ready.\");if(!$2(\"vendorWolvesSmsConsentV763\")?.checked)throw Error(\"Confirm the SMS audience permission and review the wording first.\");const raw=$2(\"vendorWolvesSmsScheduleV763\")?.value||\"\",scheduledFor=raw?new Date(raw).toISOString():null,when=scheduledFor?\"at your selected time\":\"now\";if(!confirm(\"SEND \"+data.recipientCount+\" WOLVERHAMPTON SMS REMINDERS \"+when+`?\n\nThis is real paid SMS and cannot be recalled. Existing STOP and opt-outs are excluded. Email is not touched.`))return;const out=await api(wolvesSmsPathV763+\"/send\",{method:\"POST\",body:JSON.stringify({snapshot:data.snapshot,expectedCount:data.recipientCount,testId:data.test.id,permissionConfirmed:!0,previewReviewed:!0,confirmation:\"SEND WOLVERHAMPTON SMS\",scheduledFor}),cacheMs:0,timeoutMs:3e4});note&&(note.textContent=out.message||\"SMS queued. Refresh status to track progress.\")}else if(b.id===\"vendorWolvesSmsPauseV763\"){const paused=data.status!==\"paused\";if(!confirm((paused?\"Pause\":\"Resume\")+\" the separate Wolverhampton SMS campaign?\"))return;await api(wolvesSmsPathV763+\"/pause\",{method:\"POST\",body:JSON.stringify({paused}),cacheMs:0,timeoutMs:3e4})}await wolvesLoadSmsV763()}catch(e){note&&(note.textContent=e.message||String(e)),setNotice2(e.message||String(e),!0)}finally{delete b.dataset.busyV763,setLoading(b,!1),wolvesSmsV763&&wolvesRenderSmsV763(wolvesSmsV763)}},!0);let vendorLiveContestRevisionV750=0,vendorLiveRankRowsV751=[],vendorLiveRankPhaseV751=\"\";function renderVendorLiveRankV751(){const box=$2(\"vendorContestLeaderboardV750\");if(!box)return;const query=String($2(\"vendorContestRankSearchV751\")?.value||\"\").trim().toLowerCase(),filtered=vendorLiveRankRowsV751.filter(row=>!query||String(row.vendorName||\"\").toLowerCase().includes(query)||String(row.vendorId||\"\").toLowerCase().includes(query)),mode=vendorLiveRankPhaseV751===\"PROVISIONAL_TRACKED_CLICKS_ONLY\",visible=$2(\"vendorContestRankAllV751\")?.checked===!0?filtered.slice(0,250):filtered.slice(0,15),formatNumber=n=>Number(n||0).toLocaleString(\"en-GB\"),trs=visible.map(r=>'<tr><td><span class=\"orbit-rank-number-v751\">'+Number(r.rank)+\"</span></td><td><strong>\"+esc(r.vendorName||\"Name requires verification\")+'</strong></td><td class=\"numeric\">'+formatNumber(r.verifiedRedirects)+'</td><td class=\"numeric\">'+formatNumber(r.paidTickets)+'</td><td class=\"numeric\">'+formatNumber(r.pointsEarned)+\"</td></tr>\").join(\"\"),table2=visible.length?'<div class=\"orbit-table-wrap\"><table class=\"orbit-vendor-live-table-v751\"><thead><tr><th>Position</th><th>Vendor</th><th>Tracked clicks</th><th>Verified ticket units</th><th>Points</th></tr></thead><tbody>'+trs+\"</tbody></table></div>\":'<p class=\"orbit-muted\">No vendors match the current search.</p>',previous=box.querySelector(\".orbit-vendor-live-rank-table-v751\");previous&&previous.remove(),box.insertAdjacentHTML(\"beforeend\",'<div class=\"orbit-vendor-live-rank-table-v751\">'+table2+\"</div>\");const summary=$2(\"vendorContestRankCountV751\");summary&&(summary.textContent=filtered.length+\" of \"+vendorLiveRankRowsV751.length+\" vendor accounts\"+(mode?\" \\xB7 Clicks are NOT prize results.\":\" \\xB7 Paid-ticket ranking subject to reconciliation.\"))}async function loadVendorLiveLeaderboardV750(){const box=$2(\"vendorContestLeaderboardV750\");if(!box)return;const result=await api(\"/api/admin/vendors/club/live-competition/leaderboard\",{cacheMs:0,timeoutMs:3e4});if(result.complete!==!0){box.innerHTML='<p class=\"orbit-vendor-launch-warning-v729\">Live referral evidence could not be verified. Rankings remain withheld until reconciliation.</p>';return}vendorLiveRankRowsV751=result.leaderboard||[],vendorLiveRankPhaseV751=result.rankingMode||\"\";const provisional=result.rankingMode===\"PROVISIONAL_TRACKED_CLICKS_ONLY\";box.innerHTML='<div class=\"orbit-vendor-live-rank-head-v751\"><div><strong>'+(provisional?\"Provisional click activity\":\"Qualifying paid ticket positions\")+\"</strong><p>\"+(provisional?\"No verified ticket sales have been reconciled yet. Click activity is not a prize ranking.\":\"Positions are based on verified ticket units. Final prizes require independent settlement and refund reconciliation.\")+'</p></div><span class=\"orbit-vendor-live-phase-v751\">'+(provisional?\"EARLY ACTIVITY\":\"SALES\")+'</span></div><div class=\"orbit-vendor-live-rank-toolbar-v751\"><label>Find vendor<input id=\"vendorContestRankSearchV751\" placeholder=\"Search business or vendor\" type=\"search\" autocomplete=\"off\"></label><label class=\"orbit-vendor-rank-toggle-v751\"><input id=\"vendorContestRankAllV751\" type=\"checkbox\"> Show all vendors</label><span id=\"vendorContestRankCountV751\" aria-live=\"polite\"></span></div>',box.querySelector(\"#vendorContestRankSearchV751\")?.addEventListener(\"input\",renderVendorLiveRankV751),box.querySelector(\"#vendorContestRankAllV751\")?.addEventListener(\"change\",renderVendorLiveRankV751),renderVendorLiveRankV751()}async function loadVendorLiveContestV750(){const data=await api(\"/api/admin/vendors/club/live-competition\",{cacheMs:0,timeoutMs:3e4}),form=$2(\"vendorContestFormV750\"),stats=$2(\"vendorContestEvidenceV750\");if(!form)return;const record=data.record||{};vendorLiveContestRevisionV750=Number(record.revision||0);for(const field of[\"title\",\"popupHeadline\",\"popupBody\",\"popupCta\"])form.elements.namedItem(field)&&(form.elements.namedItem(field).value=record[field]||\"\");if(stats){const proof=data.audit||{};stats.innerHTML=`<div class=\"orbit-vendor-live-stat-v750\"><strong>${esc(data.publicPromotion?.displayed?\"Promotion visible\":\"Not published\")}</strong><span>Wolverhampton public banner \\xB7 ${esc(record.status||\"draft\")}</span></div><div class=\"orbit-vendor-live-stat-v750\"><strong>${Number(proof.referralAccounts||0)}</strong><span>Real tracked vendor links</span></div><div class=\"orbit-vendor-live-stat-v750\"><strong>${Number(proof.totalRecordedClicks||0)}</strong><span>Recorded link clicks \\xB7 not unique people</span></div><div class=\"orbit-vendor-live-stat-v750\"><strong>Not verified</strong><span>Paid ticket attribution \\xB7 final prize awards on hold</span></div><p class=\"orbit-muted\">${esc(data.launchMessage||\"\")}</p>`}}async function previewVendorLoginModalV750(){\n  const form=$2('vendorContestFormV750');\n  if(!form)throw new Error('Open the competition editor before previewing.');\n  document.getElementById('orbitContestPreviewDialogV750')?.close?.();\n  document.getElementById('orbitContestPreviewDialogV750')?.remove();\n  const previous=document.activeElement,controller=new AbortController();\n  const dialog=document.createElement('dialog');\n  dialog.id='orbitContestPreviewDialogV750';\n  dialog.className='orbit-vendor-popup-dialog-v828';\n  dialog.setAttribute('aria-labelledby','orbitVendorPopupPreviewTitleV828');\n  dialog.setAttribute('aria-busy','true');\n  dialog.innerHTML='<header class=\"orbit-vendor-popup-dialog-v828__header\"><div><h2 id=\"orbitVendorPopupPreviewTitleV828\">Vendor login pop-up preview</h2><p>Review your current wording as it will appear in Vendor Club.</p></div><button type=\"button\" class=\"secondary\" data-contest-preview-close aria-label=\"Close pop-up preview\">Close \u00D7</button></header><div class=\"orbit-vendor-popup-dialog-v828__toolbar\"><div role=\"group\" aria-label=\"Preview size\"><button type=\"button\" data-popup-size=\"desktop\" aria-pressed=\"true\">Desktop</button><button type=\"button\" data-popup-size=\"mobile\" aria-pressed=\"false\">Mobile</button></div><span role=\"status\" data-popup-status>Loading preview\u2026</span></div><div class=\"orbit-vendor-popup-dialog-v828__viewport\"><iframe title=\"Vendor Club login pop-up\" sandbox=\"allow-scripts\" referrerpolicy=\"no-referrer\" hidden></iframe></div>';\n  const frame=dialog.querySelector('iframe'),status=dialog.querySelector('[data-popup-status]');\n  const token=crypto.randomUUID().replace(/-/g,''),copy={previewToken:token};\n  for(const name of ['title','popupHeadline','popupBody','popupCta'])copy[name]=String(form.elements.namedItem(name)?.value||'');\n  let closed=false,settled=false,timer,finish,fail;\n  const ready=new Promise((resolve,reject)=>{finish=resolve;fail=reject;});\n  function cleanup(){\n    if(closed)return;closed=true;clearTimeout(timer);controller.abort();window.removeEventListener('message',onMessage);\n    if(dialog.open)dialog.close();dialog.remove();if(previous?.isConnected)previous.focus({preventScroll:true});\n    if(!settled){settled=true;finish(false);}\n  }\n  function showFailure(error){\n    if(closed||settled)return;settled=true;clearTimeout(timer);frame.hidden=true;dialog.setAttribute('aria-busy','false');\n    status.textContent=error?.message||'The preview could not load. Please try again.';status.setAttribute('role','alert');\n    const retry=document.createElement('button');retry.type='button';retry.textContent='Try again';retry.addEventListener('click',()=>{cleanup();$2('vendorContestPopupPreviewV750')?.click();});status.after(retry);fail(error instanceof Error?error:new Error(status.textContent));\n  }\n  function onMessage(event){\n    if(event.source!==frame.contentWindow||event.data?.type!=='orbit-vendor-popup-preview'||event.data?.token!==token||closed)return;\n    if(event.data.action==='close'){cleanup();return;}\n    if(event.data.action==='cta'){status.textContent='In Vendor Club, this opens the vendor\u2019s referral link and flyer.';return;}\n    if(event.data.action==='ready'&&!settled){\n      const box=frame.getBoundingClientRect();\n      if(!dialog.open||box.width<1||box.height<1){showFailure(new Error('The preview could not be displayed. Please open it again.'));return;}\n      settled=true;clearTimeout(timer);dialog.setAttribute('aria-busy','false');status.textContent='Preview ready \u00B7 unpublished changes';setNotice2('Pop-up preview ready.');finish(true);\n    }\n  }\n  dialog.querySelector('[data-contest-preview-close]').addEventListener('click',cleanup);\n  dialog.addEventListener('cancel',event=>{event.preventDefault();cleanup();});\n  dialog.addEventListener('close',cleanup);\n  dialog.querySelectorAll('[data-popup-size]').forEach(button=>button.addEventListener('click',()=>{\n    dialog.dataset.previewSize=button.dataset.popupSize;\n    dialog.querySelectorAll('[data-popup-size]').forEach(b=>b.setAttribute('aria-pressed',String(b===button)));\n  }));\n  window.addEventListener('message',onMessage);\n  document.body.appendChild(dialog);dialog.showModal();dialog.querySelector('[data-contest-preview-close]').focus();\n  timer=setTimeout(()=>showFailure(new Error('The preview is taking too long to load. Please try again.')),30000);\n  (async()=>{\n    try{\n      const response=await api('/api/admin/vendors/club/live-competition/preview-popup',{method:'POST',body:JSON.stringify(copy),cacheMs:0,timeoutMs:20000,signal:controller.signal});\n      if(closed)return;\n      if(!response?.success||!response.html||response.previewToken!==token)throw new Error('The preview response was incomplete. Please try again.');\n      frame.hidden=false;frame.srcdoc=response.html;\n    }catch(error){showFailure(error);}\n  })();\n  return ready;\n}\nlet vendorLiveShopProductsV750=[];async function loadVendorLiveShopV750(){const data=await api(\"/api/admin/vendors/club/live-shop-drafts\",{cacheMs:0});vendorLiveShopProductsV750=data.products||[];const diag=$2(\"vendorLiveShopReadinessV757\");if(diag){const check=data.readiness||{};diag.innerHTML=\"<strong>Verified Shopify connection</strong><p>\"+esc(check.storeVerified?\"Connected to \"+(check.store||\"Orbit Card Show\")+\" in GBP\":\"Shop identity requires checking\")+\" \\xB7 \"+esc(check.productsReadable?\"Product catalogue readable\":\"Catalogue not verified\")+\" \\xB7 \"+esc(check.liveCheckoutCapability?\"Draft order checkout capability verified\":\"Checkout permission not verified\")+'</p><p class=\"orbit-muted\">'+esc((check.reason||[]).join(\" \"))+\"</p>\"}const list=$2(\"vendorLiveShopListV750\");list&&(list.innerHTML='<p class=\"orbit-muted\">'+esc(data.notice||\"\")+\"</p>\"+(vendorLiveShopProductsV750.length?vendorLiveShopProductsV750.map(p=>`<article class=\"orbit-vendor-live-shop-item-v750\"><img src=\"${esc(p.photoDataUrl||\"\")}\" alt=\"Product photo\"><div><strong>${esc(p.title)}</strong><p>${esc(p.description)}</p><small>\\xA3${Number(p.priceGbp||0).toFixed(2)} \\xB7 Postage \\xA3${Number(p.postageGbp||0).toFixed(2)} \\xB7 Stock ${Number(p.stock||0)}</small><p>${esc(p.status)} \\xB7 NOT AVAILABLE TO BUY</p></div><button type=\"button\" class=\"secondary\" data-live-shop-edit-v750=\"${esc(p.id)}\">Edit draft</button></article>`).join(\"\"):\"<p>No saved Vendor Shop products yet.</p>\"),list.querySelectorAll(\"[data-live-shop-edit-v750]\").forEach(b=>b.addEventListener(\"click\",()=>{const prod=vendorLiveShopProductsV750.find(p=>p.id===b.dataset.liveShopEditV750),form=$2(\"vendorLiveShopDraftV750\");if(!(!prod||!form)){for(const n of[\"id\",\"revision\",\"title\",\"description\",\"priceGbp\",\"postageGbp\",\"stock\"])form.elements.namedItem(n).value=prod[n]??\"\";form.scrollIntoView({block:\"start\",behavior:\"smooth\"})}})))}function bindVendorLiveShopV750(){const form=$2(\"vendorLiveShopDraftV750\");form&&($2(\"vendorLiveShopRefreshV750\")?.addEventListener(\"click\",()=>loadVendorLiveShopV750().catch(e=>setNotice2(e.message||e,!0))),$2(\"vendorLiveShopClearV750\")?.addEventListener(\"click\",()=>{form.reset(),form.elements.namedItem(\"id\").value=\"\",form.elements.namedItem(\"revision\").value=\"0\"}),form.addEventListener(\"submit\",async e=>{e.preventDefault();const button2=form.querySelector(\"[type=submit]\"),notice=$2(\"vendorLiveShopNoticeV750\");setLoading(button2,!0);try{const fd=new FormData(form),body={};for(const n of[\"id\",\"revision\",\"title\",\"description\",\"priceGbp\",\"postageGbp\",\"stock\"])body[n]=fd.get(n);const file=fd.get(\"photo\");if(file&&file.size){if(file.size>125e4)throw Error(\"Please compress the photograph below 1.25 MB.\");body.photoDataUrl=await new Promise((resolve,reject)=>{const reader=new FileReader;reader.onload=()=>resolve(reader.result),reader.onerror=()=>reject(Error(\"Image could not be read\")),reader.readAsDataURL(file)})}if(!confirm(\"Save this real-store PRODUCT DRAFT without publishing it? No Shopify checkout or label will be created yet.\"))return;const result=await api(\"/api/admin/vendors/club/live-shop-drafts\",{method:\"POST\",body:JSON.stringify(body),cacheMs:0});notice.textContent=\"Draft saved. Shopify publication and postage verification are still required.\",form.elements.namedItem(\"id\").value=result.id,form.elements.namedItem(\"revision\").value=result.revision,await loadVendorLiveShopV750()}catch(err){notice.textContent=err.message||String(err)}finally{setLoading(button2,!1)}}),loadVendorLiveShopV750().catch(e=>{const box=$2(\"vendorLiveShopListV750\");box&&(box.textContent=e.message||\"Could not load products\")}))}function switchCompetitionPanelV757(target){document.querySelectorAll(\"[data-contest-panel-v757]\").forEach(el=>{el.hidden=el.dataset.contestPanelV757!==target}),document.querySelectorAll(\"[data-contest-view-v757]\").forEach(btn=>{const on=btn.dataset.contestViewV757===target;btn.setAttribute(\"aria-pressed\",String(on)),btn.classList.toggle(\"active\",on)})}document.addEventListener(\"click\",ev=>{const btn=ev.target?.closest?.(\"[data-contest-view-v757]\");btn&&(ev.preventDefault(),switchCompetitionPanelV757(btn.dataset.contestViewV757))},!0);let flyerStudioRowsV757=[],flyerStudioCurrentV757=null,flyerStudioImageV757=null;function flyerStatusV757(message,error=!1){const el=$2(\"vendorFlyerStatusV757\");el&&(el.textContent=message,el.style.color=error?\"#ad3b3b\":\"\")}function showFlyerImageV757(image){const box=$2(\"vendorFlyerPreviewImageV757\");box&&(box.innerHTML=image?'<img src=\"'+esc(image)+'\" alt=\"Chosen event artwork\"><span class=\"orbit-v757-flyer-qr-demo\">VENDOR QR</span>':\"<span>No artwork uploaded for this event yet.</span>\")}async function loadFlyerStudioV757(){const selector=$2(\"vendorFlyerEventV757\");if(!selector)return;const value=selector.value,info=await api(\"/api/admin/vendors/club/flyer-studio\",{cacheMs:0});flyerStudioRowsV757=info.events||[],selector.innerHTML=flyerStudioRowsV757.map(e=>'<option value=\"'+esc(e.eventKey)+'\">'+esc(e.eventDate+\" \\xB7 \"+e.name+\" \\xB7 \"+(e.template?.status||\"No flyer\"))+\"</option>\").join(\"\")||'<option value=\"\">No active shows available</option>',selector.value=flyerStudioRowsV757.some(e=>e.eventKey===value)?value:flyerStudioRowsV757.some(e=>e.eventKey===info.defaultEventKey)?info.defaultEventKey:flyerStudioRowsV757[0]?.eventKey||\"\",await loadFlyerTemplateV757()}async function loadFlyerTemplateV757(){const eventKey=$2(\"vendorFlyerEventV757\")?.value,form=$2(\"vendorFlyerFormV757\");if(!form||!eventKey)return;const x=(await api(\"/api/admin/vendors/club/flyer-studio/template?eventKey=\"+encodeURIComponent(eventKey),{cacheMs:0})).template||{},isW=eventKey===\"event:2026-11-14|wolverhampton racecourse\";flyerStudioCurrentV757=x;for(const[key,fallback]of Object.entries({title:isW?\"WOLVERHAMPTON\":\"ORBIT CARD SHOW\",tagline:\"Trading cards. Collectibles. A brilliant day out.\",cta:\"SCAN FOR TICKETS\",qrXmm:36.1,qrYmm:98.5,qrSizeMm:38.8,revision:0}))form.elements.namedItem(key)&&(form.elements.namedItem(key).value=x[key]??fallback);flyerStudioImageV757=x.artworkDataUrl||(isW?\"https://orbit-membership-service.onrender.com/vendor-club-assets/wolverhampton-a6-master.png\":null),showFlyerImageV757(flyerStudioImageV757),flyerStatusV757(x.status===\"published\"?(x.hasUnpublishedDraft?\"New draft ready for approval \\xB7 current published flyer remains live\":\"Published for this event\")+\" \\xB7 revision \"+x.revision:x.status===\"disabled\"?\"Deactivated \\xB7 existing artwork retained\":x.status===\"draft\"?\"Unpublished draft saved \\xB7 revision \"+x.revision:\"No custom template yet. This event needs a saved draft before publication.\"),$2(\"vendorFlyerPublishV757\").disabled=!(x.hasArtwork&&(x.status===\"draft\"||x.hasUnpublishedDraft)),$2(\"vendorFlyerDeactivateV757\").disabled=x.status!==\"published\"}document.addEventListener(\"change\",e=>{if(e.target?.id===\"vendorFlyerEventV757\"&&loadFlyerTemplateV757().catch(err=>flyerStatusV757(err.message,!0)),e.target?.closest?.('#vendorFlyerFormV757 input[name=\"artwork\"]')){const file=e.target.files?.[0];if(!file)return;if(file.size>125e4||![\"image/png\",\"image/jpeg\"].includes(file.type)){flyerStatusV757(\"Use PNG/JPEG artwork below 1.25 MB.\",!0),e.target.value=\"\";return}const reader=new FileReader;reader.onload=()=>{flyerStudioImageV757=String(reader.result||\"\"),showFlyerImageV757(flyerStudioImageV757),flyerStatusV757(\"New image selected. Save draft to preserve it.\")},reader.readAsDataURL(file)}},!0),document.addEventListener(\"submit\",async e=>{if(e.target?.id!==\"vendorFlyerFormV757\")return;e.preventDefault();const form=e.target,btn=$2(\"vendorFlyerSaveV757\"),eventKey=$2(\"vendorFlyerEventV757\")?.value,local=String(flyerStudioImageV757||\"\"),image=local.startsWith(\"data:image/\")?local:flyerStudioCurrentV757?.artworkDataUrl||\"\";if(!eventKey||!image){flyerStatusV757(\"Upload original event artwork before saving a flyer.\",!0);return}if(confirm(\"Save this event artwork as an UNPUBLISHED draft? Existing published flyer will be replaced only after later explicit approval.\")){setLoading(btn,!0);try{const fd=new FormData(form),input=Object.fromEntries(fd);delete input.artwork;const result=await api(\"/api/admin/vendors/club/flyer-studio/template\",{method:\"POST\",body:JSON.stringify({...input,eventKey,artworkDataUrl:image}),cacheMs:0});flyerStatusV757(\"Flyer draft saved (revision \"+result.template.revision+\"). Click Publish when you have reviewed it.\"),await loadFlyerStudioV757()}catch(err){flyerStatusV757(err.message||\"Artwork save failed\",!0)}finally{setLoading(btn,!1)}}},!0),document.addEventListener(\"click\",async e=>{const id=e.target?.closest?.(\"button\")?.id;if(![\"vendorFlyerReloadV757\",\"vendorFlyerPublishV757\",\"vendorFlyerDeactivateV757\"].includes(id))return;e.preventDefault();const eventKey=$2(\"vendorFlyerEventV757\")?.value,action=id===\"vendorFlyerPublishV757\"?\"publish\":\"deactivate\";if(id===\"vendorFlyerReloadV757\"){await loadFlyerStudioV757().catch(err=>flyerStatusV757(err.message,!0));return}if(!eventKey||!flyerStudioCurrentV757)return;const confirmPhrase=action===\"publish\"?\"PUBLISH VERIFIED EVENT FLYER\":\"DEACTIVATE EVENT FLYER\";if(confirm((action===\"publish\"?\"Publish\":\"Deactivate\")+\" this exact event artwork? No customer messages are sent.\"))try{const result=await api(\"/api/admin/vendors/club/flyer-studio/publication\",{method:\"POST\",body:JSON.stringify({eventKey,revision:flyerStudioCurrentV757.revision,action,confirm:confirmPhrase}),cacheMs:0});flyerStatusV757(\"Event flyer \"+result.status+\".\"),await loadFlyerStudioV757()}catch(err){flyerStatusV757(err.message,!0)}},!0);function bindVendorLiveControlsV750(){document.addEventListener(\"click\",async e=>{if(!e.target?.closest?.(\"#vendorContestPublishPopupV757\")||(e.preventDefault(),!confirm(\"Publish the saved Wolverhampton popup wording to genuine vendors? No email/SMS or prize change occurs.\")))return;const btn=e.target.closest(\"button\");setLoading(btn,!0);try{const result=await api(\"/api/admin/vendors/club/live-competition/publish-popup-copy\",{method:\"POST\",body:JSON.stringify({revision:vendorLiveContestRevisionV750,confirm:\"PUBLISH WOLVERHAMPTON PROMOTION COPY\"}),cacheMs:0});$2(\"vendorContestNoticeV750\").textContent=\"Live promo popup copy published (revision \"+result.revision+\"). No messages sent.\"}catch(err){const el=$2(\"vendorContestNoticeV750\");el&&(el.textContent=err.message||\"Publication refused.\")}finally{setLoading(btn,!1)}},!0),$2(\"vendorContestRefreshV750\")?.addEventListener(\"click\",()=>loadVendorLiveContestV750().catch(e=>setNotice2(e.message||e,!0))),$2(\"vendorContestFormV750\")?.addEventListener(\"submit\",async e=>{e.preventDefault();const form=e.currentTarget,button2=form.querySelector(\"[type=submit]\");if(confirm(\"Save this real competition copy as an UNPUBLISHED draft? No customer notification will be sent.\")){setLoading(button2,!0);try{const draft=Object.fromEntries(new FormData(form));Object.assign(draft,{revision:vendorLiveContestRevisionV750,prizesGbp:[250,150,100],pointsPerEligibleOrder:2}),vendorLiveContestRevisionV750=(await api(\"/api/admin/vendors/club/live-competition/draft\",{method:\"POST\",body:JSON.stringify(draft),cacheMs:0})).revision,$2(\"vendorContestNoticeV750\").textContent=\"Unpublished draft saved. No customers were contacted.\",await loadVendorLiveContestV750()}catch(err){$2(\"vendorContestNoticeV750\").textContent=err.message||String(err)}finally{setLoading(button2,!1)}}}),$2(\"vendorFlyerPreviewV750\")?.addEventListener(\"click\",()=>{const box=$2(\"vendorFlyerPreviewResultV750\");box&&(box.innerHTML='<figure class=\"orbit-vendor-flyer-master-v751\"><div class=\"orbit-vendor-flyer-master-v751__image\"><img src=\"https://orbit-membership-service.onrender.com/vendor-club-assets/wolverhampton-a6-master.png\" alt=\"Official Orbit Card Show Wolverhampton A6 event poster artwork; QR area reserved for each individual vendor\"><div class=\"orbit-vendor-flyer-master-v751__qr\"><span>PERSONALISED<br>VENDOR QR</span></div></div><figcaption>Artwork preview \\xB7 the downloadable vendor PDF places a genuine, unique ticket-referral QR in this area. No demonstration referral or sale is created by previewing.</figcaption></figure>')}),loadVendorLiveLeaderboardV750().catch(e=>{const box=$2(\"vendorContestLeaderboardV750\");box&&(box.textContent=e.message||\"Real leaderboard unavailable\")}),loadVendorLiveContestV750().catch(e=>{const box=$2(\"vendorContestEvidenceV750\");box&&(box.textContent=e.message||\"Could not load live competition.\")})}function initVendorAdminTabsV727(){document.querySelectorAll(\"[data-vendor-sandbox-tab-v727]\").forEach(b=>b.addEventListener(\"click\",()=>setVendorSandboxTabV727(b.dataset.vendorSandboxTabV727))),document.querySelectorAll(\"[data-vendor-campaign-tab-v727]\").forEach(b=>b.addEventListener(\"click\",()=>setVendorCampaignTabV727(b.dataset.vendorCampaignTabV727).catch(e=>setNotice2(e.message||e,!0)))),document.querySelectorAll(\"[data-growth-refresh-v727]\").forEach(b=>b.addEventListener(\"click\",()=>loadVendorGrowthV719().catch(e=>growthNoticeV719(e.message||String(e),!0)))),document.querySelectorAll(\"[data-vendor-open-sandbox-section-v730]\").forEach(b=>b.addEventListener(\"click\",()=>{setVendorPaneV385(\"sandbox\"),setVendorSandboxTabV727(b.dataset.vendorOpenSandboxSectionV730)})),document.querySelectorAll(\"[data-vendor-go-sandbox-v727]\").forEach(b=>b.addEventListener(\"click\",()=>setVendorPaneV385(\"sandbox\"))),$2(\"vendorSponsorLiveRefreshV729\")?.addEventListener(\"click\",()=>loadVendorSponsorLiveV729().catch(e=>setNotice2(e.message||e,!0))),$2(\"vendorSponsorLivePreviewV729\")?.addEventListener(\"click\",()=>previewVendorSponsorLiveV729().catch(e=>setNotice2(e.message||e,!0))),$2(\"vendorSponsorLiveCopyV729\")?.addEventListener(\"click\",()=>copyVendorSponsorLiveV729().catch(e=>setNotice2(e.message||e,!0))),$2(\"vendorSponsorLiveEventV729\")?.addEventListener(\"change\",()=>{sponsorLivePreviewV729=null;const b=$2(\"vendorSponsorLiveCopyV729\");b&&(b.disabled=!0)}),$2(\"vendorWolvesPreviewV729\")?.addEventListener(\"click\",()=>previewWolverhamptonCampaignV729().catch(e=>setNotice2(e.message||e,!0))),bindVendorLiveControlsV750(),bindVendorLiveShopV750()}document.addEventListener(\"click\",async event=>{if(event.target?.closest?.(\"#vendorContestPopupPreviewV750\")){event.preventDefault(),event.stopPropagation();try{if(!$2(\"vendorContestFormV750\"))throw new Error(\"Competition editor has not loaded. Reopen Competitions and try again.\");if(!await previewVendorLoginModalV750())return;const notice=$2(\"vendorContestNoticeV750\");notice&&(notice.textContent=\"Preview open \\u2014 nothing has been published or sent.\")}catch(error){const message=error?.message||\"Preview could not be shown.\",notice=$2(\"vendorContestNoticeV750\");notice&&(notice.textContent=message),setNotice2(message,!0)}}},!0),document.readyState===\"loading\"?document.addEventListener(\"DOMContentLoaded\",initVendorAdminTabsV727,{once:!0}):initVendorAdminTabsV727();\n// V828 production sponsorship administration: canonical pane, real paid records.\nconst vendorSponsorshipAdminV828={items:[],nextCursor:null,read:0,loading:false,filter:\"\"};\nfunction sponsorMoneyV828(value){return value===null||value===undefined?\"Not recorded\":new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency:\"GBP\"}).format(Number(value));}\nfunction sponsorDateV828(value){const date=new Date(value);return value&&!Number.isNaN(date.getTime())?date.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\"}):\"Date unavailable\";}\nfunction renderVendorLiveSponsorshipsV828(){\n const root=$2(\"vendorLiveSponsorshipsV821\");if(!root)return;\n const state828=vendorSponsorshipAdminV828,query=state828.filter.trim().toLowerCase(),rows=state828.items.filter(x=>!query||(x.vendorName+\" \"+x.eventName+\" \"+x.eventDate).toLowerCase().includes(query)).sort((a,b)=>String(a.eventDate||\"\").localeCompare(String(b.eventDate||\"\"))||String(a.vendorName).localeCompare(String(b.vendorName))),pending=state828.items.filter(x=>x.preparation.status!==\"ready_for_show\").length;\n root.innerHTML='<div class=\"orbit-panel-header\"><div><p class=\"orbit-kicker\">Vendor Club \u00B7 Sponsorships</p><h3>Paid sponsorships</h3><p>Manage sponsors, review their purchases and track preparation for each show.</p></div><button type=\"button\" class=\"secondary\" data-sponsor-refresh-v828'+(state828.loading?' disabled':'')+'>Refresh</button></div><div class=\"orbit-sponsor-toolbar-v828\"><label>Find a sponsor or show<input id=\"vendorSponsorSearchV828\" type=\"search\" value=\"'+esc(state828.filter)+'\" placeholder=\"Business, event or date\" autocomplete=\"off\"></label><p>'+state828.items.length+' sponsorship'+(state828.items.length===1?'':'s')+' loaded \u00B7 '+pending+' to prepare</p></div><div data-sponsor-list-v828>'+(rows.length?'<div class=\"orbit-table-wrap\"><table class=\"orbit-sponsor-table-v828\"><thead><tr><th>Sponsor</th><th>Event</th><th>Package</th><th>Payment</th><th>Preparation</th><th>Action</th></tr></thead><tbody>'+rows.map(x=>'<tr><td data-label=\"Sponsor\"><strong>'+esc(x.vendorName)+'</strong></td><td data-label=\"Event\"><strong>'+esc(x.eventName)+'</strong><small>'+esc(sponsorDateV828(x.eventDate))+'</small></td><td data-label=\"Package\">'+esc(x.packageName)+'<small>'+esc(sponsorMoneyV828(x.packagePriceGbp))+' package</small></td><td data-label=\"Payment\"><strong>'+esc(sponsorMoneyV828(x.paymentMethod==='account_credit'?x.creditAppliedGbp:x.quoteAmountGbp))+'</strong><small>'+esc(x.paymentMethod==='account_credit'?'Account Credit':'Shopify')+'</small><span class=\"orbit-sponsor-status-v828 '+(x.paymentVerified?'is-paid':'is-review')+'\">'+(x.paymentVerified?'Paid':'Needs reconciliation')+'</span></td><td data-label=\"Preparation\"><span class=\"orbit-sponsor-status-v828 '+(x.preparation.status==='ready_for_show'?'is-ready':'')+'\">'+esc(x.preparation.label)+'</span></td><td><button type=\"button\" class=\"secondary\" data-sponsor-manage-v828=\"'+esc(x.id)+'\">Manage sponsorship</button></td></tr>').join('')+'</tbody></table></div>':state828.loading?'<p role=\"status\">Loading paid sponsorships\u2026</p>':'<div class=\"orbit-vendor-empty-state-v730\"><h4>'+(query?'No matching sponsorships':'No paid sponsorships yet')+'</h4><p>'+(query?'Try a different business, event or date.':'Paid production sponsorships will appear here automatically.')+'</p></div>')+'</div>'+(state828.nextCursor?'<div class=\"orbit-sponsor-more-v828\"><button type=\"button\" class=\"secondary\" data-sponsor-more-v828'+(state828.loading?' disabled':'')+'>Load more sponsorships</button></div>':'')+'<p class=\"orbit-sponsor-read-error-v828\" role=\"status\" data-sponsor-status-v828></p>';\n root.querySelector('[data-sponsor-refresh-v828]')?.addEventListener('click',()=>loadVendorLiveSponsorshipsV821());\n root.querySelector('[data-sponsor-more-v828]')?.addEventListener('click',()=>loadVendorLiveSponsorshipsV821({append:true}));\n root.querySelectorAll('[data-sponsor-manage-v828]').forEach(button=>button.addEventListener('click',()=>openVendorSponsorshipV828(button.dataset.sponsorManageV828,button)));\n const search=root.querySelector('#vendorSponsorSearchV828');search?.addEventListener('input',()=>{const pos=search.selectionStart;state828.filter=search.value;renderVendorLiveSponsorshipsV828();const next=$2('vendorSponsorSearchV828');next?.focus();try{next?.setSelectionRange(pos,pos)}catch(_){}});\n}\nasync function loadVendorLiveSponsorshipsV821({append=false}={}){\n const root=$2(\"vendorLiveSponsorshipsV821\");if(!root)return;\n const view=vendorSponsorshipAdminV828,read=++view.read;view.loading=true;if(!append){view.items=[];view.nextCursor=null;}\n renderVendorLiveSponsorshipsV828();\n try{const data=await api('/api/admin/card-shows/v819/sponsorships?limit=100'+(append&&view.nextCursor?'&after='+encodeURIComponent(view.nextCursor):''),{cacheMs:0,timeoutMs:2e4});if(read!==view.read)return;if(data.success===false||!Array.isArray(data.items))throw new Error(data.error||'Unable to load paid sponsorships.');const all=append?view.items.concat(data.items):data.items;view.items=[...new Map(all.map(x=>[x.id,x])).values()];view.nextCursor=data.nextCursor||null;view.loading=false;renderVendorLiveSponsorshipsV828();}\n catch(error){if(read!==view.read)return;view.loading=false;renderVendorLiveSponsorshipsV828();const note=root.querySelector('[data-sponsor-status-v828]');if(note)note.textContent='Sponsorships could not be loaded. '+String(error.message||error)+' Use Refresh to retry.';const empty=root.querySelector('.orbit-vendor-empty-state-v730');if(empty)empty.innerHTML='<h4>Sponsorships unavailable</h4><p>The saved purchases have not been loaded.</p>';}\n}\nfunction sponsorDetailMarkupV828(data){\n const x=data.item,brand=x.brand,prep=x.preparation,purchase=x.purchase||{},options=data.preparationOptions||{},history=prep.history||[],field=(label,value)=>'<div><dt>'+esc(label)+'</dt><dd>'+esc(value)+'</dd></div>',brandHtml=brand?'<div class=\"orbit-sponsor-brand-v828\">'+(brand.logoDataUrl?'<img src=\"'+esc(brand.logoDataUrl)+'\" alt=\"'+esc(brand.displayName||x.vendorName)+' sponsorship artwork\">':'')+'<div><strong>'+esc(brand.displayName||x.vendorName)+'</strong>'+(brand.contactName?'<p>'+esc(brand.contactName)+'</p>':'')+(brand.website?'<p><a href=\"'+esc(brand.website)+'\" target=\"_blank\" rel=\"noopener noreferrer\">Website</a></p>':'')+(brand.socialUrl?'<p><a href=\"'+esc(brand.socialUrl)+'\" target=\"_blank\" rel=\"noopener noreferrer\">Social profile</a></p>':'')+(brand.boostedPostCopy?'<p class=\"orbit-sponsor-copy-v828\">'+esc(brand.boostedPostCopy)+'</p>':'')+'<small>Submitted sponsor details'+(brand.updatedAt?' \u00B7 '+esc(sponsorDateV828(brand.updatedAt)):'')+'</small></div></div>':'<p class=\"orbit-muted\">No sponsorship brand details have been submitted yet.</p>';\n return '<div class=\"orbit-sponsor-dialog-head-v828\"><div><p class=\"orbit-kicker\">Manage sponsorship</p><h2 id=\"vendorSponsorDialogTitleV828\">'+esc(x.vendorName)+'</h2><p>'+esc(x.eventName)+' \u00B7 '+esc(sponsorDateV828(x.eventDate))+'</p></div><button type=\"button\" class=\"secondary\" data-sponsor-close-v828 aria-label=\"Close sponsorship\">Close \u2715</button></div><div class=\"orbit-sponsor-dialog-body-v828\">'+(!x.paymentVerified?'<div class=\"orbit-sponsor-review-v828\" role=\"status\"><strong>Purchase needs reconciliation</strong><ul>'+x.paymentIssues.map(v=>'<li>'+esc(v)+'</li>').join('')+'</ul></div>':'')+'<dl class=\"orbit-sponsor-facts-v828\">'+field('Package',x.packageName+' \u00B7 '+sponsorMoneyV828(x.packagePriceGbp))+field('Paid for this upgrade',sponsorMoneyV828(x.paymentMethod==='account_credit'?x.creditAppliedGbp:x.quoteAmountGbp)+' \u00B7 '+(x.paymentMethod==='account_credit'?'Account Credit':'Shopify'))+field('Existing table deduction',sponsorMoneyV828(x.tableDeductionGbp))+field('Table allocation',(purchase.existingTableCount===null?'Not recorded':purchase.existingTableCount+' existing')+(purchase.newTableCount===null?'':' \u00B7 '+purchase.newTableCount+' additional'))+'</dl><section><h3>Sponsor artwork and copy</h3>'+brandHtml+'</section><form id=\"vendorSponsorPreparationFormV828\"><h3>Show preparation</h3><p class=\"orbit-muted\">Record the work your team has prepared. Payment and fulfilment evidence is shown separately below.</p><label>Preparation status<select name=\"preparationStatus\">'+Object.entries(options).map(([value,label])=>'<option value=\"'+esc(value)+'\"'+(prep.status===value?' selected':'')+'>'+esc(label)+'</option>').join('')+'</select></label><label>Internal preparation notes<textarea name=\"notes\" rows=\"4\" maxlength=\"4000\" placeholder=\"Artwork checks, promotion arrangements or follow-up needed\">'+esc(prep.notes)+'</textarea></label><div class=\"orbit-sponsor-save-v828\"><button type=\"submit\">Save preparation</button><span role=\"status\" data-sponsor-save-status-v828></span></div></form><details class=\"orbit-sponsor-purchase-v828\"><summary>Purchase and fulfilment evidence</summary><dl>'+field('Recorded payment state',x.status)+field('Payment verified',x.paymentVerified?'Yes \u2014 matching purchase, quote and slot':'Requires reconciliation')+field('Purchase created',sponsorDateV828(x.createdAt))+field('Payment recorded',sponsorDateV828(purchase.paymentVerifiedAt))+field('Fulfilment evidence',x.fulfilmentStatus)+(purchase.shopifyOrderName?field('Shopify order',purchase.shopifyOrderName):'')+(purchase.shopifyOrderId?field('Order reference',purchase.shopifyOrderId):'')+field('Purchase reference',x.id)+field('Quote reference',purchase.quoteId)+field('Slot reference',purchase.slotId)+(purchase.bookingReferences?.length?field('Table booking references',purchase.bookingReferences.join(', ')):'')+'</dl></details><details class=\"orbit-sponsor-history-v828\"><summary>Preparation history'+(prep.historyCount?' ('+prep.historyCount+')':'')+'</summary>'+(history.length?'<ol>'+history.map(h=>'<li><strong>'+esc(h.label)+'</strong><small>'+esc(sponsorDateV828(h.at))+' \u00B7 '+esc(h.actor)+'</small>'+(h.notes?'<p>'+esc(h.notes)+'</p>':'')+'</li>').join('')+'</ol>':'<p>No preparation updates recorded yet.</p>')+(prep.historyCount>history.length?'<p>Showing the latest '+history.length+' updates. Earlier entries remain in the audit history.</p>':'')+'</details></div>';\n}\nasync function openVendorSponsorshipV828(id,trigger){\n document.getElementById('vendorSponsorDialogV828')?.remove();\n const dialog=document.createElement('dialog');dialog.id='vendorSponsorDialogV828';dialog.className='orbit-sponsor-dialog-v828';dialog.setAttribute('aria-labelledby','vendorSponsorDialogTitleV828');dialog.innerHTML='<div class=\"orbit-sponsor-dialog-head-v828\"><h2 id=\"vendorSponsorDialogTitleV828\">Loading sponsorship\u2026</h2><button type=\"button\" class=\"secondary\" data-sponsor-close-v828>Close \u2715</button></div>';\n const close=()=>{dialog.close();dialog.remove();trigger?.focus();};\n dialog.addEventListener('click',event=>{if(event.target.closest('[data-sponsor-close-v828]'))close();else if(event.target===dialog){const r=dialog.getBoundingClientRect();if(event.clientX<r.left||event.clientX>r.right||event.clientY<r.top||event.clientY>r.bottom)close();}});\n dialog.addEventListener('cancel',event=>{event.preventDefault();close();});document.body.appendChild(dialog);dialog.showModal();\n try{const data=await api('/api/admin/card-shows/v819/sponsorships/'+encodeURIComponent(id),{cacheMs:0,timeoutMs:2e4});if(!dialog.isConnected||!dialog.open)return;if(!data.item)throw new Error(data.error||'This sponsorship could not be opened.');renderVendorSponsorshipDetailV828(dialog,data);dialog.querySelector('[data-sponsor-close-v828]')?.focus();}\n catch(error){if(dialog.isConnected)dialog.innerHTML='<div class=\"orbit-sponsor-dialog-head-v828\"><h2 id=\"vendorSponsorDialogTitleV828\">Sponsorship unavailable</h2><button type=\"button\" class=\"secondary\" data-sponsor-close-v828>Close \u2715</button></div><div class=\"orbit-sponsor-dialog-body-v828\"><p role=\"alert\">'+esc(error.message||error)+'</p><p>Close and try opening this sponsorship again.</p></div>';}\n}\nfunction renderVendorSponsorshipDetailV828(dialog,data,message=''){\n dialog.innerHTML=sponsorDetailMarkupV828(data);const form=dialog.querySelector('#vendorSponsorPreparationFormV828'),status=dialog.querySelector('[data-sponsor-save-status-v828]');if(status)status.textContent=message;\n form?.addEventListener('submit',async event=>{\n  event.preventDefault();const button=form.querySelector('[type=submit]');if(button.disabled)return;button.disabled=true;status.textContent='Saving preparation\u2026';\n  const fields=new FormData(form),requestId=globalThis.crypto?.randomUUID?.()||('prep-'+Date.now()+'-'+Math.random().toString(36).slice(2));\n  try{const result=await api('/api/admin/card-shows/v819/sponsorships/'+encodeURIComponent(data.item.id)+'/preparation',{method:'PATCH',body:JSON.stringify({preparationStatus:fields.get('preparationStatus'),notes:fields.get('notes'),revision:data.item.preparation.revision,requestId}),cacheMs:0,timeoutMs:2e4});if(!result.item)throw new Error(result.error||'Preparation could not be saved.');if(dialog.isConnected&&dialog.open)renderVendorSponsorshipDetailV828(dialog,result,'Preparation saved.');const index=vendorSponsorshipAdminV828.items.findIndex(x=>x.id===result.item.id);if(index>=0)vendorSponsorshipAdminV828.items[index]=result.item;renderVendorLiveSponsorshipsV828();}\n  catch(error){if(dialog.isConnected)status.textContent=String(error.message||error);button.disabled=false;}\n });\n}\n// End V828 production sponsorship administration.\n\nfunction setVendorPaneV385(pane){pane=pane||\"customers\",state.currentVendorPane=pane,rememberOrbitSubtab(\"vendors\",pane),pane===\"flyer-studio\"&&loadFlyerStudioV757().catch(err=>flyerStatusV757(err.message,!0));const workspaceHeader=document.querySelector(\".orbit-vendor-workspace-header\");workspaceHeader&&(workspaceHeader.hidden=pane===\"sponsorships\"||pane===\"sandbox\"&&(!state.currentSandboxSectionV730||state.currentSandboxSectionV730===\"sponsor\"));const headerActions=document.querySelector(\".orbit-vendor-header-actions-v496\");headerActions&&(headerActions.style.display=pane===\"club-support\"?\"none\":\"\");const syncStatus=$2(\"vendorHeaderSyncStatusV497\"),supportSyncSlot=$2(\"vendorSupportSyncStatusSlotV704\"),vendorTitle=workspaceHeader?.querySelector(\":scope > div\");syncStatus&&(pane===\"club-support\"&&supportSyncSlot?(supportSyncSlot.appendChild(syncStatus),syncStatus.classList.add(\"is-support-v704\")):vendorTitle&&!vendorTitle.contains(syncStatus)&&(vendorTitle.appendChild(syncStatus),syncStatus.classList.remove(\"is-support-v704\"))),workspaceHeader&&workspaceHeader.classList.toggle(\"support-pane-v704\",pane===\"club-support\");const vendorStrip=document.querySelector(\".orbit-vendor-planner-panel > .orbit-vendor-planner-vendor-strip-v693\")||document.querySelector(\"#orbitTablePlannerSubnavSlotV726 > .orbit-vendor-planner-vendor-strip-v693\"),plannerSlot=document.getElementById(\"orbitTablePlannerSubnavSlotV726\"),plannerToolbar=document.querySelector(\".orbit-vendor-planner-panel > .orbit-vendor-planner-toolbar\");vendorStrip&&plannerSlot&&plannerToolbar&&(pane===\"planner\"&&vendorStrip.parentElement!==plannerSlot?plannerSlot.appendChild(vendorStrip):pane!==\"planner\"&&vendorStrip.parentElement!==plannerToolbar.parentElement&&plannerToolbar.parentElement.insertBefore(vendorStrip,plannerToolbar)),document.querySelectorAll(\"[data-vendor-pane]\").forEach(x=>{const active=x.dataset.vendorPane===pane;x.hidden=!active,x.classList.toggle(\"active\",active)}),document.querySelectorAll(\"[data-vendor-open]\").forEach(x=>{const active=x.dataset.vendorOpen===pane;x.classList.toggle(\"active\",active),x.setAttribute(\"aria-selected\",String(active)),active?x.setAttribute(\"aria-current\",\"page\"):x.removeAttribute(\"aria-current\")}),pane===\"sponsorships\"&&loadVendorLiveSponsorshipsV821().catch(err=>setNotice2(err.message||err,!0)),pane===\"sandbox\"&&loadVendorSponsorLiveV729().catch(err=>setNotice2(err.message||err,!0)),pane===\"changes\"&&loadVendorBookingChangesV487().catch(err=>setNotice2(err.message||err,!0)),pane===\"reconcile\"&&loadVendorCancellationAuditV770().catch(err=>setNotice2(err.message||err,!0)),pane===\"club\"&&loadVendorClubV620().catch(err=>setNotice2(err.message||err,!0)),pane===\"club-support\"&&loadVendorClubSupportV621().catch(err=>setNotice2(err.message||err,!0)),pane===\"sandbox\"&&loadVendorGrowthV719().catch(err=>growthNoticeV719(err.message||\"Cannot load isolated sandbox.\",!0)),pane===\"sandbox\"&&(loadVendorSponsorshipsV695().catch(err=>setNotice2(err.message||err,!0)),loadVendorClubSettingsV620().then(()=>setVendorSandboxTabV727(state.currentSandboxSectionV730||\"sponsor\")).catch(err=>setNotice2(err.message||err,!0))),pane===\"growth\"&&loadVendorClubSettingsV620().then(()=>setVendorCampaignTabV727(\"campaigns\")).catch(err=>setNotice2(err.message||err,!0)),pane===\"club-settings\"&&loadVendorClubSettingsV620().then(()=>setVendorSettingsSectionV641(\"rewards\")).catch(err=>setNotice2(err.message||err,!0))}function vendorClubStatusPillV620(value,label=null){const status=String(value||\"not_activated\").toLowerCase(),cls=status===\"active\"?\"active\":\"waiting\",text2=label||status.replace(/_/g,\" \");return\"<span class='orbit-status-pill \"+cls+\"'>\"+esc(text2)+\"</span>\"}function vendorClubAdoptionBadgeV624(row){return row?row.communicationSuppressed?\"<span class='orbit-status-pill warning'>Do not contact</span>\":row.fullySetup?\"<span class='orbit-status-pill active'>Fully set up</span>\":row.verifiedMobile?\"<span class='orbit-status-pill active'>Mobile verified</span>\":row.activated?\"<span class='orbit-status-pill active'>Accessed</span>\":row.signupStarted?\"<span class='orbit-status-pill waiting'>Started</span>\":\"<span class='orbit-status-pill waiting'>Not joined</span>\":\"<span class='orbit-status-pill waiting'>Not joined</span>\"}function applyVendorClubStatusCellsV624(){const map=state.vendorClubStatusMapV624||{};document.querySelectorAll(\"[data-vendor-club-status-cell-v624]\").forEach(cell=>{cell.innerHTML=vendorClubAdoptionBadgeV624(map[cell.dataset.vendorClubStatusCellV624])})}async function loadVendorClubStatusMapV624(){try{const data=await api(\"/api/admin/vendors/club?q=\",{cacheMs:0,timeoutMs:2e4}),rows=data.rows||[];return state.vendorClubStatusMapV624=Object.fromEntries(rows.map(row=>[String(row.canonicalVendorId||\"\"),row])),applyVendorClubStatusCellsV624(),data}catch{return state.vendorClubStatusMapV624=state.vendorClubStatusMapV624||{},null}}const vendorClubSortV727={key:\"vendor\",direction:\"asc\"};function vendorClubSortedRowsV727(rows){const keys={vendor:r=>r.vendor||\"\",access:r=>r.statusLabel||r.clubStatus||\"\",points:r=>Number(r.pointsBalance||0),mobile:r=>r.verifiedMobile?1:0,upcoming:r=>Number(r.upcomingBookings||0),referred:r=>Number(r.lifetimeReferredPaidTickets||0),lastLogin:r=>r.lastLoginAt?Date.parse(r.lastLoginAt):null,updated:r=>r.lastRecordUpdatedAt?Date.parse(r.lastRecordUpdatedAt):null},get=keys[vendorClubSortV727.key]||keys.vendor,sign=vendorClubSortV727.direction===\"desc\"?-1:1;return rows.map((r,i)=>({r,i})).sort((a,b)=>{const av=get(a.r),bv=get(b.r),am=av==null||Number.isNaN(av),bm=bv==null||Number.isNaN(bv);if(am!==bm)return am?1:-1;if(am&&bm)return a.i-b.i;const cmp=typeof av==\"number\"&&typeof bv==\"number\"?av-bv:String(av).localeCompare(String(bv),\"en-GB\",{sensitivity:\"base\",numeric:!0});return sign*Math.sign(cmp)||a.i-b.i}).map(x=>x.r)}function vendorClubSortHeadingV727(label,key){const selected=vendorClubSortV727.key===key,dir=selected?vendorClubSortV727.direction===\"asc\"?\"\\u2191\":\"\\u2193\":\"\";return\"<th scope='col' aria-sort='\"+(selected?vendorClubSortV727.direction===\"asc\"?\"ascending\":\"descending\":\"none\")+\"'><button type='button' class='orbit-vendor-sort-v727' data-vendor-sort-v727='\"+key+\"' aria-label='Sort \"+label+\"'>\"+label+\"<span aria-hidden='true'>\"+(dir||\"\\u2195\")+\"</span></button></th>\"}async function loadVendorClubV620(button2=null){button2&&setLoading(button2,!0);try{const q=String($2(\"vendorClubSearchV620\")?.value||\"\").trim(),data=await api(\"/api/admin/vendors/club?q=\"+encodeURIComponent(q),{cacheMs:0,timeoutMs:2e4}),rows=vendorClubSortedRowsV727(data.rows||[]),target=$2(\"vendorClubTableV620\"),summary=$2(\"vendorClubSummaryV620\");if(state.vendorClubStatusMapV624={...state.vendorClubStatusMapV624||{},...Object.fromEntries(rows.map(row=>[String(row.canonicalVendorId||\"\"),row]))},applyVendorClubStatusCellsV624(),summary){const active=rows.filter(x=>x.activated===!0).length,verified=rows.filter(x=>x.verifiedMobile).length,total=rows.reduce((n,x)=>n+Number(x.pointsBalance||0),0),duration=Number(data.performance?.durationMs||0);summary.className=\"orbit-vendor-club-statusline is-success\",summary.innerHTML=\"<strong>\"+rows.length+\" Vendor Club account\"+(rows.length===1?\"\":\"s\")+\"</strong><span>\"+active+\" activated \\xB7 \"+verified+\" verified mobiles \\xB7 \"+total+\" points\"+(duration?\" \\xB7 loaded in \"+duration+\" ms\":\"\")+\"</span>\"}return target&&!target.dataset.sortBoundV727&&(target.dataset.sortBoundV727=\"1\",target.addEventListener(\"click\",event=>{const b=event.target.closest(\"[data-vendor-sort-v727]\");if(!b)return;const key=b.dataset.vendorSortV727;vendorClubSortV727.direction=vendorClubSortV727.key===key&&vendorClubSortV727.direction===\"asc\"?\"desc\":\"asc\",vendorClubSortV727.key=key,loadVendorClubV620().catch(e=>setNotice2(e.message||e,!0))})),target&&(target.innerHTML=rows.length?\"<div class='orbit-table-wrap'><table><thead><tr>\"+vendorClubSortHeadingV727(\"Vendor\",\"vendor\")+vendorClubSortHeadingV727(\"Club access\",\"access\")+vendorClubSortHeadingV727(\"Points\",\"points\")+vendorClubSortHeadingV727(\"Mobile\",\"mobile\")+vendorClubSortHeadingV727(\"Upcoming\",\"upcoming\")+vendorClubSortHeadingV727(\"Referred tickets\",\"referred\")+vendorClubSortHeadingV727(\"Last vendor login\",\"lastLogin\")+vendorClubSortHeadingV727(\"Account updated\",\"updated\")+\"<th></th></tr></thead><tbody>\"+rows.map(row=>\"<tr><td><strong>\"+esc(row.vendor||\"Vendor\")+\"</strong><small>\"+esc(row.email||\"\")+\"</small></td><td>\"+vendorClubStatusPillV620(row.clubStatus,row.statusLabel)+\"</td><td><strong>\"+Number(row.pointsBalance||0)+\"</strong></td><td>\"+(row.verifiedMobile?\"Verified\":\"Not verified\")+\"</td><td>\"+Number(row.upcomingBookings||0)+\"</td><td>\"+Number(row.lifetimeReferredPaidTickets||0)+\"</td><td>\"+(row.lastLoginAt?esc(prettyDate(row.lastLoginAt)):\"Never\")+\"</td><td>\"+esc(prettyDate(row.lastRecordUpdatedAt))+\"</td><td><div class='orbit-action-row'><button type='button' class='secondary' data-vendor-club-open-v620='\"+esc(row.canonicalVendorId)+\"'>Open</button><button type='button' class='secondary' data-vendor-club-preview-vendor-v6201='\"+esc(row.canonicalVendorId)+\"'>Log in as vendor</button><button type='button' class='secondary' data-vendor-club-mobile-v675='\"+esc(row.canonicalVendorId)+\"'>Mobile QR</button></div></td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p class='orbit-muted'>No Vendor Club accounts match this search.</p>\"),data}finally{button2&&setLoading(button2,!1)}}function vendorSponsorshipStatusV695(value){const raw=String(value||\"\").toUpperCase(),good=[\"APPROVED\",\"FULFILLED\",\"COMPLETED\"].includes(raw),bad=raw.includes(\"REJECT\"),label=raw.replace(/_/g,\" \").toLowerCase();return\"<span class='orbit-status-pill \"+(good?\"active\":bad?\"error\":\"waiting\")+\"'>\"+esc(label||\"unknown\")+\"</span>\"}function vendorSponsorshipRunV695(){const runId=state.vendorSponsorshipSandboxV695?.runId;if(!runId)throw new Error(\"Refresh the Sponsorships sandbox before changing it.\");return runId}async function vendorSponsorshipPostV695(path,payload={}){return api(path,{method:\"POST\",body:JSON.stringify({...payload,runId:vendorSponsorshipRunV695()}),cacheMs:0,timeoutMs:3e4})}function vendorSponsorshipEventByIdV695(id){return(state.vendorSponsorshipSandboxV695?.events||[]).find(x=>String(x.id)===String(id))}function vendorSponsorshipMoneyV695(value){return vendorMoneyV384(Number(value||0))}function vendorSponsorshipEventCardV695(event){const plan=event.goldPlan||{},headline=event.headline||{},gold=event.gold||{};return\"<article class='orbit-vendor-sponsor-event-v695' data-sponsorship-event-v695='\"+esc(event.id)+\"'><div class='orbit-vendor-sponsor-event-head-v695'><div><span>\"+esc(prettyDate(event.eventDate))+\"</span><strong>\"+esc(event.name)+\"</strong><small>\"+esc(event.venue||event.location||\"\")+\"</small></div><div class='orbit-vendor-sponsor-event-stock-v695'><small>Table stock</small><strong>\"+Number(event.tableStock||0)+\"</strong></div></div><div class='orbit-vendor-sponsor-slot-grid-v695'><span><small>Headline</small><strong>\"+(headline.slotsUsed||0)+\" / \"+(headline.slotCapacity||1)+\"</strong><em>\"+esc(headline.reason||\"\")+\"</em></span><span><small>Gold</small><strong>\"+(gold.slotsUsed||0)+\" / \"+(gold.slotCapacity||5)+\"</strong><em>\"+esc(gold.reason||\"\")+\"</em></span><span><small>Canonical planner</small><strong>\"+(plan.ready?\"Ready\":\"Not ready\")+\"</strong><em>\"+esc(plan.ready?plan.status||\"draft\":plan.reason||\"No linked plan\")+\"</em></span></div><form class='orbit-vendor-sponsor-event-settings-v695' data-sponsor-event-settings-v695='\"+esc(event.id)+\"'><label><input type='checkbox' name='sponsorshipEnabled' \"+(event.sponsorshipEnabled?\"checked\":\"\")+\"> Sponsorship enabled</label><label><input type='checkbox' name='headlineEnabled' \"+(event.headlineEnabled?\"checked\":\"\")+\"> Headline enabled</label><label><input type='checkbox' name='goldEnabled' \"+(event.goldEnabled?\"checked\":\"\")+\"> Gold enabled</label><label>Asset deadline<input type='date' name='assetDeadline' value='\"+esc(event.assetDeadline||\"\")+\"'></label><button class='secondary' type='submit'>Save event controls</button></form><div class='orbit-action-row'><button type='button' class='secondary' data-sponsor-plan-toggle-v695='\"+esc(event.id)+\"' data-unlocked='\"+(plan.unlocked?\"1\":\"0\")+\"' \"+(!plan.ready&&!plan.unlocked?\"disabled\":\"\")+\">\"+(plan.unlocked?\"Close Gold table choices\":\"Invite Gold sponsors to choose positions\")+\"</button>\"+(event.overrideReason?\"<small>\"+esc(event.overrideReason)+\"</small>\":\"\")+\"</div></article>\"}function vendorSponsorshipChecklistV695(s){return\"<div class='orbit-vendor-sponsor-checklist-v695'>\"+(s.checklist||[]).map(task=>\"<label><input type='checkbox' data-sponsor-task-v695='\"+esc(s.id)+\"|\"+esc(task.id)+\"' \"+(task.completed?\"checked\":\"\")+\"> <span>\"+esc(task.label)+\"</span></label>\").join(\"\")+\"</div>\"}function vendorSponsorshipRecordV695(s){const event=vendorSponsorshipEventByIdV695(s.eventId)||{},assets=s.assets||{},currentGold=event.goldPlan?.currentSponsorshipId===s.id,bookingLinks=s.bookingLinks||[],tickets=s.ticketBatch;return\"<article class='orbit-vendor-sponsor-record-v695'><div class='orbit-vendor-sponsor-record-head-v695'><div><span>\"+esc((s.tier||\"\").toUpperCase())+\" \\xB7 \"+esc(event.name||s.eventId)+\"</span><strong>\"+esc(s.vendorName||\"Sponsor\")+\"</strong><small>\"+esc(s.considerationType||\"\")+(s.commercialNotes?\" \\xB7 \"+esc(s.commercialNotes):\"\")+\"</small></div>\"+vendorSponsorshipStatusV695(s.status)+\"</div><div class='orbit-vendor-sponsor-finance-v695'><span><small>Package</small><strong>\"+vendorSponsorshipMoneyV695(s.packagePrice)+\"</strong></span><span><small>Cash credit</small><strong>\"+vendorSponsorshipMoneyV695(s.cashCredit)+\"</strong></span><span><small>Paid</small><strong>\"+vendorSponsorshipMoneyV695(s.amountPaid)+\"</strong></span><span><small>Existing / new tables</small><strong>\"+Number(s.existingTableQty||0)+\" / \"+Number(s.newTableQty||0)+\"</strong></span><span><small>Points return</small><strong>\"+Number(s.pointsReturnPosted||s.pendingPointsReturn||0)+\"</strong></span></div>\"+(bookingLinks.length?\"<details><summary>Table credit evidence</summary><ul>\"+bookingLinks.map(x=>\"<li>\"+esc(x.sourceOrderLineId||x.id)+\" \\xB7 \"+esc(x.funding)+\" \\xB7 \"+vendorSponsorshipMoneyV695(x.amountPaid||0)+(x.pointsSpent?\" \\xB7 \"+Number(x.pointsSpent)+\" pts\":\"\")+\"</li>\").join(\"\")+\"</ul></details>\":\"\")+\"<div class='orbit-action-row orbit-vendor-sponsor-primary-actions-v695'>\"+(s.status===\"PAID_PENDING_APPROVAL\"?\"<button type='button' data-sponsor-approve-v695='\"+esc(s.id)+\"'>Approve</button><button type='button' class='secondary orbit-danger-button' data-sponsor-reject-v695='\"+esc(s.id)+\"'>Reject &amp; full sandbox refund</button>\":\"\")+(s.tier===\"gold\"&&currentGold&&!s.tableSelection?.confirmedAt?\"<button type='button' class='secondary' data-sponsor-skip-v695='\"+esc(s.id)+\"'>Skip Gold turn</button>\":\"\")+\"</div><div class='orbit-vendor-sponsor-columns-v695'><section><h5>Assets</h5>\"+(assets.logoDataUrl?\"<img class='orbit-vendor-sponsor-logo-v695' src='\"+esc(assets.logoDataUrl)+\"' alt='Sponsor logo preview'>\":\"\")+\"<p><strong>\"+esc(assets.displayName||s.vendorName||\"\")+\"</strong><br>\"+esc(assets.website||\"No website yet\")+\"<br>\"+esc(assets.socialUrl||\"No social link yet\")+\"</p><label>Review<select data-sponsor-asset-status-v695='\"+esc(s.id)+\"'><option value='pending' \"+(assets.reviewStatus===\"pending\"?\"selected\":\"\")+\">Pending</option><option value='accepted' \"+(assets.reviewStatus===\"accepted\"?\"selected\":\"\")+\">Accepted</option><option value='needs_replacement' \"+(assets.reviewStatus===\"needs_replacement\"?\"selected\":\"\")+\">Needs replacement</option></select></label><label>Vendor-facing reason<textarea rows='2' data-sponsor-asset-reason-v695='\"+esc(s.id)+\"'>\"+esc(assets.reviewReason||\"\")+\"</textarea></label><button type='button' class='secondary' data-sponsor-asset-save-v695='\"+esc(s.id)+\"'>Save asset review</button></section><section><h5>Fulfilment</h5>\"+vendorSponsorshipChecklistV695(s)+(tickets?\"<p class='orbit-vendor-sponsor-ticket-v695'><strong>Ticket preview ready</strong><br>\"+Number(tickets.pairCount||0)+\" pair PDFs \\xB7 \"+Number(tickets.ticketCount||0)+\" unique 10am tickets<br><small>No live credentials issued.</small></p>\":\"<p class='orbit-muted'>Ticket batch locked until approval.</p>\")+\"</section></div>\"+(s.tier===\"headline\"?\"<label class='orbit-vendor-sponsor-placement-v695'>Headline premium placement / area<textarea rows='3' data-sponsor-placement-v695='\"+esc(s.id)+\"'>\"+esc(s.manualPlacement||\"\")+\"</textarea><button type='button' class='secondary' data-sponsor-placement-save-v695='\"+esc(s.id)+\"'>Save placement</button></label>\":\"\")+\"<details><summary>Audit history</summary><div class='orbit-vendor-sponsor-audit-v695'>\"+(s.audit||[]).slice().reverse().map(a=>\"<p><strong>\"+esc(String(a.action||\"\").replace(/_/g,\" \"))+\"</strong><span>\"+esc(prettyDate(a.at))+\" \\xB7 \"+esc(a.actor||\"system\")+\"</span></p>\").join(\"\")+\"</div></details></article>\"}function renderVendorSponsorshipsV695(data){state.vendorSponsorshipSandboxV695=data;const boundary=$2(\"vendorSponsorshipBoundaryV695\"),events=data.events||[],sponsors=data.sponsorships||[],pending=sponsors.filter(x=>x.status===\"PAID_PENDING_APPROVAL\").length,approved=sponsors.filter(x=>x.status===\"APPROVED\").length,goldUsed=events.reduce((n,e)=>n+Number(e.gold?.slotsUsed||0),0);boundary&&(boundary.className=\"orbit-vendor-club-statusline is-success\",boundary.innerHTML=\"<strong>SANDBOX ONLY \\xB7 run \"+esc(data.runId||\"\")+\"</strong><span>No live Shopify charges, refunds, ticket credentials, public branding, customer emails or live table-stock writes are enabled by this release.</span>\");const persona=$2(\"vendorSponsorshipPersonaV695\");persona&&(persona.innerHTML=(data.personas||[]).map(p=>\"<option value='\"+esc(p.id)+\"' \"+(p.id===data.activePersona?.id?\"selected\":\"\")+\">\"+esc(p.name)+\" \\xB7 \"+esc(p.summary)+\"</option>\").join(\"\"));const metrics=$2(\"vendorSponsorshipMetricsV695\");metrics&&(metrics.innerHTML=\"<span><small>Pending approval</small><strong>\"+pending+\"</strong></span><span><small>Approved / seeded</small><strong>\"+approved+\"</strong></span><span><small>Gold slots occupied</small><strong>\"+goldUsed+\"</strong></span><span><small>Test persona</small><strong>\"+esc(data.activePersona?.name||\"\")+\"</strong></span>\");const eventRoot=$2(\"vendorSponsorshipEventsV695\");eventRoot&&(eventRoot.innerHTML=events.map(vendorSponsorshipEventCardV695).join(\"\")||\"<p class='orbit-muted'>No sponsorship events in this sandbox.</p>\");const manualEvent=$2(\"vendorSponsorshipManualEventV695\");manualEvent&&(manualEvent.innerHTML=events.map(e=>\"<option value='\"+esc(e.id)+\"'>\"+esc(e.name)+\"</option>\").join(\"\"));const rows=$2(\"vendorSponsorshipRowsV695\");rows&&(rows.innerHTML=sponsors.length?sponsors.map(vendorSponsorshipRecordV695).join(\"\"):\"<p class='orbit-muted'>No sponsorships yet. Open the Vendor Club Sandbox as a test vendor and purchase one.</p>\"),bindVendorSponsorshipControlsV695(),bindVendorSponsorshipAdminTabsV698()}async function loadVendorSponsorshipsV695(button2=null){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/sponsorships/sandbox\",{cacheMs:0,timeoutMs:3e4});return renderVendorSponsorshipsV695(data),data}finally{button2&&setLoading(button2,!1)}}function renderVendorSponsorshipMobileQrV695(data){document.getElementById(\"vendorSponsorshipQrModalV695\")?.remove();const wrap=document.createElement(\"div\");wrap.id=\"vendorSponsorshipQrModalV695\",wrap.className=\"orbit-vendor-sponsor-qr-modal-v695\",wrap.innerHTML=\"<div class='orbit-vendor-sponsor-qr-card-v695' role='dialog' aria-modal='true' aria-labelledby='vendorSponsorQrTitleV695'><button type='button' class='orbit-vendor-sponsor-qr-close-v695' data-sponsor-qr-close-v695 aria-label='Close'>\\xD7</button><p class='orbit-kicker'>Vendor Club TEST SANDBOX</p><h3 id='vendorSponsorQrTitleV695'>Open this test vendor on your phone</h3><p>This signed link expires in five minutes, is sandbox-scoped and cannot grant live Admin or live-commerce authority.</p><img src='\"+esc(data.qrDataUrl||\"\")+\"' alt='QR code for Vendor Club sponsorship sandbox'><div class='orbit-action-row'><a class='orbit-button' href='\"+esc(data.url||\"#\")+\"' target='_blank' rel='noopener'>Open on this device</a><button class='secondary' type='button' data-sponsor-qr-copy-v695>Copy link</button><button class='secondary orbit-danger-button' type='button' data-sponsor-qr-revoke-v695>Revoke</button></div><small>Expires \"+esc(prettyDate(data.expiresAt))+\"</small></div>\",document.body.appendChild(wrap),wrap.querySelector(\"[data-sponsor-qr-close-v695]\")?.addEventListener(\"click\",()=>wrap.remove()),wrap.addEventListener(\"click\",e=>{e.target===wrap&&wrap.remove()}),wrap.querySelector(\"[data-sponsor-qr-copy-v695]\")?.addEventListener(\"click\",async e=>{try{await navigator.clipboard.writeText(data.url),e.currentTarget.textContent=\"Copied\"}catch{prompt(\"Copy this sandbox link:\",data.url)}}),wrap.querySelector(\"[data-sponsor-qr-revoke-v695]\")?.addEventListener(\"click\",async e=>{if(confirm(\"Revoke this unused sponsorship sandbox link?\")){setLoading(e.currentTarget,!0);try{await api(\"/api/admin/vendors/club/mobile-impersonation/\"+encodeURIComponent(data.previewTokenId)+\"/revoke\",{method:\"POST\",body:\"{}\",cacheMs:0}),wrap.remove(),setNotice2(\"Sponsorship sandbox mobile link revoked.\")}finally{setLoading(e.currentTarget,!1)}}})}function setVendorSponsorshipAdminTabV698(tab){const selected=[\"overview\",\"events\",\"sponsors\",\"manual\"].includes(String(tab))?String(tab):\"overview\";document.querySelectorAll(\"[data-sponsor-admin-tab-v698]\").forEach(button2=>{const active=button2.dataset.sponsorAdminTabV698===selected;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active))}),document.querySelectorAll(\"[data-sponsor-admin-panel-v698]\").forEach(panel=>{panel.hidden=panel.dataset.sponsorAdminPanelV698!==selected}),state.vendorSponsorshipAdminTabV698=selected}function bindVendorSponsorshipAdminTabsV698(){document.querySelectorAll(\"[data-sponsor-admin-tab-v698]\").forEach(button2=>{button2.dataset.boundV698||(button2.dataset.boundV698=\"1\",button2.addEventListener(\"click\",()=>setVendorSponsorshipAdminTabV698(button2.dataset.sponsorAdminTabV698)))}),setVendorSponsorshipAdminTabV698(state.vendorSponsorshipAdminTabV698||\"overview\")}function bindVendorSponsorshipControlsV695(){document.querySelectorAll(\"[data-sponsor-event-settings-v695]\").forEach(form=>form.addEventListener(\"submit\",async e=>{e.preventDefault();const eventId=form.dataset.sponsorEventSettingsV695,fd=new FormData(form),button2=form.querySelector(\"button[type=submit]\");setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorship-events/\"+encodeURIComponent(eventId)+\"/settings\",{sponsorshipEnabled:form.querySelector(\"[name=sponsorshipEnabled]\").checked,headlineEnabled:form.querySelector(\"[name=headlineEnabled]\").checked,goldEnabled:form.querySelector(\"[name=goldEnabled]\").checked,assetDeadline:fd.get(\"assetDeadline\")}),await loadVendorSponsorshipsV695(),setNotice2(\"Sandbox sponsorship event controls saved.\")}finally{setLoading(button2,!1)}})),document.querySelectorAll(\"[data-sponsor-plan-toggle-v695]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{if(!(button2.dataset.unlocked!==\"1\"&&!confirm(\"Only continue after the final event floor plan has been completed and marked Ready for show. This opens the in-app Gold position selection for approved sandbox sponsors in booking order. No emails or SMS are sent. Continue?\"))){setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorship-events/\"+encodeURIComponent(button2.dataset.sponsorPlanToggleV695)+\"/gold-plan\",{unlocked:button2.dataset.unlocked!==\"1\"}),await loadVendorSponsorshipsV695()}finally{setLoading(button2,!1)}}})),document.querySelectorAll(\"[data-sponsor-approve-v695]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{if(confirm(\"Approve this TEST SANDBOX sponsorship? This will post only simulated points/ticket-preview state.\")){setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/\"+encodeURIComponent(button2.dataset.sponsorApproveV695)+\"/approve\"),await loadVendorSponsorshipsV695()}finally{setLoading(button2,!1)}}})),document.querySelectorAll(\"[data-sponsor-reject-v695]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{if(confirm(\"Reject and simulate a full refund of the sponsorship transaction? Existing test table bookings will stay untouched.\")){setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/\"+encodeURIComponent(button2.dataset.sponsorRejectV695)+\"/reject\"),await loadVendorSponsorshipsV695()}finally{setLoading(button2,!1)}}})),document.querySelectorAll(\"[data-sponsor-asset-save-v695]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const id=button2.dataset.sponsorAssetSaveV695,status=document.querySelector('[data-sponsor-asset-status-v695=\"'+CSS.escape(id)+'\"]')?.value||\"pending\",reason=document.querySelector('[data-sponsor-asset-reason-v695=\"'+CSS.escape(id)+'\"]')?.value||\"\";setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/\"+encodeURIComponent(id)+\"/assets-review\",{status,reason}),await loadVendorSponsorshipsV695()}finally{setLoading(button2,!1)}})),document.querySelectorAll(\"[data-sponsor-task-v695]\").forEach(input=>input.addEventListener(\"change\",async()=>{const[id,taskId]=String(input.dataset.sponsorTaskV695||\"\").split(\"|\");input.disabled=!0;try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/\"+encodeURIComponent(id)+\"/checklist\",{taskId,completed:input.checked}),await loadVendorSponsorshipsV695()}catch(error){input.checked=!input.checked,setNotice2(error.message||error,!0)}finally{input.disabled=!1}})),document.querySelectorAll(\"[data-sponsor-skip-v695]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const reason=prompt(\"Why are you skipping this Gold sponsor selection turn?\");if(reason){setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/\"+encodeURIComponent(button2.dataset.sponsorSkipV695)+\"/skip-selection\",{reason}),await loadVendorSponsorshipsV695()}finally{setLoading(button2,!1)}}})),document.querySelectorAll(\"[data-sponsor-placement-save-v695]\").forEach(button2=>button2.addEventListener(\"click\",async()=>{const id=button2.dataset.sponsorPlacementSaveV695,placement=document.querySelector('[data-sponsor-placement-v695=\"'+CSS.escape(id)+'\"]')?.value||\"\";setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/\"+encodeURIComponent(id)+\"/headline-placement\",{placement}),await loadVendorSponsorshipsV695()}finally{setLoading(button2,!1)}}))}function vendorClubLedgerTableV620(rows=[]){return rows.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>When</th><th>Points</th><th>Reason</th><th>Source</th></tr></thead><tbody>\"+rows.slice(0,100).map(x=>\"<tr><td>\"+esc(prettyDate(x.createdAt))+\"</td><td><strong>\"+(Number(x.deltaPoints||0)>0?\"+\":\"\")+Number(x.deltaPoints||0)+\"</strong></td><td>\"+esc(x.humanReadableReason||x.reasonCode||\"Vendor Club points\")+\"</td><td>\"+esc(String(x.sourceType||\"\").replace(/_/g,\" \"))+\"</td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p class='orbit-muted'>No points ledger entries yet.</p>\"}function vendorClubCustomerPanelV620(data,customer={}){if(!data?.admin)return\"\";const a=data.admin,p=data.profile||{},prefs=p.notificationPreferences||{},bookings=a.pointsBookings||[],account=a.accountState||{},suppression=a.suppression||{},suppressed=suppression.suppressed===!0,status=account.code||(p.clubStatus===\"active\"?\"active\":\"not_activated\"),statusLabel=account.label||(status===\"active\"?\"Activated\":\"Not activated\"),email=account.primaryEmail||data.vendor?.primaryEmail||data.vendor?.email||customer.email||\"Not recorded\",lastLogin=account.lastLoginAt?prettyDate(account.lastLoginAt):\"Never\",activatedAt=account.firstActivatedAt?prettyDate(account.firstActivatedAt):\"Not yet\",mobileVerified=account.mobileVerified===!0||p.mobileVerified===!0,accessPanel=\"<section class='orbit-vendor-club-account-state-v623 \"+(suppressed?\"is-suppressed-v624\":\"\")+\"'><div class='orbit-panel-header'><div><p class='orbit-kicker'>Vendor Club access</p><h4>\"+esc(statusLabel)+\"</h4>\"+(suppressed?\"<p class='orbit-vendor-do-not-contact-v624'><strong>DO NOT CONTACT</strong><span>Excluded from Vendor Club invitations, newsletters, new-show announcements and bulk marketing.</span></p>\":\"\")+\"</div><div class='orbit-action-row'>\"+vendorClubStatusPillV620(status,statusLabel)+\"<button type='button' class='secondary' data-vendor-club-preview-vendor-v6201='\"+esc(a.canonicalVendorId)+\"'>Log in as vendor</button><button type='button' class='secondary' data-vendor-club-mobile-v675='\"+esc(a.canonicalVendorId)+\"'>Mobile QR</button><button type='button' class='secondary' data-vendor-club-primary-email-v670='\"+esc(a.canonicalVendorId)+\"' data-current-email='\"+esc(email)+\"'>Change primary email</button><button type='button' class='secondary \"+(suppressed?\"\":\"orbit-danger-button\")+\"' data-vendor-club-suppression-v624='\"+esc(a.canonicalVendorId)+\"' data-suppressed='\"+(suppressed?\"1\":\"0\")+\"'>\"+(suppressed?\"Allow communications\":\"Exclude from communications\")+\"</button></div></div><div class='orbit-vendor-club-state-meta-v623'><span><small>Club email</small><strong>\"+esc(email)+\"</strong></span><span><small>Activated</small><strong>\"+esc(activatedAt)+\"</strong></span><span><small>Last login</small><strong>\"+esc(lastLogin)+\"</strong></span><span><small>Mobile</small><strong>\"+(mobileVerified?\"Verified\":\"Not verified\")+\"</strong></span></div>\"+(suppressed&&suppression.reason?\"<p class='orbit-muted'>Suppression reason: \"+esc(suppression.reason)+\"</p>\":\"\")+\"<p class='orbit-muted'>Log in as vendor opens an audited, interactive real account. Purchases affect real stock and balances. Use the separate Test Sandbox for isolated tests.</p></section>\",pointsPanel=\"<section class='orbit-panel orbit-vendor-club-profile-v620'><div class='orbit-panel-header'><div><p class='orbit-kicker'>Points &amp; Club activity</p><h4>\"+Number(data.summary?.pointsBalance||0)+\" points \\xB7 \\xA3\"+Number(data.summary?.pointsValueGbp||0)+\" booking value</h4></div></div><div class='orbit-vendor-customer-stats'><span><strong>\"+Number(a.lifetimeEarned||0)+\"</strong><small>Lifetime earned</small></span><span><strong>\"+Number(a.lifetimeRedeemed||0)+\"</strong><small>Redeemed</small></span><span><strong>\"+Number(a.launchFuturePoints||0)+\"</strong><small>Upcoming launch credit</small></span><span><strong>\"+(mobileVerified?\"Yes\":\"No\")+\"</strong><small>Mobile verified</small></span></div><p class='orbit-muted'>Notifications: booking updates \"+(prefs.bookingUpdates!==!1?\"on\":\"off\")+\" \\xB7 new show announcements \"+(prefs.newShowAnnouncements?\"on\":\"off\")+\" \\xB7 referral ticket sales \"+(prefs.referralTicketSales?\"on\":\"off\")+\".</p><div class='orbit-action-row'><button type='button' class='secondary' data-vendor-club-adjust-v620='add' data-customer-key='\"+esc(a.canonicalVendorId)+\"'>Add points</button><button type='button' class='secondary' data-vendor-club-adjust-v620='deduct' data-customer-key='\"+esc(a.canonicalVendorId)+\"'>Deduct points</button><button type='button' class='secondary' data-vendor-transfer-reward-audit-v783='1' data-customer-key='\"+esc(a.canonicalVendorId)+\"'>Audit transferred booking points</button></div><h4>Points-funded bookings</h4>\"+(bookings.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>Event</th><th>Tables</th><th>Spent</th><th>Status</th><th></th></tr></thead><tbody>\"+bookings.map(b=>\"<tr><td>\"+esc(b.eventLabel||b.eventKey||\"Event\")+\"</td><td>\"+Number(b.quantity||0)+\"</td><td>\"+Number(b.pointsDebited||0)+\"</td><td>\"+(b.active!==!1&&!b.cancelledAt?\"Active\":\"Cancelled\")+\"</td><td>\"+(b.active!==!1&&!b.cancelledAt?vendorManagedButtonsV639({...b,vendorClubBookingId:b.id}):\"<button type='button' class='secondary' data-vendor-booking-action-v639='details' data-booking-id='\"+esc(b.id)+\"'>History / return status</button>\")+\"</td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p class='orbit-muted'>No points-funded bookings.</p>\")+\"<h4>Points ledger</h4>\"+vendorClubLedgerTableV620(a.ledger||[])+\"</section>\",conversions=Array.isArray(a.referralConversions)?a.referralConversions:[],settled=conversions.filter(x=>x.status===\"settled\"),rewarded=settled.reduce((n,x)=>n+Number(x.totalRewardPoints??x.rewardPoints??0),0),reversed=conversions.reduce((n,x)=>n+Number(x.totalReversedRewardCount??x.reversedRewardCount??0),0),referralPanel=\"<section class='orbit-panel orbit-vendor-referral-audit-v716'><div class='orbit-panel-header'><div><p class='orbit-kicker'>Promote &amp; Earn audit</p><h4>\"+settled.length+\" attributed checkout\"+(settled.length===1?\"\":\"s\")+\" \\xB7 \"+rewarded+\" points awarded</h4><p>Traceable paid-ticket conversions for this canonical vendor. Rewards are idempotent and refunded tickets are reversed against the original ledger entry.</p></div></div><div class='orbit-vendor-customer-stats'><span><strong>\"+conversions.length+\"</strong><small>Checked out</small></span><span><strong>\"+settled.reduce((n,x)=>n+Number(x.eligiblePaidTicketCount||0),0)+\"</strong><small>Eligible tickets</small></span><span><strong>\"+rewarded+\"</strong><small>Points awarded</small></span><span><strong>\"+reversed+\"</strong><small>Rewards reversed</small></span></div>\"+(conversions.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>When</th><th>Event</th><th>Checkout / order</th><th>Attribution</th><th>Tickets</th><th>Points</th><th>Refund</th></tr></thead><tbody>\"+conversions.map(x=>\"<tr><td>\"+esc(prettyDate(x.settledAt||x.paidAt||x.updatedAt||x.createdAt))+\"</td><td>\"+esc(x.eventName||x.eventKey||x.eventbriteEventId||\"Event\")+\"</td><td><strong>\"+esc(x.checkoutId||\"\\u2014\")+\"</strong>\"+(x.shopifyOrderId?\"<br><small>\"+esc(x.shopifyOrderId)+\"</small>\":\"\")+\"</td><td>\"+esc(String(x.referralTokenMatched||x.reason||x.status||\"checked\").replace(/_/g,\" \"))+(x.referralClickId?\"<br><small>\"+(x.referralClickVerified?\"Verified click\":\"Legacy / unmatched click\")+\" \\xB7 \"+esc(x.referralClickId)+\"</small>\":\"<br><small>Legacy attribution</small>\")+\"</td><td>\"+Number(x.eligiblePaidTicketCount||0)+\"</td><td><strong>\"+(Number(x.totalRewardPoints??x.rewardPoints??0)>0?\"+\":\"\")+Number(x.totalRewardPoints??x.rewardPoints??0)+\"</strong></td><td>\"+esc(String(x.refundStatus||\"\\u2014\").replace(/_/g,\" \"))+(Number(x.totalReversedRewardCount??x.reversedRewardCount??0)?\"<br><small>\"+Number(x.totalReversedRewardCount??x.reversedRewardCount??0)+\" reversed</small>\":\"\")+\"</td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p class='orbit-muted'>No Promote &amp; Earn ticket conversions have been recorded for this vendor yet.</p>\")+\"</section>\",ra=a.referralAudit||{},review=Array.isArray(ra.rewards)?ra.rewards:[],referralEvidencePanel=\"<section class='orbit-panel'><div class='orbit-panel-header'><div><p class='orbit-kicker'>Historical referral evidence</p><h4>\"+(ra.unavailable?\"Evidence lookup unavailable\":review.length+\" historical reward\"+(review.length===1?\"\":\"s\")+\" \\xB7 \"+Number(ra.totalReferralRewardPoints||0)+\" points\")+\"</h4><p class='orbit-muted'>Read-only verification against saved click, attribution, order and reward records. Missing records require investigation, not automatic deductions.</p></div></div>\"+(ra.unavailable?\"<p class='orbit-muted'>The ledger is unchanged. Please retry later.</p>\":review.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>Issued</th><th>Points</th><th>Checkout</th><th>Order</th><th>Attribution</th><th>Click</th><th>Review</th></tr></thead><tbody>\"+review.map(r=>\"<tr><td>\"+esc(prettyDate(r.createdAt))+\"</td><td>+\"+Number(r.points||0)+\"</td><td>\"+esc(r.checkoutId||r.sourceReferenceId||\"Unrecorded\")+\"</td><td>\"+(r.orderPresent?\"Linked\":\"Not found\")+\"</td><td>\"+(r.conversionPresent?\"Linked\":\"Not found\")+\"</td><td>\"+(r.clickPresent?\"Linked\":\"Not found\")+\"</td><td>\"+esc(r.verdict===\"evidence_linked\"?\"Evidence linked\":(r.flags||[]).join(\", \").replace(/_/g,\" \").toLowerCase())+\"</td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p class='orbit-muted'>No historical positive referral reward entries found.</p>\")+\"<p class='orbit-muted'>Review required: \"+Number(ra.needsReview||0)+\" \\xB7 Linked evidence: \"+Number(ra.evidenceLinked||0)+\". No points, orders or credit were changed.</p></section>\";return accessPanel+pointsPanel+referralPanel+referralEvidencePanel}async function changeVendorClubPrimaryEmailV670(button2){const key=button2?.dataset?.vendorClubPrimaryEmailV670||state.currentVendorCustomerKey,current=button2?.dataset?.currentEmail||state.currentVendorClubData?.admin?.accountState?.primaryEmail||\"\";if(!key)return;const email=prompt(\"Enter the vendor\\u2019s new primary Vendor Club email address:\",current);if(email===null)return;const next=String(email||\"\").trim().toLowerCase();if(!/^\\S+@\\S+\\.\\S+$/.test(next))throw new Error(\"Enter a valid email address.\");const reason=prompt(\"Reason for changing the primary email (required):\",\"Vendor support request\");if(reason!==null){if(!String(reason).trim())throw new Error(\"A reason is required.\");if(confirm(\"Change this Vendor Club primary email to \"+next+\"? The existing account, bookings, points and history will be preserved. Existing live Vendor Club sessions will be signed out.\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/club/vendors/\"+encodeURIComponent(key)+\"/primary-email\",{method:\"POST\",body:JSON.stringify({email:next,reason:String(reason).trim()}),cacheMs:0,timeoutMs:2e4});return setNotice2(result.changed===!1?\"That email is already the primary Vendor Club email.\":\"Vendor Club primary email changed. The vendor can now sign in with the new address.\"),state.currentVendorCustomerKey===key&&await viewVendorCustomerV398(key),await loadVendorClubV620(),result}finally{setLoading(button2,!1)}}}}async function adjustVendorClubPointsV620(button2){const key=button2.dataset.customerKey,direction=button2.dataset.vendorClubAdjustV620,amount=Number(prompt((direction===\"deduct\"?\"Deduct\":\"Add\")+\" how many whole Vendor Club points?\",\"1\"));if(!Number.isInteger(amount)||amount<=0)return;const reason=prompt(\"Reason for this points adjustment (required):\",\"\");if(!reason?.trim())throw new Error(\"A reason is required.\");setLoading(button2,!0);try{await api(\"/api/admin/vendors/club/vendors/\"+encodeURIComponent(key)+\"/points\",{method:\"POST\",body:JSON.stringify({direction,amount,reason:reason.trim()}),cacheMs:0}),setNotice2(\"Vendor Club points adjusted with an audit entry.\"),state.currentVendorCustomerKey===key&&await viewVendorCustomerV398(key),await loadVendorClubV620()}finally{setLoading(button2,!1)}}async function auditVendorTransferRewardV783(button2){setLoading(button2,!0);try{const report=await api(\"/api/admin/vendors/club/transfer-reward-audit\",{cacheMs:0,timeoutMs:3e4}),key=button2.dataset.customerKey,all=Array.isArray(report.candidates)?report.candidates:[],mine=all.filter(x=>x.canonicalVendorId===key),outstanding=Array.isArray(report.review)?report.review.length:0;if(mine.length!==1){setNotice2(mine.length>1?\"Multiple corrections require separate review. No changes were made.\":\"Audit complete: \"+report.scanned+\" transfer records, \"+all.length+\" verified correction candidate(s), \"+outstanding+\" need review. No eligible correction for this vendor.\");return}if(report.candidateCount!==1){setNotice2(\"There are other verified candidates. Please reconcile them individually in a controlled release.\",!0);return}const item=mine[0],eventFrom=String(item.sourceEventKey||\"\").replace(/^event:[^|]*\\|/,\"\").replace(/\\|/g,\" \"),eventTo=String(item.destinationEventKey||\"\").replace(/^event:[^|]*\\|/,\"\").replace(/\\|/g,\" \");if(item.deltaPoints!==-5||!item.originalRewardId||!item.destinationRewardId)throw new Error(\"Unexpected reconciliation evidence; no points changed.\");const confirmText=\"REVERSE VERIFIED TRANSFER REWARD\",message=`VERIFIED TRANSFER REWARD CORRECTION\n\nOriginal `+eventFrom+` reward: -5 points\nReplacement `+eventTo+` reward: retained.\n\nThis will append an audited -5 reward reversal only. Credit, inventory and payments will not change.\n\nType `+confirmText+\" to confirm:\";if(prompt(message,\"\")!==confirmText){setNotice2(\"Transfer reward correction cancelled. No points changed.\");return}const response=await api(\"/api/admin/vendors/club/transfer-reward-reconcile\",{method:\"POST\",body:JSON.stringify({fingerprint:report.fingerprint,acknowledge:confirmText}),cacheMs:0,timeoutMs:4e4});if(response?.success!==!0||response?.pointsReversed!==5)throw new Error(\"Settlement was not confirmed. Refresh the audit before trying again.\");setNotice2(\"Verified transfer correction complete. Five historical reward points reversed with full audit trail; current points \"+Number(response.resultingBalance||0)+\".\"),state.currentVendorCustomerKey===key&&await viewVendorCustomerV398(key),await loadVendorClubV620()}finally{setLoading(button2,!1)}}async function cancelVendorClubBookingV620(button2){return openVendorBookingV639(button2.dataset.vendorClubCancelV620,\"cancel\")}function renderVendorClubLaunchStateV6201(v={}){const live=v.publicLaunchEnabled===!0,target=$2(\"vendorClubLaunchStateV6201\"),enable=$2(\"vendorClubEnableLaunchV6201\"),disable=$2(\"vendorClubDisableLaunchV6201\");target&&(target.className=\"orbit-vendor-club-statusline \"+(live?\"is-warning\":\"is-success\"),target.innerHTML=live?\"<strong>Automatic invitations enabled</strong><span>Eligible table bookings can send the approved Vendor Club welcome email. Disable this switch to stop automatic invitations.</span>\":\"<strong>Automatic invitations disabled</strong><span>The website, voluntary signup and normal login remain available. New table bookings cannot automatically send a Vendor Club invitation.</span>\"),enable&&(enable.hidden=live),disable&&(disable.hidden=!live)}function renderVendorClubPageStateV6202(v={}){const target=$2(\"vendorClubPageStateV6202\"),open=$2(\"openVendorClubPageV6202\"),exists=v.exists===!0,published=v.published===!0,verified=v.publicVerified===!0,url=v.url||\"https://orbitvendorclub.co.uk/\";target&&(target.className=\"orbit-vendor-club-statusline \"+(verified?\"is-success\":exists&&published?\"is-warning\":\"\"),target.innerHTML=verified?\"<strong>Render Vendor Club ready</strong><span>Public home, access, login and legal routes are served from orbitvendorclub.co.uk.</span>\":\"<strong>Render Vendor Club needs attention</strong><span>Recheck the standalone Vendor Club service before using Admin preview tools.</span>\"),open&&(open.href=url,open.hidden=!exists)}async function loadVendorClubPageV6202(){const data=await api(\"/api/admin/vendors/club/page\",{cacheMs:0,timeoutMs:3e4});return renderVendorClubPageStateV6202(data||{}),data}async function ensureVendorClubPageV6202(button2=null){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/page/ensure\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:45e3});return renderVendorClubPageStateV6202(data||{}),data?.url&&setNotice2(\"Vendor Club review page is ready at \"+data.url+\". The Club remains locked from normal vendors.\"),data}finally{button2&&setLoading(button2,!1)}}async function openVendorClubPreviewV6201(mode,canonicalVendorId=null,button2=null){const popup=window.open(\"about:blank\",\"_blank\");button2&&setLoading(button2,!0);try{const page=await api(\"/api/admin/vendors/club/page/ensure\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:45e3});if(renderVendorClubPageStateV6202(page||{}),!page?.url)throw new Error(\"Orbit could not prepare the standalone Vendor Club review page.\");const data=await api(\"/api/admin/vendors/club/preview-link\",{method:\"POST\",body:JSON.stringify({mode,canonicalVendorId}),cacheMs:0});if(!data?.url)throw new Error(\"Orbit did not return a Vendor Club preview URL.\");return popup?popup.location.href=data.url:window.open(data.url,\"_blank\",\"noopener\"),setNotice2(mode===\"vendor\"?\"Read-only Vendor Club preview opened. No vendor was emailed and no customer data can be changed.\":mode===\"sandbox\"?\"Interactive Test Vendor Sandbox opened. Test actions are isolated from live business state.\":\"Private Vendor Club preview opened. No vendor access was enabled.\"),data}catch(err){throw popup&&popup.close(),err}finally{button2&&setLoading(button2,!1)}}let vendorMobileQrEpochV71601=0;function closeVendorMobileQrV675(){vendorMobileQrEpochV71601++;const modal=$2(\"vendorMobileQrV675\");if(modal){try{modal.close()}catch{}modal.remove()}}function renderVendorMobileQrV675(data=null,{error=\"\",vendorId=\"\"}={}){let wrap=$2(\"vendorMobileQrV675\");if(!wrap){wrap=document.createElement(\"dialog\"),wrap.id=\"vendorMobileQrV675\",wrap.className=\"orbit-vendor-mobile-qr-v675\",wrap.setAttribute(\"aria-labelledby\",\"vendorMobileQrTitleV675\"),document.body.appendChild(wrap),wrap.addEventListener(\"cancel\",e=>{e.preventDefault(),closeVendorMobileQrV675()}),wrap.addEventListener(\"click\",e=>{e.target===wrap&&closeVendorMobileQrV675()});try{wrap.showModal()}catch{wrap.setAttribute(\"open\",\"\")}}const ready=!!(data?.url&&data?.qrDataUrl),expires=data?.expiresAt;return wrap.innerHTML=\"<section class='orbit-vendor-mobile-qr-card-v675'><button type='button' class='orbit-vendor-mobile-qr-close-v675' data-mobile-qr-close aria-label='Close'>\\xD7</button><p class='orbit-kicker'>Secure mobile impersonation</p><h3 id='vendorMobileQrTitleV675'>Open this vendor on your phone</h3>\"+(ready?\"<p class='orbit-muted'>Scan once with your phone camera. This audited Admin link expires in 5 minutes and cannot be reused after login.</p><div class='orbit-vendor-mobile-qr-image-v675'><img src='\"+esc(data.qrDataUrl)+\"' alt='QR code for secure Vendor Club mobile impersonation'></div><div class='orbit-vendor-mobile-qr-actions-v675'><a class='primary' href='\"+esc(data.url)+\"' target='_blank' rel='noopener noreferrer'>Open on this device</a><button type='button' class='secondary' data-mobile-qr-copy>Copy secure link</button><button type='button' class='secondary orbit-danger-button' data-mobile-qr-revoke>Revoke link</button></div><small>Expires \"+esc(prettyDate(expires))+\" \\xB7 ADMIN IMPERSONATION remains clearly labelled and audited.</small>\":error?\"<p class='orbit-error' role='alert' data-orbit-error>\"+esc(error)+\"</p><button type='button' class='secondary' data-mobile-qr-retry>Try again</button>\":\"<p role='status' aria-live='polite'>Creating your secure mobile QR\\u2026</p><p class='orbit-muted'>Normal vendor login is unchanged.</p>\")+\"</section>\",wrap.querySelector(\"[data-mobile-qr-close]\")?.addEventListener(\"click\",closeVendorMobileQrV675),wrap.querySelector(\"[data-mobile-qr-retry]\")?.addEventListener(\"click\",e=>openVendorMobileQrV675(vendorId,e.currentTarget).catch(()=>{})),wrap.querySelector(\"[data-mobile-qr-copy]\")?.addEventListener(\"click\",async e=>{const button2=e.currentTarget;try{await navigator.clipboard.writeText(data.url),button2.isConnected&&(button2.textContent=\"Copied\")}catch{prompt(\"Copy this secure mobile link:\",data.url)}}),wrap.querySelector(\"[data-mobile-qr-revoke]\")?.addEventListener(\"click\",async e=>{const button2=e.currentTarget;if(confirm(\"Revoke this unused mobile impersonation link?\")){setLoading(button2,!0);try{await api(\"/api/admin/vendors/club/mobile-impersonation/\"+encodeURIComponent(data.previewTokenId)+\"/revoke\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:15e3}),setNotice2(\"Mobile impersonation link revoked.\"),closeVendorMobileQrV675()}catch(error2){setNotice2(error2.message||\"The link could not be revoked. It still expires automatically.\",!0)}finally{button2.isConnected&&setLoading(button2,!1)}}}),wrap.querySelector(\"[data-mobile-qr-close]\")?.focus(),wrap}async function openVendorMobileQrV675(canonicalVendorId,button2=null){if(!canonicalVendorId)throw new Error(\"Choose a vendor first.\");const epoch=++vendorMobileQrEpochV71601;button2&&setLoading(button2,!0),renderVendorMobileQrV675(null,{vendorId:canonicalVendorId});try{const data=await api(\"/api/admin/vendors/club/mobile-impersonation\",{method:\"POST\",body:JSON.stringify({canonicalVendorId}),cacheMs:0,timeoutMs:2e4});if(epoch!==vendorMobileQrEpochV71601||!$2(\"vendorMobileQrV675\"))return data;if(!data?.url||!/^data:image\\/png;base64,/.test(String(data.qrDataUrl||\"\")))throw new Error(\"Orbit could not create the secure mobile QR. Please try again.\");return renderVendorMobileQrV675(data,{vendorId:canonicalVendorId}),data}catch(error){throw epoch===vendorMobileQrEpochV71601&&$2(\"vendorMobileQrV675\")&&renderVendorMobileQrV675(null,{error:error.message||\"The mobile QR could not be created.\",vendorId:canonicalVendorId}),error}finally{button2?.isConnected&&setLoading(button2,!1)}}async function loadVendorClubPreviewVendorsV623(){const select=$2(\"vendorClubPreviewVendorV623\");if(!select)return null;const data=await api(\"/api/admin/vendors/club/preview-vendors\",{cacheMs:0,timeoutMs:15e3}),rows=data.rows||[],current=select.value;return select.innerHTML=\"<option value=''>Choose a Vendor Club account</option>\"+rows.map(row=>\"<option value='\"+esc(row.canonicalVendorId)+\"'>\"+esc(row.vendor||row.email||\"Orbit Vendor\")+\" \\xB7 \"+esc(row.statusLabel||row.status||\"Not activated\")+\"</option>\").join(\"\"),current&&rows.some(row=>row.canonicalVendorId===current)&&(select.value=current),data}async function previewSelectedVendorClubV623(button2){const key=$2(\"vendorClubPreviewVendorV623\")?.value;if(!key)throw new Error(\"Choose a vendor to preview first.\");return openVendorClubPreviewV6201(\"vendor\",key,button2)}async function openVendorClubSandboxV624(button2){return openVendorClubPreviewV6201(\"sandbox\",null,button2)}async function resetVendorClubSandboxV624(button2){if(confirm(\"Reset the Test Vendor Sandbox to a clean first-login state? This resets only synthetic test data and never touches a real Vendor account.\")){setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/sandbox/reset\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:2e4}),result=$2(\"vendorClubSandboxResultV624\");return result&&(result.hidden=!1,result.textContent=\"Test Vendor reset to 100 test points and a clean onboarding state.\"),setNotice2(\"Test Vendor Sandbox reset. Live Vendor data and Shopify inventory were not changed.\"),data}finally{setLoading(button2,!1)}}}async function setVendorCommunicationSuppressionV624(button2){const key=button2.dataset.vendorClubSuppressionV624,current=button2.dataset.suppressed===\"1\",next=!current;if(!key)return;let reason=\"\";if(next){if(reason=prompt(\"Optional internal reason for excluding this vendor from Vendor Club invitations, newsletters and bulk marketing:\",\"\")||\"\",!confirm(\"Exclude this vendor from all Vendor marketing and launch communications? Transactional/security messages remain separate.\"))return}else if(!confirm(\"Allow this vendor to receive future Vendor marketing and Vendor Club launch communications again?\"))return;setLoading(button2,!0);try{await api(\"/api/admin/vendors/club/vendors/\"+encodeURIComponent(key)+\"/communication-suppression\",{method:\"POST\",body:JSON.stringify({suppressed:next,reason}),cacheMs:0,timeoutMs:15e3}),setNotice2(next?\"Vendor marked DO NOT CONTACT for marketing and launch communications.\":\"Vendor communication suppression removed.\"),await Promise.all([viewVendorCustomerV398(key),loadVendorClubStatusMapV624()])}finally{setLoading(button2,!1)}}async function setVendorClubLaunchStateV6201(enabled,button2){let confirmation=\"\";if(enabled){if(confirmation=prompt(\"Automatic Vendor Club invitations are currently disabled. Type GO LIVE to allow confirmed eligible bookings to send the approved welcome email.\",\"\"),String(confirmation||\"\").trim().toUpperCase()!==\"GO LIVE\")return}else if(!confirm(\"Disable automatic Vendor Club invitations now? Public signup/login will remain available and no existing normal session will be revoked.\"))return;setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/launch-state\",{method:\"POST\",body:JSON.stringify({enabled,confirmation}),cacheMs:0});renderVendorClubLaunchStateV6201(data.launch||{});const r=$2(\"vendorClubLaunchResultV6201\");return r&&(r.hidden=!1,r.textContent=enabled?\"Automatic Vendor Club invitations are enabled.\":\"Automatic Vendor Club invitations are disabled. Public signup/login remain available.\"),setNotice2(enabled?\"Automatic Vendor Club invitations authorised.\":\"Automatic Vendor Club invitations disabled.\"),data}finally{setLoading(button2,!1)}}let vendorReminderPreviewV642=null,vendorReminderEpochV642=0,vendorReminderPollV642=null,vendorReminderBusyV642=!1,vendorReminderStateV642=null;function reminderNoticeV642(text2){const n=$2(\"vendorReminderNoticeV642\");n&&(n.textContent=text2)}function drawVendorReminderStatusV642(data){vendorReminderStateV642=data;const b=data.batch,c=data.counts||{},target=$2(\"vendorReminderStatusV642\");target.innerHTML=b?\"<p><strong>Reminder \"+esc(b.status.replace(/_/g,\" \"))+\"</strong> \\xB7 \"+Number(b.total||0)+\" approved \\xB7 \"+Number(c.accepted||0)+\" accepted \\xB7 \"+Number((c.queued||0)+(c.sending||0)+(c.retry||0))+\" pending \\xB7 \"+Number(c.skipped||0)+\" skipped \\xB7 \"+Number(c.needs_review||0)+\" need review</p><details><summary>Reminder recipient history</summary>\"+(data.rows||[]).map(r=>\"<p>\"+esc(r.to)+\" \\xB7 \"+esc(r.status.replace(/_/g,\" \"))+(r.providerId?\" \\xB7 \"+esc(r.providerId):\"\")+(r.errorCode?\" \\xB7 \"+esc(r.errorCode.replace(/_/g,\" \").toLowerCase()):\"\")+\"</p>\").join(\"\")+\"</details>\":\"<p>No reminder has been authorised.</p>\";const pause=$2(\"vendorReminderPauseV642\");pause.hidden=!b||![\"running\",\"paused\"].includes(b.status),pause.textContent=b?.status===\"paused\"?\"Resume approved reminder\":\"Pause reminder\",b&&($2(\"vendorReminderReviewV642\").hidden=!0,$2(\"vendorReminderPreviewV642\").disabled=!0),clearTimeout(vendorReminderPollV642),b?.status===\"running\"&&vendorSettingsSectionV641===\"archive\"&&(vendorReminderPollV642=setTimeout(()=>{!$2(\"vendorSettingsPanelV641-archive\")?.hidden&&!document.querySelector('[data-vendor-pane=\"club-settings\"]')?.hidden&&loadVendorReminderStatusV642().catch(()=>{})},5e3))}async function loadVendorReminderStatusV642(){const data=await api(\"/api/admin/vendors/club/reminder/status\",{cacheMs:0,timeoutMs:15e3});return drawVendorReminderStatusV642(data),data}async function loadVendorReminderPreviewV642(){const epoch=++vendorReminderEpochV642;vendorReminderPreviewV642=null,$2(\"vendorReminderApproveV642\").checked=!1,$2(\"vendorReminderSendV642\").disabled=!0,$2(\"vendorReminderReviewV642\").hidden=!0,reminderNoticeV642(\"Checking original recipients against current signup and eligibility. No messages are being sent.\");const p=await api(\"/api/admin/vendors/club/reminder/preview\",{cacheMs:0,timeoutMs:3e4});if(epoch===vendorReminderEpochV642){if(p.existing){await loadVendorReminderStatusV642(),reminderNoticeV642(\"A reminder has already been authorised. Its saved history is shown below.\");return}vendorReminderPreviewV642=p,$2(\"vendorReminderReviewV642\").hidden=!1,$2(\"vendorReminderSummaryV642\").textContent=Number(p.total||0)+\" eligible non-signups from \"+Number(p.originalFrozen||0)+\" original launch recipients. \"+(p.excluded||[]).length+\" excluded. Everyone is checked again immediately before sending.\",$2(\"vendorReminderAudienceV642\").innerHTML=\"<h4>Would receive this reminder</h4>\"+((p.rows||[]).map(r=>\"<p>\"+esc(r.businessName||r.greetingName||\"Vendor\")+\" \\xB7 \"+esc(r.email)+\"</p>\").join(\"\")||\"<p>No eligible recipients.</p>\")+\"<h4>Excluded</h4>\"+(p.excluded||[]).map(r=>\"<p>\"+esc(r.to||\"Vendor\")+\" \\xB7 \"+esc(r.reason.replace(/_/g,\" \"))+\"</p>\").join(\"\"),$2(\"vendorReminderSubjectV642\").textContent=p.preview?.subject||\"No message to preview\",$2(\"vendorReminderMessageV642\").srcdoc=p.preview?.html||\"<p>No eligible recipient to preview.</p>\",$2(\"vendorReminderApproveV642\").disabled=!p.canAuthorise,reminderNoticeV642(p.canAuthorise?\"Preview ready. Review the audience and message before approving this separate reminder.\":\"No reminder can be authorised from this preview. Nothing has been sent.\")}}async function sendVendorReminderV642(){const p=vendorReminderPreviewV642;if(!(vendorReminderBusyV642||!p?.canAuthorise||!$2(\"vendorReminderApproveV642\")?.checked)&&confirm(\"Send ONE separate reminder to these \"+p.total+\" vendors who have not joined? This sends real email. The original launch will not be repeated.\")){vendorReminderBusyV642=!0,$2(\"vendorReminderSendV642\").disabled=!0,reminderNoticeV642(\"Saving your explicit approval for this one reminder\\u2026\");try{const result=await api(\"/api/admin/vendors/club/reminder/send\",{method:\"POST\",body:JSON.stringify({confirmed:!0,permissionConfirmed:!0,reviewedTemplate:!0,fingerprint:p.fingerprint,expectedCount:p.total}),cacheMs:0,timeoutMs:3e4});drawVendorReminderStatusV642(result),reminderNoticeV642(\"Your separate reminder is authorised. Signup and suppression checks run again before each email.\")}catch(e){$2(\"vendorReminderApproveV642\").checked=!1,reminderNoticeV642(\"Could not confirm the outcome. Refresh reminder status before doing anything else. \"+e.message),await loadVendorReminderStatusV642().catch(()=>{})}finally{vendorReminderBusyV642=!1}}}const vendorCampaignStateV676={};function campaignElV676(attr,key){return document.querySelector(\"[\"+attr+'=\"'+CSS.escape(key)+'\"]')}let vendorCampaignPollV71601=null,vendorCampaignReadV71601=null,vendorCampaignFailuresV71601=0;function campaignStatusTextV676(status={}){const c=status.campaign,counts=status.counts||{};if(!c)return\"<strong>Not sent</strong><span>No live campaign has been authorised.</span>\";const accepted=Number(counts.accepted||0),review=Number(counts.needs_review||0),remaining=(c.status===\"preparing\"?Math.max(0,Number(c.total||0)-Number(c.preparedCount||0)):0)+Number(counts.queued||0)+Number(counts.retry||0)+Number(counts.sending||0);return\"<strong>\"+esc(String(c.status||\"campaign\").replace(/_/g,\" \"))+\" \\xB7 \"+accepted+\" accepted</strong><span>\"+remaining+\" remaining \\xB7 \"+review+\" need review \\xB7 \"+Number(counts.failed||0)+\" failed \\xB7 \"+Number(counts.skipped||0)+\" skipped \\xB7 \"+Number(c.total||0)+\" frozen recipients</span>\"+(c.lastError?'<span class=\"orbit-error\" data-orbit-error>'+esc(c.lastError)+\"</span>\":\"\")+\"<small>Accepted means the provider accepted the email, not confirmed delivery. \"+(status.checkedAt?\"Updated \"+esc(new Date(status.checkedAt).toLocaleTimeString(\"en-GB\"))+\".\":\"\")+\"</small>\"}function campaignPanelVisibleV71601(){return!document.hidden&&[...document.querySelectorAll(\"[data-campaign-status-v676]\")].some(el=>el.getClientRects().length>0)}function scheduleVendorCampaignPollV71601(){clearTimeout(vendorCampaignPollV71601),!(!Object.values(vendorCampaignStateV676).some(v=>v.launchUnknown||[\"preparing\",\"running\"].includes(v.status?.campaign?.status))||!campaignPanelVisibleV71601())&&(vendorCampaignPollV71601=setTimeout(()=>loadVendorCampaignStatusesV676().catch(()=>{}),Math.min(3e4,4e3*Math.pow(2,Math.min(vendorCampaignFailuresV71601,3)))))}function drawVendorCampaignStatusV676(key,status){const state2=vendorCampaignStateV676[key]||(vendorCampaignStateV676[key]={});state2.status=status,status?.campaign&&(state2.launchUnknown=!1);const el=campaignElV676(\"data-campaign-status-v676\",key);el&&(el.className=\"orbit-vendor-campaign-status-v676 \"+(status?.campaign?.status===\"completed\"?\"is-complete\":status?.campaign?\"is-live\":\"\"),el.setAttribute(\"aria-live\",\"polite\"),el.innerHTML=campaignStatusTextV676(status||{}));const pause=campaignElV676(\"data-campaign-pause-v676\",key);pause&&(pause.hidden=![\"preparing\",\"running\",\"paused\"].includes(status?.campaign?.status),pause.textContent=status?.campaign?.status===\"paused\"?\"Resume campaign\":\"Pause campaign\",pause.dataset.paused=String(status?.campaign?.status===\"paused\")),updateVendorCampaignSendStateV676(key),scheduleVendorCampaignPollV71601()}async function loadVendorCampaignStatusesV676(){return vendorCampaignReadV71601||(vendorCampaignReadV71601=(async()=>{try{const data=await api(\"/api/admin/vendors/club/campaigns?summary=1\",{cacheMs:0,timeoutMs:2e4});vendorCampaignFailuresV71601=0;for(const status of data.statuses||[])drawVendorCampaignStatusV676(status.key,{...status,checkedAt:new Date().toISOString()});return data}catch(error){vendorCampaignFailuresV71601++;for(const[key,state2]of Object.entries(vendorCampaignStateV676)){const el=campaignElV676(\"data-campaign-status-v676\",key);if(el&&!el.querySelector(\"[data-campaign-refresh-error]\")){const note=document.createElement(\"p\");note.dataset.campaignRefreshError=\"1\",note.dataset.orbitError=\"\",note.textContent=\"Progress could not be refreshed. The saved campaign has not been restarted. Retrying automatically.\",el.appendChild(note)}}throw error}finally{vendorCampaignReadV71601=null,scheduleVendorCampaignPollV71601()}})(),vendorCampaignReadV71601)}document.addEventListener(\"visibilitychange\",()=>{document.hidden?clearTimeout(vendorCampaignPollV71601):campaignPanelVisibleV71601()&&loadVendorCampaignStatusesV676().catch(()=>{})}),window.addEventListener(\"focus\",()=>{campaignPanelVisibleV71601()&&loadVendorCampaignStatusesV676().catch(()=>{})});function campaignExclusionLabelV676(reason){return{exclude_from_communications:\"Excluded from communications\",marketing_opt_out:\"Marketing opt-out / unsubscribe\",campaign_1_priority:\"Campaign 1 recipient \\u2014 excluded from Campaign 2\",duplicate_email_deduped:\"Duplicate email deduped\",missing_valid_email:\"No valid primary email\",removed_or_merged:\"Removed / merged vendor\",sandbox:\"Test/sandbox account\",already_activated:\"Vendor Club already activated\",no_points_waiting:\"No Vendor Points waiting\"}[reason]||String(reason||\"Excluded\").replace(/_/g,\" \")}function drawVendorCampaignPreviewV676(key,p){const state2=vendorCampaignStateV676[key]||(vendorCampaignStateV676[key]={});state2.preview=p,state2.testId=null;const review=campaignElV676(\"data-campaign-review-v676\",key);review&&(review.hidden=!1);const set=(attr,value)=>{const el=campaignElV676(attr,key);el&&(el.textContent=value)};set(\"data-campaign-count-v676\",Number(p.total||0).toLocaleString(\"en-GB\")),set(\"data-campaign-subject-v676\",p.template?.subject||\"No eligible recipient example\"),set(\"data-campaign-from-v676\",p.template?.from||\"\\u2014\"),set(\"data-campaign-reply-v676\",p.template?.replyTo||\"\\u2014\");const frame=campaignElV676(\"data-campaign-iframe-v676\",key);frame&&(frame.srcdoc=p.template?.html||\"<p>No eligible recipient example.</p>\");const audience=campaignElV676(\"data-campaign-audience-v676\",key);if(audience){const inc=(p.rows||[]).slice(0,500),exc=Object.entries(p.exclusionCounts||{});audience.innerHTML=\"<p><strong>\"+Number(p.total||0).toLocaleString(\"en-GB\")+\" included</strong> \\xB7 audience fingerprint \"+esc(String(p.fingerprint||\"\").slice(0,12))+\"\\u2026</p>\"+(inc.length?'<div class=\"orbit-vendor-campaign-audience-list-v676\">'+inc.map(r=>\"<p><strong>\"+esc(r.businessName||r.greetingName||\"Vendor\")+\"</strong><span>\"+esc(r.email)+\" \\xB7 \"+esc(r.inclusionReason===\"future_booking_not_activated\"?\"Forward booking \\xB7 Vendor Club not activated\":r.activated?\"Existing Vendor Club member \\xB7 feature update\":\"Eligible vendor \\xB7 win-back\")+(r.points?\" \\xB7 \"+Number(r.points)+\" points\":\"\")+\"</span></p>\").join(\"\")+\"</div>\":\"<p>No eligible recipients.</p>\")+(p.rows?.length>500?'<p class=\"orbit-muted\">Showing the first 500 of '+Number(p.rows.length).toLocaleString(\"en-GB\")+\" recipients.</p>\":\"\")+\"<h5>Exclusions</h5>\"+(exc.length?exc.map(([reason,n])=>\"<p>\"+Number(n).toLocaleString(\"en-GB\")+\" \\xB7 \"+esc(campaignExclusionLabelV676(reason))+\"</p>\").join(\"\"):\"<p>No exclusions.</p>\")}const testStatus=campaignElV676(\"data-campaign-test-status-v676\",key);testStatus&&(testStatus.textContent=\"Preview refreshed. Send yourself a fresh TEST of this exact template before live sending.\");const reviewed=campaignElV676(\"data-campaign-reviewed-v676\",key);reviewed&&(reviewed.checked=!1);const confirmation=campaignElV676(\"data-campaign-confirmation-v676\",key);confirmation&&(confirmation.value=\"\"),updateVendorCampaignSendStateV676(key)}function updateVendorCampaignSendStateV676(key){const state2=vendorCampaignStateV676[key]||{},reviewed=campaignElV676(\"data-campaign-reviewed-v676\",key)?.checked===!0,confirmation=String(campaignElV676(\"data-campaign-confirmation-v676\",key)?.value||\"\").trim(),send=campaignElV676(\"data-campaign-send-v676\",key),required=state2.preview?.definition?.confirmation||\"\";send&&(send.disabled=!!state2.status?.campaign||state2.sending===!0||state2.launchUnknown===!0||!state2.preview?.total||!state2.testId||!reviewed||confirmation!==required)}async function previewVendorCampaignV676(key,button2=null){button2&&setLoading(button2,!0);try{const p=await api(\"/api/admin/vendors/club/campaigns/\"+encodeURIComponent(key)+\"/preview\",{cacheMs:0,timeoutMs:3e4});return drawVendorCampaignPreviewV676(key,p),drawVendorCampaignStatusV676(key,p.status||{}),p}finally{button2&&setLoading(button2,!1)}}async function testVendorCampaignV676(key,button2=null){const state2=vendorCampaignStateV676[key]||{},p=state2.preview;if(!p)throw new Error(\"Preview the final audience and email first.\");const to=String(campaignElV676(\"data-campaign-test-email-v676\",key)?.value||\"\").trim();if(!to)throw new Error(\"Enter the authorised email address that should receive this TEST.\");button2&&setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/club/campaigns/\"+encodeURIComponent(key)+\"/test\",{method:\"POST\",body:JSON.stringify({vendorId:p.selectedId,to,requestId:\"test_\"+crypto.randomUUID(),testRecipientConfirmed:!0}),cacheMs:0,timeoutMs:3e4});state2.testId=result.testId;const status=campaignElV676(\"data-campaign-test-status-v676\",key);return status&&(status.innerHTML=\"<strong>TEST accepted by provider.</strong> \"+esc(to)+\" \\xB7 provider \"+esc(result.providerId||\"accepted\")+\". This does not count as a live recipient.\"),updateVendorCampaignSendStateV676(key),result}finally{button2&&setLoading(button2,!1)}}async function sendVendorCampaignV676(key,button2=null){const state2=vendorCampaignStateV676[key]||{},p=state2.preview;if(state2.sending||state2.status?.campaign||state2.launchUnknown)return;if(!p||!state2.testId)throw new Error(\"Preview the audience and send a TEST first.\");const confirmation=String(campaignElV676(\"data-campaign-confirmation-v676\",key)?.value||\"\").trim();if(confirmation!==p.definition?.confirmation)throw new Error(\"Type the exact final confirmation shown in the field.\");if(campaignElV676(\"data-campaign-reviewed-v676\",key)?.checked!==!0)throw new Error(\"Confirm that you reviewed the audience, exclusions and TEST email.\");if(confirm(\"FINAL LIVE SEND: send \"+Number(p.total||0).toLocaleString(\"en-GB\")+\" real emails for \\u201C\"+(p.definition?.name||key)+\"\\u201D? This will contact the frozen eligible audience shown in the preview.\")){state2.sending=!0,button2&&setLoading(button2,!0),updateVendorCampaignSendStateV676(key);try{const result=await api(\"/api/admin/vendors/club/campaigns/\"+encodeURIComponent(key)+\"/send\",{method:\"POST\",body:JSON.stringify({fingerprint:p.fingerprint,expectedCount:p.total,testId:state2.testId,confirmation,permissionConfirmed:!0,testReviewed:!0}),cacheMs:0,timeoutMs:3e4});return drawVendorCampaignStatusV676(key,{...result,checkedAt:new Date().toISOString()}),setNotice2(\"Vendor campaign saved. Preparation and delivery progress will update automatically.\"),result}catch(error){state2.launchUnknown=!0;try{const actual=await api(\"/api/admin/vendors/club/campaigns/\"+encodeURIComponent(key)+\"/status?summary=1\",{cacheMs:0,timeoutMs:15e3});if(actual?.campaign)return drawVendorCampaignStatusV676(key,{...actual,checkedAt:new Date().toISOString()}),setNotice2(\"The campaign was saved successfully. Its progress will update automatically; no repeat send was made.\"),actual;state2.launchUnknown=!1}catch{}const el=campaignElV676(\"data-campaign-status-v676\",key);throw el&&(el.innerHTML=\"<strong data-orbit-error>Campaign launch confirmation unavailable</strong><span>Checking the saved campaign automatically. Do not send it again while its state is unknown.</span>\"),setNotice2(state2.launchUnknown?\"The connection ended before launch was confirmed. Orbit is checking saved status; do not send again.\":error.message,!0),scheduleVendorCampaignPollV71601(),error}finally{state2.sending=!1,button2?.isConnected&&setLoading(button2,!1),updateVendorCampaignSendStateV676(key),scheduleVendorCampaignPollV71601()}}}async function pauseVendorCampaignV676(key,button2=null){const state2=vendorCampaignStateV676[key]||{},paused=state2.status?.campaign?.status!==\"paused\";if(!(!paused&&!confirm(\"Resume the already-approved frozen campaign? Recipient eligibility is still rechecked before each email.\"))){button2&&setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/club/campaigns/\"+encodeURIComponent(key)+\"/pause\",{method:\"POST\",body:JSON.stringify({paused}),cacheMs:0});return state2.status=result,drawVendorCampaignStatusV676(key,result),result}finally{button2&&setLoading(button2,!1)}}}const smsCampaignV681={data:null,campaign:null,preview:null,poll:null,testRequest:null};async function smsRequestV681(path=\"\",method=\"GET\",body){return api(\"/api/admin/vendors/club/sms-campaigns\"+path,{method,body:body?JSON.stringify(body):void 0,cacheMs:0,timeoutMs:6e4})}function smsNoteV681(message,error=!1){const el=$2(\"smsCampaignNoticeV681\");el&&(el.textContent=message,el.classList.toggle(\"is-error\",error))}function smsMoneyV681(n,currency){return Number.isFinite(n)&&currency?new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency}).format(n):\"Unavailable\"}function smsCountsV681(data){const c=data?.counts;if(!c)return;const root=$2(\"smsAudienceV681\");root&&(root.innerHTML=`<div class=\"sms-metrics\"><div><strong>${c.subscribers}</strong><span>Subscribed accounts</span></div><div><strong>${c.uniqueDestinations}</strong><span>Eligible unique phones</span></div><div><strong>${c.excluded}</strong><span>Excluded accounts</span></div></div><details><summary>Why accounts are excluded</summary>${Object.entries(data.exclusions||{}).map(([k,n])=>`<p>${n} \\xB7 ${esc(k)}</p>`).join(\"\")}</details><p class=\"sms-muted\">Only subscribers to new-show announcements with a verified UK mobile and no contact exclusion. Shared phone numbers receive one message.</p>`)}function smsAccountV681(account){const el=$2(\"smsCreditV681\");el&&(el.innerHTML=`<strong class=\"sms-credit-amount\">${account?.balance?smsMoneyV681(account.balance.balance,account.balance.currency):\"Not available yet\"}</strong><span>SMS account credit</span><p class=\"sms-muted\">${account?.checkedAt?\"Last checked \"+esc(new Date(account.checkedAt).toLocaleString(\"en-GB\")):\"Use Refresh credit & pricing. No balance is assumed.\"}</p>${account?.balanceError?`<p class=\"sms-error\">${esc(account.balanceError)}</p>`:\"\"}${account?.pricing?`<p class=\"sms-muted\">UK segment estimate: ${smsMoneyV681(account.pricing.minimumPerSegment,account.pricing.currency)}\\u2013${smsMoneyV681(account.pricing.maximumPerSegment,account.pricing.currency)}. Charges depend on network and message length.</p>`:\"\"}${account?.pricingError?`<p class=\"sms-error\">${esc(account.pricingError)}</p>`:\"\"}`)}function smsCampaignEditorV681(c=null){smsCampaignV681.campaign=c,smsCampaignV681.preview=null,smsCampaignV681.testRequest=null,$2(\"smsTitleV681\").value=c?.title||\"\",$2(\"smsBodyV681\").value=c?.body||\"\",document.querySelectorAll(\"[data-sms-event-v681]\").forEach(x=>x.checked=(c?.draftIds||[]).includes(x.value));const frozen=c&&![\"draft\",\"review\"].includes(c.state);[\"smsTitleV681\",\"smsBodyV681\",\"smsSaveV681\",\"smsPreviewV681\"].forEach(id=>$2(id).disabled=!!frozen),document.querySelectorAll(\"[data-sms-event-v681]\").forEach(x=>x.disabled=!!frozen),$2(\"smsReviewV681\").hidden=!0,$2(\"smsEditorStatusV681\").textContent=c?`${c.title} \\xB7 ${c.state} \\xB7 revision ${c.revision}`:\"New message \\xB7 nothing is scheduled\",smsBodyCountV681()}function smsBodyCountV681(){const text2=$2(\"smsBodyV681\")?.value||\"\";$2(\"smsLengthV681\").textContent=text2.length+\" typed characters. Preview calculates the exact segments after personalisation and the SMS-settings link.\"}function smsHistoryV681(rows){const el=$2(\"smsHistoryV681\");el.innerHTML=rows.length?rows.map(c=>`<article class=\"sms-history-card\"><div><strong>${esc(c.title)}</strong><span>${esc(c.state)} \\xB7 ${c.recipientCount||0} phones</span>${c.progress?`<small>${c.progress.accepted||0} accepted \\xB7 ${c.progress.delivered||0} delivered \\xB7 ${c.progress.failed||0} failed \\xB7 ${c.progress.unknown||0} uncertain \\xB7 ${c.progress.remaining||0} remaining</small>`:\"\"}${c.lastError?`<p class=\"sms-error\">${esc(c.lastError)}</p>`:\"\"}</div><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-sms-open-v681=\"${esc(c._id)}\">${[\"draft\",\"review\"].includes(c.state)?\"Open draft\":\"View message\"}</button>${[\"queued\",\"sending\"].includes(c.state)?`<button type=\"button\" class=\"secondary\" data-sms-pause-v681=\"${esc(c._id)}\">Pause</button>`:\"\"}${c.state===\"paused\"?`<button type=\"button\" class=\"secondary\" data-sms-resume-v681=\"${esc(c._id)}\">Resume approved campaign</button>`:\"\"}${[\"draft\",\"review\"].includes(c.state)?\"\":`<button type=\"button\" class=\"secondary\" data-sms-receipts-v681=\"${esc(c._id)}\">Check delivery</button>`}</div></article>`).join(\"\"):'<p class=\"sms-muted\">No manual SMS campaigns yet. Publishing events never creates one.</p>'}async function smsRunV681(button2,fn){button2&&setLoading(button2,!0);try{return await fn()}catch(e){throw smsNoteV681(e.message,!0),e}finally{button2&&setLoading(button2,!1)}}async function smsSaveV681(){const d={id:smsCampaignV681.campaign?._id,revision:smsCampaignV681.campaign?.revision,title:$2(\"smsTitleV681\").value,body:$2(\"smsBodyV681\").value,draftIds:[...document.querySelectorAll(\"[data-sms-event-v681]:checked\")].map(x=>x.value)},r=await smsRequestV681(\"\",\"POST\",d);return smsCampaignEditorV681(r.campaign),smsNoteV681(\"Draft saved. No text has been sent.\"),await smsRefreshHistoryV681(),r.campaign}async function smsRefreshHistoryV681(){const data=await smsRequestV681();smsCampaignV681.data=data,smsHistoryV681(data.campaigns||[]),smsAccountV681(data.account),clearTimeout(smsCampaignV681.poll),(data.campaigns||[]).some(c=>[\"queued\",\"sending\"].includes(c.state))&&(smsCampaignV681.poll=setTimeout(()=>{vendorSettingsSectionV641===\"sms\"&&smsRefreshHistoryV681().catch(e=>smsNoteV681(e.message,!0))},5e3))}function smsSendReadyV681(){const p=smsCampaignV681.preview;$2(\"smsSendV681\").disabled=!(p?.sendReady&&$2(\"smsConsentV681\").checked&&$2(\"smsConfirmV681\").value.trim()===\"SEND CAMPAIGN\")}function smsReviewV681(p){smsCampaignV681.preview=p,smsCampaignV681.campaign=p.campaign;const estimate=p.estimate,cost=estimate.cost;smsCountsV681(p),$2(\"smsReviewV681\").hidden=!1,$2(\"smsConsentV681\").checked=!1,$2(\"smsConfirmV681\").value=\"\",$2(\"smsRenderedV681\").innerHTML=p.samples.length?p.samples.map(x=>`<article class=\"sms-phone-preview\"><strong>${esc(x.name)} \\xB7 ${esc(x.phoneMasked)}</strong><pre>${esc(x.text)}</pre><small>${x.characters} characters \\xB7 ${x.segments} segment${x.segments===1?\"\":\"s\"} \\xB7 ${esc(x.encoding)}</small></article>`).join(\"\"):\"<p>No eligible subscribers.</p>\",$2(\"smsQuoteV681\").innerHTML=`<strong>${estimate.destinations} texts \\xB7 ${estimate.totalSegments} SMS segments</strong><p>Estimated campaign cost: <strong>${cost?smsMoneyV681(cost.minimum,cost.currency)+\" to \"+smsMoneyV681(cost.maximum,cost.currency):\"Unavailable \\u2014 refresh credit & pricing before sending\"}</strong></p><p class=\"sms-muted\">${esc(estimate.note)}</p>`,smsSendReadyV681()}async function loadVendorSmsCampaignsV681(){const root=$2(\"vendorSmsCampaignsV681\");if(root){root.dataset.bound||(root.dataset.bound=\"1\",root.innerHTML='<div class=\"sms-page\"><header class=\"sms-heading\"><div><p class=\"orbit-kicker\">VENDOR CLUB \\xB7 MANUAL ONLY</p><h3>SMS campaigns</h3><p>You write the message. You choose when it sends. Publishing events never sends an announcement.</p></div><button type=\"button\" class=\"secondary\" id=\"smsNewV681\">New message</button></header><div class=\"sms-summary\"><section class=\"orbit-panel\"><div id=\"smsCreditV681\"></div><button type=\"button\" class=\"secondary\" id=\"smsRefreshCreditV681\">Refresh credit & pricing</button></section><section class=\"orbit-panel\"><div id=\"smsAudienceV681\"><p>Refresh subscribers to see the current audience and exclusions.</p></div><button type=\"button\" class=\"secondary\" id=\"smsRefreshAudienceV681\">Refresh subscribers</button></section></div><p id=\"smsCampaignNoticeV681\" class=\"sms-notice\" role=\"status\" aria-live=\"polite\">Nothing is queued. Drafts and previews do not send messages.</p><div class=\"sms-editor-grid\"><section class=\"orbit-panel\"><h4>Compose your announcement</h4><p id=\"smsEditorStatusV681\" class=\"sms-muted\"></p><label>Campaign name <input id=\"smsTitleV681\" maxlength=\"100\" placeholder=\"For your own reference\"></label><label>Message <textarea id=\"smsBodyV681\" rows=\"7\" maxlength=\"480\" placeholder=\"Write your message to subscribed vendors\\u2026\"></textarea></label><p id=\"smsLengthV681\" class=\"sms-muted\"></p><p class=\"sms-muted\">Every text includes the SMS-settings link so subscribers can change their preferences. Longer or personalised messages may use several paid segments.</p><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" id=\"smsSaveV681\">Save draft</button><button type=\"button\" id=\"smsPreviewV681\">Preview audience & cost</button></div></section><aside class=\"orbit-panel\"><h4>Insert merge tag</h4><p class=\"sms-muted\">Click a tag to insert it at the cursor. Examples are not live recipient values.</p><div id=\"smsTagsV681\"></div><details><summary>Link published events (optional)</summary><p class=\"sms-muted\">Event tags use these choices. Draft, Unlisted and unpublished products cannot be announced.</p><div id=\"smsEventsV681\"></div></details></aside></div><section id=\"smsReviewV681\" class=\"orbit-panel\" hidden><h4>Review the exact message</h4><div id=\"smsQuoteV681\" class=\"sms-quote\"></div><div id=\"smsRenderedV681\"></div><div class=\"sms-test\"><label>Your authorised test mobile<input id=\"smsTestPhoneV681\" type=\"tel\" placeholder=\"07\\u2026\"></label><button type=\"button\" class=\"secondary\" id=\"smsTestV681\">Send me a test SMS</button></div><label class=\"sms-check\"><input type=\"checkbox\" id=\"smsConsentV681\">I have reviewed this message, its cost and recipients, and confirm it is an announcement these subscribers have agreed to receive.</label><label>Type SEND CAMPAIGN to send to these subscribers<input id=\"smsConfirmV681\" autocomplete=\"off\"></label><button type=\"button\" id=\"smsSendV681\" disabled>Send this campaign once</button></section><section class=\"orbit-panel\"><div class=\"sms-heading\"><h4>Campaign history</h4><button type=\"button\" class=\"secondary\" id=\"smsRefreshHistoryV681\">Refresh history</button></div><div id=\"smsHistoryV681\"></div><div id=\"smsDeliveryV681\"></div></section></div>',root.addEventListener(\"click\",e=>{const b=e.target.closest(\"button\");if(!b)return;const run=fn=>smsRunV681(b,fn).catch(()=>{});if(b.id===\"smsNewV681\"){smsCampaignEditorV681();return}if(b.dataset.smsTagV681){if($2(\"smsBodyV681\").disabled)return;const a=$2(\"smsBodyV681\");a.setRangeText(\"{{\"+b.dataset.smsTagV681+\"}}\",a.selectionStart,a.selectionEnd,\"end\"),a.dispatchEvent(new Event(\"input\",{bubbles:!0})),a.focus();return}if(b.id===\"smsRefreshCreditV681\")return run(async()=>{const r=await smsRequestV681(\"/account-refresh\",\"POST\",{});smsAccountV681(r.account),smsNoteV681(\"Account refresh completed. Unavailable values are not treated as zero.\")});if(b.id===\"smsRefreshAudienceV681\")return run(async()=>{smsCountsV681(await smsRequestV681(\"/audience\",\"POST\",{})),smsNoteV681(\"Subscriber list refreshed. Nothing sent.\")});if(b.id===\"smsRefreshHistoryV681\")return run(smsRefreshHistoryV681);if(b.id===\"smsSaveV681\")return run(smsSaveV681);if(b.id===\"smsPreviewV681\")return run(async()=>{const c=await smsSaveV681(),p=await smsRequestV681(\"/\"+encodeURIComponent(c._id)+\"/preview\",\"POST\",{});smsReviewV681(p),smsNoteV681(\"Preview ready. No customer messages have been sent.\")});if(b.id===\"smsTestV681\")return run(async()=>{if(!smsCampaignV681.preview)throw Error(\"Preview the saved campaign first.\");if(!confirm(\"Send one real test SMS to your entered authorised phone? This may use SMS credit.\"))return;const requestId=smsCampaignV681.testRequest||(smsCampaignV681.testRequest=crypto.randomUUID()),r=await smsRequestV681(\"/\"+encodeURIComponent(smsCampaignV681.campaign._id)+\"/test\",\"POST\",{to:$2(\"smsTestPhoneV681\").value,confirmation:\"SEND TEST SMS\",requestId});smsNoteV681(r.duplicate?\"This test request already exists. Check delivery before repeating it.\":\"Test submitted. Provider acceptance is not delivery confirmation.\")});if(b.id===\"smsSendV681\")return run(async()=>{const p=smsCampaignV681.preview;if(!p)throw Error(\"Preview the exact campaign first.\");const r=await smsRequestV681(\"/\"+encodeURIComponent(p.campaign._id)+\"/approve\",\"POST\",{approvalHash:p.approvalHash,confirmation:$2(\"smsConfirmV681\").value,consentConfirmed:$2(\"smsConsentV681\").checked});smsCampaignEditorV681(r.campaign),smsNoteV681(\"Your manual campaign is approved. Progress is saved; no individual event messages are triggered.\"),await smsRefreshHistoryV681()});if(b.dataset.smsResumeV681)return run(async()=>{prompt(\"Previously submitted or uncertain messages will not be repeated. Type RESUME CAMPAIGN to continue remaining recipients.\")===\"RESUME CAMPAIGN\"&&(await smsRequestV681(\"/\"+encodeURIComponent(b.dataset.smsResumeV681)+\"/resume\",\"POST\",{confirmation:\"RESUME CAMPAIGN\"}),await smsRefreshHistoryV681(),smsNoteV681(\"Resume requested for the remaining approved recipients only.\"))});if(b.dataset.smsOpenV681)return run(async()=>{const r=await smsRequestV681(\"/\"+encodeURIComponent(b.dataset.smsOpenV681));smsCampaignEditorV681(r.campaign),smsNoteV681(\"Campaign opened. Nothing was sent.\")});if(b.dataset.smsPauseV681)return run(async()=>{await smsRequestV681(\"/\"+encodeURIComponent(b.dataset.smsPauseV681)+\"/pause\",\"POST\",{}),await smsRefreshHistoryV681(),smsNoteV681(\"Campaign paused. A message already submitted cannot be recalled.\")});if(b.dataset.smsReceiptsV681)return run(async()=>{const r=await smsRequestV681(\"/\"+encodeURIComponent(b.dataset.smsReceiptsV681)+\"/receipts\",\"POST\",{});$2(\"smsDeliveryV681\").innerHTML=\"<h5>Latest delivery receipts</h5>\"+(r.recent||[]).map(x=>`<p>${esc(x.phoneMasked)} \\xB7 ${esc(x.status)}${x.providerStatus?\" \\xB7 \"+esc(x.providerStatus):\"\"}${x.reason?\" \\xB7 \"+esc(x.reason):\"\"}</p>`).join(\"\"),await smsRefreshHistoryV681()})}),root.addEventListener(\"input\",e=>{[\"smsBodyV681\",\"smsTitleV681\"].includes(e.target.id)&&(smsCampaignV681.preview=null,$2(\"smsReviewV681\").hidden=!0,smsBodyCountV681()),e.target.id===\"smsConfirmV681\"&&smsSendReadyV681()}),root.addEventListener(\"change\",e=>{e.target.id===\"smsConsentV681\"&&smsSendReadyV681(),e.target.matches(\"[data-sms-event-v681]\")&&(smsCampaignV681.preview=null,$2(\"smsReviewV681\").hidden=!0)}));try{const[data,events]=await Promise.all([smsRequestV681(),api(\"/api/admin/card-show-shopify/drafts?kind=product&limit=250\",{cacheMs:0,timeoutMs:25e3})]);smsCampaignV681.data=data,smsAccountV681(data.account),smsHistoryV681(data.campaigns||[]),$2(\"smsTagsV681\").innerHTML=(data.tags||[]).map(t=>`<div class=\"sms-tag\"><button type=\"button\" class=\"secondary\" data-sms-tag-v681=\"${esc(t.key)}\">{{${esc(t.key)}}}</button><small>${esc(t.description)} Example: ${esc(t.example)}</small></div>`).join(\"\"),$2(\"smsEventsV681\").innerHTML=(events.drafts||[]).filter(d=>d.status===\"published\").map(d=>`<label class=\"sms-check\"><input type=\"checkbox\" data-sms-event-v681 value=\"${esc(d._id)}\">${esc(d.title)}</label>`).join(\"\")||\"<p>No managed events are published yet.</p>\",smsCampaignV681.campaign?smsCampaignEditorV681(smsCampaignV681.campaign):smsCampaignEditorV681()}catch(e){smsNoteV681(e.message,!0)}}}let vendorSettingsSectionV641=\"rewards\",vendorArchiveReadV641=0,vendorArchivePageV641=1,vendorArchivePollV641=null,vendorArchiveReportV641=null;const vendorSettingsKeysV641=[\"overview\",\"rewards\",\"credit\",\"access\",\"notifications\",\"delivery\",\"checks\",\"campaigns\",\"sms\",\"archive\"];function vendorArchiveNoticeV641(message,error=!1){const n=$2(\"vendorLaunchArchiveNoticeV641\");n&&(n.textContent=message,n.classList.toggle(\"is-error\",error))}async function setVendorSettingsSectionV641(key,{focus=!1}={}){vendorSettingsKeysV641.includes(key)||(key=\"overview\"),vendorSettingsSectionV641=key,document.querySelectorAll(\"[data-vendor-settings-panel-v641]\").forEach(p=>p.hidden=p.dataset.vendorSettingsPanelV641!==key),document.querySelectorAll(\"[data-vendor-settings-tab-v641]\").forEach(b=>{const yes=b.dataset.vendorSettingsTabV641===key;b.setAttribute(\"aria-selected\",String(yes)),b.tabIndex=yes?0:-1,yes&&focus&&b.focus()});try{sessionStorage.setItem(\"orbitVendorClubSettingsSectionV641\",key)}catch{}if(clearTimeout(vendorArchivePollV641),clearTimeout(vendorReminderPollV642),key===\"archive\"&&await Promise.all([loadVendorLaunchReportV641(),loadVendorReminderStatusV642()]),key===\"campaigns\"&&await loadVendorCampaignStatusesV676(),key===\"sms\"&&await loadVendorSmsCampaignsV681(),key===\"delivery\"&&await loadVendorDeliveryV642(),key===\"access\"&&await Promise.all([loadVendorClubPreviewVendorsV623(),loadVendorClubPageV6202().then(renderVendorClubPageStateV6202)]),key===\"checks\"){const select=$2(\"vendorCommerceVendorV641\");if(select&&!select.dataset.loaded){const data=await api(\"/api/admin/vendors/club?q=\",{cacheMs:0,timeoutMs:2e4});select.innerHTML='<option value=\"\">Store connection only</option>'+(data.rows||[]).map(r=>'<option value=\"'+esc(r.canonicalVendorId)+'\">'+esc(r.vendor||r.email||\"Vendor\")+\"</option>\").join(\"\"),select.dataset.loaded=\"1\"}}}function vendorArchiveFilteredV641(){const q=String($2(\"vendorLaunchArchiveSearchV641\")?.value||\"\").trim().toLowerCase(),f=$2(\"vendorLaunchArchiveFilterV641\")?.value||\"all\";return(vendorArchiveReportV641?.rows||[]).filter(r=>(!q||[r.to,r.subject,r.id].join(\" \").toLowerCase().includes(q))&&(f===\"all\"||f===\"delivered\"&&r.outcome===\"delivered\"||f===\"unverified\"&&[\"accepted\",\"sent\"].includes(r.outcome)||f===\"problems\"&&[\"bounced\",\"complained\",\"suppressed\",\"failed\"].includes(r.outcome)||f===\"unaccepted\"&&!r.acceptanceProved||f===\"recovered\"&&r.recovered||f===\"retryable\"&&r.retryable))}function drawVendorLaunchRowsV641(){const target=$2(\"vendorLaunchReportRowsV641\");if(!target)return;const rows=vendorArchiveFilteredV641(),pages=Math.max(1,Math.ceil(rows.length/30));vendorArchivePageV641=Math.min(pages,Math.max(1,vendorArchivePageV641));const labels={delivered:\"Delivered\",sent:\"Sent \\xB7 delivery pending\",accepted:\"Accepted \\xB7 delivery unverified\",bounced:\"Bounced\",complained:\"Complaint\",suppressed:\"Suppressed\",failed:\"Provider delivery failed\",quota_rejected:\"Quota rejected \\xB7 never accepted\",queued:\"Queued\",pending:\"Retry / outcome pending\",needs_review:\"Needs review\",skipped:\"Skipped\"};target.innerHTML=rows.slice((vendorArchivePageV641-1)*30,vendorArchivePageV641*30).map(r=>'<article class=\"orbit-launch-recipient-v641\"><div><strong>'+esc(r.to||\"Recipient address not retained\")+'</strong><span class=\"orbit-launch-outcome-v641 '+(r.outcome===\"delivered\"?\"is-delivered\":[\"bounced\",\"complained\",\"suppressed\",\"failed\"].includes(r.outcome)?\"is-review\":r.acceptanceProved?\"is-accepted\":\"is-review\")+'\">'+esc(labels[r.outcome]||r.outcome)+\"</span></div><p>\"+esc(r.subject||\"Vendor Club launch invitation\")+\"</p><small>\"+Number(r.attemptCount||0)+\" attempt\"+(r.attemptCount===1?\"\":\"s\")+(r.recovered?\" \\xB7 Accepted after retry; do not resend\":\"\")+\" \\xB7 \"+(r.deliveryCheckedAt?\"Receipt checked \"+esc(prettyDate(r.deliveryCheckedAt)):\"Delivery has not been checked\")+\"</small>\"+(r.deliveryStatusError?'<p class=\"orbit-launch-receipt-warning-v641\">Receipt check unavailable: '+esc(r.deliveryStatusError)+\". Previous acceptance is preserved.</p>\":\"\")+\"<details><summary>Send and delivery evidence</summary><p>Provider reference: \"+esc(r.providerId||\"No acceptance ID recorded\")+\"</p><p>Accepted: \"+esc(r.acceptedAt?prettyDate(r.acceptedAt):\"Not proved\")+\" \\xB7 Last provider event: \"+esc(r.providerStatus||\"Unverified\")+\"</p>\"+(r.attempts||[]).map(a=>'<p class=\"orbit-launch-attempt-v641\">'+esc(prettyDate(a.at))+\" \\xB7 \"+esc(a.status)+(a.providerId?\" \\xB7 \"+esc(a.providerId):\"\")+\" \"+(a.errorCode?\"\\xB7 \"+esc(a.errorCode):\"\")+\"</p>\").join(\"\")+((r.attempts||[]).length?\"\":\"<p>No individual attempt logs were retained. The saved recipient receipt remains the evidence.</p>\")+\"</details></article>\").join(\"\")||'<p class=\"orbit-muted\">No original recipients match this filter.</p>',$2(\"vendorLaunchRowsPageV641\").textContent=rows.length+\" recipients \\xB7 page \"+vendorArchivePageV641+\" of \"+pages,$2(\"vendorLaunchRowsPreviousV641\").disabled=vendorArchivePageV641<=1,$2(\"vendorLaunchRowsNextV641\").disabled=vendorArchivePageV641>=pages}function drawVendorLaunchReportV641(data){vendorArchiveReportV641=data;const c=data.counts||{},note=$2(\"vendorLaunchCountNoteV641\");note.hidden=!data.countDiscrepancy&&!data.storedCountMismatch,note.textContent=data.countNote+(data.storedCountMismatch?\" The recorded count and frozen row count also differ; recovery is blocked.\":\"\");const metrics=[[\"Original recipients\",data.originalFrozen],[\"Accepted by Resend\",c.accepted],[\"Delivery confirmed\",c.delivered],[\"Delivery unverified\",c.awaitingDelivery],[\"Delivery problems\",c.deliveryProblems],[\"Not yet accepted\",c.unaccepted],[\"Recovered after retry\",c.recovered]];$2(\"vendorLaunchSummaryV641\").innerHTML=metrics.map(([label,n])=>\"<div><strong>\"+Number(n||0)+\"</strong><span>\"+esc(label)+\"</span></div>\").join(\"\");const j=data.job;$2(\"vendorLaunchJobV641\").textContent=j?\"Provider receipt check: \"+j.checked+\" / \"+j.total+\" checked \\xB7 \"+j.errors+\" unavailable \\xB7 \"+j.status+(j.status===\"completed\"?\". Errors are not treated as proof of a missing email.\":\". You can leave this page; progress is saved.\"):\"Provider acceptance is not delivery. Verify receipts to request the latest status of each original accepted message.\",$2(\"vendorLaunchVerifyV641\").disabled=!!(j&&[\"queued\",\"running\"].includes(j.status)),$2(\"vendorLaunchExportV641\").disabled=!1,$2(\"vendorLaunchRecoverV641\").disabled=!c.safeToRetry||data.storedCountMismatch,$2(\"vendorLaunchRecoveryInfoV641\").textContent=c.safeToRetry?c.safeToRetry+\" proven-unsent original recipients can be reviewed for safe retry. No accepted recipients will be selected.\":\"No proven-unsent recipients are currently eligible for automatic recovery. Do not start a second launch.\",drawVendorLaunchRowsV641()}async function loadVendorLaunchReportV641({quiet=!1}={}){const epoch=++vendorArchiveReadV641;quiet||vendorArchiveNoticeV641(\"Reading the frozen campaign and its latest saved evidence\\u2026\");try{const data=await api(\"/api/admin/vendors/club/launch/report\",{cacheMs:0,timeoutMs:2e4});return epoch!==vendorArchiveReadV641?void 0:(drawVendorLaunchReportV641(data),vendorArchiveNoticeV641(\"Saved report loaded. No emails have been sent. Failed attempts remain in the audit history.\"),clearTimeout(vendorArchivePollV641),data.job&&[\"running\",\"queued\"].includes(data.job.status)&&vendorSettingsSectionV641===\"archive\"&&(vendorArchivePollV641=setTimeout(()=>{!$2(\"vendorSettingsPanelV641-archive\")?.hidden&&!document.querySelector('[data-vendor-pane=\"club-settings\"]')?.hidden&&loadVendorLaunchReportV641({quiet:!0}).catch(()=>{})},5e3)),data)}catch(e){throw epoch===vendorArchiveReadV641&&vendorArchiveNoticeV641(\"The report could not refresh. Existing evidence is unchanged. \"+e.message,!0),e}}function exportVendorLaunchReportV641(){const report=vendorArchiveReportV641;if(!report)return;const cell=v=>'\"'+String(v??\"\").replace(/^[=+@\\-\\t\\r]/,m=>\"'\"+m).replace(/\"/g,'\"\"')+'\"',rows=[[\"Recipient\",\"Subject\",\"Original recipient ID\",\"Current outcome\",\"Provider ID\",\"Accepted at\",\"Delivery checked at\",\"Attempts\",\"Recovered after retry\",\"Safe retry\",\"Attempt audit JSON\"],...report.rows.map(r=>[r.to,r.subject,r.id,r.outcome,r.providerId,r.acceptedAt,r.deliveryCheckedAt,r.attemptCount,r.recovered?\"Yes\":\"No\",r.retryable?\"Yes\":\"No\",JSON.stringify(r.attempts||[])])],url=URL.createObjectURL(new Blob([\"\\uFEFF\"+rows.map(row=>row.map(cell).join(\",\")).join(`\\r\n`)],{type:\"text/csv;charset=utf-8\"})),a=document.createElement(\"a\");a.href=url,a.download=\"Orbit-Vendor-Club-Original-Launch-Reconciliation.csv\",document.body.append(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(url),1e3)}async function wolverhamptonNovAuditV71704(button2){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/wolverhampton-november-audit\",{cacheMs:0,timeoutMs:3e4}),target=$2(\"wolverhamptonNovAuditResultV71704\");if(!target)return;const sum=data.summary||{},detail=(data.vendors||[]).map(v=>{const rows=(v.bookings||[]).map(r=>{const ev=r.evidence||{},confirmed=r.verifiedSize||\"Unresolved\",readonly=r.bookingStatus!==\"active\"||!r.key,header=`<td><strong>${esc(r.orderName||r.stockType||\"Booking\")}</strong><small>${esc(String(r.sourceBookingDate||\"Date unknown\"))} \\xB7 ${esc(r.stockType)} \\xB7 ${esc(r.bookingStatus)}</small><small>${esc(ev.bookingRef||\"No source ID\")}</small></td>`,evidence=`<td>${esc(ev.originalUnitPrice==null?\"Price unknown\":\"\\xA3\"+ev.originalUnitPrice)} \\xB7 ${esc(ev.variantTitle||\"No saved table variant\")}</td>`,classification=`<td><strong>${esc(confirmed)}</strong><small>${esc(r.classification)}</small></td>`,controls=readonly?\"Not eligible for correction\":`<label>Table size<select data-wh-size-v71704=\"${esc(r.key)}\"><option value=\"\">Select\\u2026</option><option value=\"4ft\" ${confirmed===\"4ft\"?\"selected\":\"\"}>4ft</option><option value=\"6ft\" ${confirmed===\"6ft\"?\"selected\":\"\"}>6ft</option></select></label><label>Original evidence<input data-wh-reason-v71704=\"${esc(r.key)}\" placeholder=\"Booking records, date, operator confirmation\\u2026\"></label><button class=\"secondary\" type=\"button\" data-wh-confirm-v71704=\"${esc(r.key)}\" data-wh-fingerprint-v71704=\"${esc(r.evidenceFingerprint)}\">Confirm this record</button>`;return`<tr>${header}<td>${Number(r.quantity||0)}</td>${evidence}${classification}<td>${controls}</td></tr>`}).join(\"\");return`<details style=\"padding:12px;border:1px solid #c7dbea;border-radius:12px;margin-top:10px;background:#fff\"><summary><strong>${esc(v.vendorName||\"Vendor identity pending\")}</strong> \\xB7 ${Number(v.tables||0)} active tables \\xB7 ${Number(v.unresolved||0)} need review</summary><div class=\"orbit-table-wrap\"><table><thead><tr><th>Source and original date</th><th>Tables</th><th>Original unit price / variant</th><th>Classification</th><th>Confirm with evidence</th></tr></thead><tbody>${rows}</tbody></table></div></details>`}).join(\"\"),correctionBoxV777='<section style=\"margin:14px 0;padding:14px;border:1px solid #bdcee0;border-radius:12px;background:#f5f9ff;color:#14233a\"><h4 style=\"margin:0 0 6px\">Wolverhampton booking updates \\xB7 3 vendors</h4><p style=\"margin:0 0 12px\">R&amp;M: 2 \\xD7 6ft \\xB7 Breaks Sports Sales: 6 \\xD7 4ft \\xB7 Bridge Troll: 4 \\xD7 4ft plus \\xA330 goodwill credit. Review live booking evidence before applying. No automatic emails or floor-plan release.</p><button type=\"button\" class=\"secondary\" id=\"v777ReviewCorrections\" style=\"min-height:36px\">Review 3 vendor changes</button><div id=\"v777CorrectionResult\" role=\"status\" aria-live=\"polite\" style=\"margin-top:10px\"></div></section>';target.innerHTML=correctionBoxV777+\"<p><strong>\"+Number(sum.activeTableUnits||0)+\" active tables across \"+Number(sum.vendorCount||0)+\" vendors.</strong> <strong>\"+Number(sum.confirmed6ft||0)+\" confirmed 6ft</strong> \\xB7 <strong>\"+Number(sum.confirmed4ft||0)+\" confirmed 4ft</strong> \\xB7 <strong>\"+Number(sum.unresolved||0)+\" unresolved</strong></p>\"+(sum.duplicateIdentityKeys?\"<p data-orbit-error>Duplicate booking identities: \"+Number(sum.duplicateIdentityKeys)+\". Do not confirm duplicate rows.</p>\":\"\")+'<p class=\"orbit-muted\">Cancelled: '+Number(sum.cancelledTableUnits||0)+\" tables \\xB7 Assignment review: \"+Number(sum.assignmentReviewTableUnits||0)+\" tables \\xB7 Archived inactive adjustments: \"+Number(data.excludedHistoricalAdjustments?.count||0)+\" records (\"+Number(data.excludedHistoricalAdjustments?.quantity||0)+\" table units). Fully refunded Shopify lines: \"+Number(data.excludedRefundedShopifyLines?.count||0)+\" (\"+Number(data.excludedRefundedShopifyLines?.quantity||0)+\" original table units). \"+esc(data.coverage?.warning||\"\")+\"</p><details><summary>Excluded historic adjustments and refunded orders</summary>\"+(data.excludedHistoricalAdjustments?.records||[]).map(x=>\"<p>\"+esc(x.vendorName)+\" \\xB7 \"+esc(x.kind)+\" \\xB7 \"+Number(x.quantity||0)+\" table units \\xB7 \"+esc(x.id)+\"</p>\").join(\"\")+(data.excludedRefundedShopifyLines?.rows||[]).map(x=>\"<p>\"+esc(x.orderName||x.orderId)+\" \\xB7 refunded Shopify line \\xB7 \"+Number(x.quantity||0)+\" table units \\xB7 \"+esc(x.variantTitle||\"No size recorded\")+\"</p>\").join(\"\")+'</details><p class=\"orbit-muted\">No inferred historical stock parity is claimed until the original sold-stock snapshot is verified. Select any uncertain booking to record the actual table size and your evidence; the source booking is never changed.</p>'+detail}finally{button2&&setLoading(button2,!1)}}let vendorCorrectionsPreviewV777=null;async function reviewWolverhamptonCorrectionsV777(button2){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/wolverhampton-booking-corrections-v777\",{cacheMs:0,timeoutMs:3e4});vendorCorrectionsPreviewV777=data;const target=$2(\"v777CorrectionResult\");if(!target)return;target.innerHTML='<p class=\"orbit-muted\" style=\"margin:0 0 10px\"><strong>Floor plan '+esc(data.planStatus||\"verified\")+'</strong> \\xB7 existing allocations checked read-only. The booking corrections will not reopen, modify, publish or send the plan.</p><div class=\"orbit-table-wrap\"><table><thead><tr><th>Vendor</th><th>Previous</th><th>Correct</th><th>Saved plan</th><th>Completed</th><th>Vendor message</th></tr></thead><tbody>'+(data.items||[]).map(x=>\"<tr><td>\"+esc(x.vendor)+\"</td><td>\"+esc(x.previous)+\"</td><td><strong>\"+esc(x.correct)+\"</strong></td><td>\"+Number(x.tablesAllocated)+\" in \"+esc(x.room)+\"</td><td>\"+esc(x.sizeConfirmed?\"Size confirmed\":\"Size pending\")+\" \\xB7 \"+esc(x.supportMessageCreated?\"Message created\":\"Message pending\")+'</td><td><details><summary>Preview message</summary><p style=\"white-space:pre-wrap;min-width:260px;max-width:460px;line-height:1.5\">'+esc(x.messagePreview||\"\")+\"</p></details></td></tr>\").join(\"\")+\"</tbody></table></div><p><strong>Bridge Troll goodwill: \\xA330</strong> \\xB7 \"+(data.goodwillCredit?.alreadyIssued?\"Already credited\":\"To be credited\")+\"</p>\"+(data.pendingActions?'<label style=\"display:block;margin:8px 0\">Type APPLY WOLVERHAMPTON VENDOR CORRECTIONS<input id=\"v777ApplyConfirm\" type=\"text\" autocomplete=\"off\" spellcheck=\"false\" style=\"display:block;max-width:440px;width:100%;padding:10px;border:1px solid #8293a6;border-radius:7px;color:#182943;background:#fff\" placeholder=\"Type exact confirmation phrase\"></label><button id=\"v777ApplyCorrections\" type=\"button\" style=\"padding:10px 14px;border-radius:8px;background:#123966;color:#fff;border:1px solid #09223b;font-weight:700\">Apply verified booking changes & \\xA330 credit</button>':'<p style=\"font-weight:700\">All 3 booking corrections, \\xA330 credit and Vendor Support messages are recorded.</p>')}catch(e){const target=$2(\"v777CorrectionResult\");throw target&&(target.textContent=\"Review blocked: \"+e.message),e}finally{button2&&setLoading(button2,!1)}}async function applyWolverhamptonCorrectionsV777(button2){const data=vendorCorrectionsPreviewV777,phrase=String($2(\"v777ApplyConfirm\")?.value||\"\").trim();if(!data?.fingerprint||phrase!==\"APPLY WOLVERHAMPTON VENDOR CORRECTIONS\")throw Error(\"Type the exact confirmation phrase after reviewing all three bookings.\");if(confirm(\"Apply three Wolverhampton table-size corrections, create Vendor Support messages, and add exactly \\xA330 Vendor Account Credit to Bridge Troll? No emails or floor-plan release will occur.\")){button2&&setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/club/wolverhampton-booking-corrections-v777/apply\",{method:\"POST\",body:JSON.stringify({fingerprint:data.fingerprint,confirmation:phrase}),cacheMs:0,timeoutMs:12e4});await reviewWolverhamptonCorrectionsV777(null),setNotice2(result.alreadyCredited?\"Wolverhampton corrections verified; Bridge Troll credit was already applied.\":\"Wolverhampton corrections complete: three table sizes, three in-app messages and \\xA330 Bridge Troll credit.\")}catch(error){vendorCorrectionsPreviewV777=null;const target=$2(\"v777CorrectionResult\");throw target&&(target.textContent=\"Apply interrupted or blocked. No blind retry: press Review again to reconcile saved steps. \"+error.message),error}finally{button2&&setLoading(button2,!1)}}}async function wolverhamptonNovConfirmV71704(button2){const key=button2?.dataset?.whConfirmV71704,fingerprint=button2?.dataset?.whFingerprintV71704,container=$2(\"wolverhamptonNovAuditResultV71704\");if(!key||!container)return;const size=[...container.querySelectorAll(\"select[data-wh-size-v71704]\")].find(x=>x.dataset.whSizeV71704===key)?.value||\"\",reason=[...container.querySelectorAll(\"input[data-wh-reason-v71704]\")].find(x=>x.dataset.whReasonV71704===key)?.value||\"\";if(![\"4ft\",\"6ft\"].includes(size)||reason.trim().length<12)throw new Error(\"Select 4ft or 6ft and enter at least 12 characters of real supporting evidence.\");if(confirm(\"Confirm this exact historical booking as \"+size+\"? This changes the classified size shown in Vendor Club, but not stock, orders or payments.\")){setLoading(button2,!0);try{await api(\"/api/admin/vendors/club/wolverhampton-november-confirm\",{method:\"POST\",body:JSON.stringify({key,fingerprint,size,reason}),cacheMs:0,timeoutMs:3e4}),await wolverhamptonNovAuditV71704(null),setNotice2(\"Historical table size evidence recorded. Vendor Club will use this verified classification.\")}finally{setLoading(button2,!1)}}}async function warwickFloorAuditV71704(button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/warwick-floor-plan-evidence\",{cacheMs:0,timeoutMs:3e4}),target=$2(\"warwickOriginalPlanResultV71704\");target&&(target.innerHTML=\"<p>\"+esc(data.notice||\"\")+\"</p>\"+(data.events||[]).map(e=>\"<details open><summary>\"+esc(e.eventKey)+\" \\xB7 \"+esc(e.planStatus||\"Unknown status\")+\" \\xB7 \"+Number(e.releaseCount||0)+\" preserved releases</summary>\"+(e.immutableSnapshots||[]).map(x=>\"<p>Snapshot \"+esc(x.planId)+\" \\xB7 \"+(x.rooms||[]).map(r=>esc(r.roomName)+\": \"+(r.hasArtwork?\"original artwork stored\":\"artwork missing\")).join(\", \")+\"</p>\").join(\"\")+(e.rooms||[]).map(r=>\"<p><strong>\"+esc(r.roomName||\"Room\")+\"</strong> \\xB7 master \"+(r.masterExists?\"present\":\"missing\")+\" \\xB7 original image \"+(r.artworkReadable||r.roomHasInlineArtwork?\"available\":\"missing\")+\" \\xB7 \"+Number(r.savedAllocationSnapshots||0)+\" saved table positions \\xB7 plan ID \"+esc(r.venuePlanId||\"none\")+\"</p>\").join(\"\")+\"</details>\").join(\"\"))}finally{setLoading(button2,!1)}}let vendorRewardPreviewV71701=null;function vendorRewardReadyV71701(){const b=$2(\"vendorRewardCommitV71701\"),p=vendorRewardPreviewV71701;b&&(b.disabled=!p||p.truncated||!p.totals?.bookings||!$2(\"vendorRewardReviewV71701\")?.checked||String($2(\"vendorRewardConfirmV71701\")?.value||\"\").trim()!==\"AWARD VERIFIED HISTORICAL VENDOR POINTS\")}async function vendorRewardReviewV71701(button2){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/historical-reward-preview\",{cacheMs:0,timeoutMs:3e4});vendorRewardPreviewV71701=data;const target=$2(\"vendorRewardResultV71701\"),approval=$2(\"vendorRewardApprovalV71701\"),fundLabel={complimentary:\"Manual / complimentary\",vendor_club_points:\"Vendor Points\"},byVendor=new Map;for(const item of data.candidates||[]){const id=String(item.canonicalVendorId||\"\");byVendor.has(id)||byVendor.set(id,[]),byVendor.get(id).push(item)}const readableReason={credit_payment_unconfirmed:\"Credit settlement has not been verified\",missing_booking_identity_or_quantity:\"Missing booking ID or table quantity\",vendor_identity_not_verified:\"Vendor identity has not been verified\"};return target&&(target.innerHTML=\"<p><strong>\"+Number(data.totals?.bookings||0)+\" bookings \\xB7 \"+Number(data.totals?.vendors||0)+\" vendors \\xB7 \"+Number(data.totals?.points||0)+\" proposed points</strong> \\xB7 \"+Number(data.totals?.exceptions||0)+' exceptions</p><p class=\"orbit-muted\">Read-only snapshot '+esc(String(data.fingerprint||\"\").slice(0,20))+\"\\u2026 No balances changed. Check each original booking before approving.</p>\"+(data.truncated?\"<p data-orbit-error>More than 250 candidates; awarding is blocked.</p>\":\"\")+[...byVendor.entries()].map(([id,items])=>{const first=items[0],total=items.reduce((n,x)=>n+Number(x.points||0),0);return'<details class=\"orbit-vendor-reward-group\" open><summary><strong>'+esc(first.vendorName||\"Unknown vendor\")+\"</strong> \\xB7 \"+items.length+\" bookings \\xB7 <strong>+\"+total+' pts</strong></summary><p class=\"orbit-muted\">'+esc(first.vendorEmail||\"Email not recorded\")+\" \\xB7 Vendor record: \"+esc(id)+'</p><div class=\"orbit-table-wrap\"><table><thead><tr><th>Event</th><th>Booking date</th><th>Funding</th><th>Tables</th><th>Existing points at event</th><th>Proposed</th><th>Booking ID</th></tr></thead><tbody>'+items.map(x=>\"<tr><td>\"+esc(x.eventName||x.eventId)+\" <small>\"+esc(String(x.eventDate||\"\").slice(0,10))+\"</small></td><td>\"+esc(prettyDate(x.bookingDate))+\"</td><td>\"+esc(x.funding||fundLabel[x.source]||x.source||\"Unknown\")+\"</td><td>\"+Number(x.quantity||0)+\"</td><td>\"+Number(x.earnedBefore||0)+\"</td><td><strong>+\"+Number(x.points||0)+\"</strong></td><td><small>\"+esc(x.bookingId||\"Unknown\")+\"</small></td></tr>\").join(\"\")+\"</tbody></table></div></details>\"}).join(\"\")+\"<details><summary>Held for manual evidence review (\"+Number(data.totals?.exceptions||0)+\")</summary>\"+(data.exceptions||[]).map(x=>\"<p><strong>\"+esc(x.vendorName||\"Identity not established\")+\"</strong> \\xB7 \"+esc(x.eventName||x.eventId||\"Event not established\")+\" \\xB7 \"+esc(x.funding||\"Unknown booking type\")+\" \\xB7 \"+esc(readableReason[x.reason]||String(x.reason||\"Evidence unavailable\").replace(/_/g,\" \"))+\" <small>\"+esc(x.bookingId||\"No booking ID\")+\"</small></p>\").join(\"\")+\"</details>\"),approval&&(approval.hidden=!(data.totals?.bookings>0&&!data.truncated)),$2(\"vendorRewardReviewV71701\")&&($2(\"vendorRewardReviewV71701\").checked=!1),$2(\"vendorRewardConfirmV71701\")&&($2(\"vendorRewardConfirmV71701\").value=\"\"),vendorRewardReadyV71701(),data}finally{button2&&setLoading(button2,!1)}}async function vendorRewardApproveV71701(button2){const p=vendorRewardPreviewV71701;if(!p||!p.fingerprint)throw new Error(\"Review the current historical point evidence first.\");if(vendorRewardReadyV71701(),!button2.disabled&&confirm(\"FINAL VENDOR POINTS LEDGER ACTION: award exactly \"+Number(p.totals?.points||0)+\" historical points across \"+Number(p.totals?.bookings||0)+\" booking records? This changes real Vendor Point balances.\")){button2&&setLoading(button2,!0);try{const out=await api(\"/api/admin/vendors/club/historical-reward-award\",{method:\"POST\",body:JSON.stringify({fingerprint:p.fingerprint,acknowledge:\"AWARD VERIFIED HISTORICAL VENDOR POINTS\"}),cacheMs:0,timeoutMs:6e4});return vendorRewardPreviewV71701=null,$2(\"vendorRewardApprovalV71701\")&&($2(\"vendorRewardApprovalV71701\").hidden=!0),$2(\"vendorRewardResultV71701\")&&($2(\"vendorRewardResultV71701\").innerHTML=\"<p><strong>\"+Number(out.pointsAdded||0)+\" points awarded</strong> across \"+Number(out.awarded||0)+\" verified bookings; \"+Number(out.duplicates||0)+\" duplicate requests safely ignored.</p><p>Audit saved. Refresh to reconcile remaining exceptions.</p>\"),setNotice2(\"Approved historical Vendor Points were recorded in the audited ledger. No campaign was sent.\"),out}catch(error){throw vendorRewardPreviewV71701=null,$2(\"vendorRewardApprovalV71701\")&&($2(\"vendorRewardApprovalV71701\").hidden=!0),error}finally{button2&&setLoading(button2,!1)}}}function initVendorClubSettingsV641(){const panel=document.querySelector('[data-vendor-pane=\"club-settings\"]');if(!panel||panel.dataset.boundV641)return;panel.dataset.boundV641=\"1\";const handler=fn=>Promise.resolve().then(fn).catch(e=>setNotice2(e.message||String(e),!0));$2(\"vendorRewardPreviewV71701\")?.addEventListener(\"click\",event=>handler(()=>vendorRewardReviewV71701(event.currentTarget))),$2(\"wolverhamptonNovAuditLoadV71704\")?.addEventListener(\"click\",event=>handler(()=>wolverhamptonNovAuditV71704(event.currentTarget))),$2(\"wolverhamptonNovAuditResultV71704\")?.addEventListener(\"click\",event=>{const b=event.target.closest(\"[data-wh-confirm-v71704]\");b&&handler(()=>wolverhamptonNovConfirmV71704(b));const review=event.target.closest(\"#v777ReviewCorrections\");review&&handler(()=>reviewWolverhamptonCorrectionsV777(review));const apply=event.target.closest(\"#v777ApplyCorrections\");apply&&handler(()=>applyWolverhamptonCorrectionsV777(apply))}),$2(\"warwickOriginalPlanAuditV71704\")?.addEventListener(\"click\",event=>handler(()=>warwickFloorAuditV71704(event.currentTarget))),$2(\"vendorRewardCommitV71701\")?.addEventListener(\"click\",event=>handler(()=>vendorRewardApproveV71701(event.currentTarget))),$2(\"vendorRewardReviewV71701\")?.addEventListener(\"change\",vendorRewardReadyV71701),$2(\"vendorRewardConfirmV71701\")?.addEventListener(\"input\",vendorRewardReadyV71701),document.querySelectorAll(\"[data-campaign-preview-v676]\").forEach(b=>b.addEventListener(\"click\",()=>handler(()=>previewVendorCampaignV676(b.dataset.campaignPreviewV676,b)))),document.querySelectorAll(\"[data-campaign-test-v676]\").forEach(b=>b.addEventListener(\"click\",()=>handler(()=>testVendorCampaignV676(b.dataset.campaignTestV676,b)))),document.querySelectorAll(\"[data-campaign-send-v676]\").forEach(b=>b.addEventListener(\"click\",()=>handler(()=>sendVendorCampaignV676(b.dataset.campaignSendV676,b)))),document.querySelectorAll(\"[data-campaign-pause-v676]\").forEach(b=>b.addEventListener(\"click\",()=>handler(()=>pauseVendorCampaignV676(b.dataset.campaignPauseV676,b)))),document.querySelectorAll(\"[data-campaign-reviewed-v676],[data-campaign-confirmation-v676]\").forEach(el=>el.addEventListener(el.matches('input[type=\"checkbox\"]')?\"change\":\"input\",()=>updateVendorCampaignSendStateV676(el.dataset.campaignReviewedV676||el.dataset.campaignConfirmationV676))),$2(\"vendorCampaignRefreshV676\")?.addEventListener(\"click\",()=>handler(()=>loadVendorCampaignStatusesV676())),panel.querySelectorAll(\"[data-vendor-settings-tab-v641]\").forEach(b=>{b.addEventListener(\"click\",()=>handler(()=>setVendorSettingsSectionV641(b.dataset.vendorSettingsTabV641))),b.addEventListener(\"keydown\",e=>{if(![\"ArrowLeft\",\"ArrowRight\",\"Home\",\"End\"].includes(e.key))return;e.preventDefault();let i=vendorSettingsKeysV641.indexOf(b.dataset.vendorSettingsTabV641);i=e.key===\"Home\"?0:e.key===\"End\"?vendorSettingsKeysV641.length-1:(i+(e.key===\"ArrowRight\"?1:vendorSettingsKeysV641.length-1))%vendorSettingsKeysV641.length,handler(()=>setVendorSettingsSectionV641(vendorSettingsKeysV641[i],{focus:!0}))})}),panel.querySelectorAll(\"[data-vendor-settings-shortcut-v641]\").forEach(b=>b.addEventListener(\"click\",()=>handler(()=>setVendorSettingsSectionV641(b.dataset.vendorSettingsShortcutV641,{focus:!0})))),$2(\"vendorCreditCustomersV642\")?.addEventListener(\"click\",()=>activateModule(\"vendors\",\"customers\")),$2(\"vendorDeliveryRefreshV642\")?.addEventListener(\"click\",()=>handler(()=>loadVendorDeliveryV642())),$2(\"vendorDeliveryPreviousV642\")?.addEventListener(\"click\",()=>handler(()=>loadVendorDeliveryV642(vendorDeliveryPageV642-1))),$2(\"vendorDeliveryNextV642\")?.addEventListener(\"click\",()=>handler(()=>loadVendorDeliveryV642(vendorDeliveryPageV642+1))),$2(\"vendorDeliveryStatusV642\")?.addEventListener(\"change\",()=>handler(()=>loadVendorDeliveryV642()));let deliverySearchTimerV642;$2(\"vendorDeliverySearchV642\")?.addEventListener(\"input\",()=>{clearTimeout(deliverySearchTimerV642),deliverySearchTimerV642=setTimeout(()=>handler(()=>loadVendorDeliveryV642()),350)}),$2(\"vendorReminderPreviewV642\")?.addEventListener(\"click\",()=>handler(()=>loadVendorReminderPreviewV642().catch(e=>{throw reminderNoticeV642(\"Preview unavailable. Nothing has been sent. \"+e.message),e}))),$2(\"vendorReminderRefreshV642\")?.addEventListener(\"click\",()=>handler(()=>loadVendorReminderStatusV642())),$2(\"vendorReminderApproveV642\")?.addEventListener(\"change\",()=>{$2(\"vendorReminderSendV642\").disabled=!$2(\"vendorReminderApproveV642\").checked||!vendorReminderPreviewV642?.canAuthorise||vendorReminderBusyV642}),$2(\"vendorReminderSendV642\")?.addEventListener(\"click\",()=>handler(sendVendorReminderV642)),$2(\"vendorReminderPauseV642\")?.addEventListener(\"click\",()=>handler(async()=>{const paused=vendorReminderStateV642?.batch?.status!==\"paused\";!paused&&!confirm(\"Resume only the reminder already approved? Eligibility will be rechecked before sending.\")||drawVendorReminderStatusV642(await api(\"/api/admin/vendors/club/reminder/pause\",{method:\"POST\",body:JSON.stringify({paused}),cacheMs:0}))})),$2(\"vendorLaunchEligibilityV642\")?.addEventListener(\"click\",()=>handler(async()=>{const out=$2(\"vendorLaunchEligibilityResultV642\");out.textContent=\"Reading current eligibility without changing the original campaign\\u2026\";try{const d=await api(\"/api/admin/vendors/club/launch/eligibility\",{cacheMs:0,timeoutMs:3e4});out.innerHTML=\"<p>\"+esc(d.comparisonNote)+\"</p><p>\"+Number(d.currentEligible)+\" currently eligible \\xB7 \"+Number(d.originalFrozen)+\" frozen recipients \\xB7 \"+Number(d.currentlyEligibleOutsideLaunch?.length||0)+\" currently eligible outside the original snapshot.</p><details><summary>Original recipient eligibility now</summary>\"+d.rows.map(r=>\"<p>\"+esc(r.to)+\" \\xB7 \"+esc(r.currentReason.replace(/_/g,\" \"))+\"</p>\").join(\"\")+\"</details><details><summary>Currently eligible outside the frozen launch</summary>\"+((d.currentlyEligibleOutsideLaunch||[]).map(r=>\"<p>\"+esc(r.to)+\" \\xB7 \"+esc(r.businessName||\"Vendor\")+\"</p>\").join(\"\")||\"<p>None.</p>\")+\"</details>\"}catch(e){throw out.textContent=\"Current comparison unavailable. Original evidence is unchanged. \"+e.message,e}})),$2(\"vendorLaunchReportRefreshV641\")?.addEventListener(\"click\",()=>handler(()=>loadVendorLaunchReportV641())),$2(\"vendorLaunchVerifyV641\")?.addEventListener(\"click\",async e=>{e.currentTarget.disabled=!0,vendorArchiveNoticeV641(\"Starting a read-only receipt check. This does not send or resend emails.\");try{const data=await api(\"/api/admin/vendors/club/launch/verify\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:2e4});drawVendorLaunchReportV641(data),await loadVendorLaunchReportV641({quiet:!0})}catch(err){vendorArchiveNoticeV641(err.message,!0),$2(\"vendorLaunchVerifyV641\").disabled=!1}}),$2(\"vendorLaunchExportV641\")?.addEventListener(\"click\",exportVendorLaunchReportV641),[\"vendorLaunchArchiveSearchV641\",\"vendorLaunchArchiveFilterV641\"].forEach(id=>$2(id)?.addEventListener(id.includes(\"Search\")?\"input\":\"change\",()=>{vendorArchivePageV641=1,drawVendorLaunchRowsV641()})),$2(\"vendorLaunchRowsPreviousV641\")?.addEventListener(\"click\",()=>{vendorArchivePageV641--,drawVendorLaunchRowsV641()}),$2(\"vendorLaunchRowsNextV641\")?.addEventListener(\"click\",()=>{vendorArchivePageV641++,drawVendorLaunchRowsV641()}),$2(\"vendorLaunchRecoverV641\")?.addEventListener(\"click\",async e=>{const data=vendorArchiveReportV641,ids=(data?.rows||[]).filter(r=>r.retryable&&!r.acceptanceProved).map(r=>r.id);if(!ids.length||!confirm(\"Retry \"+ids.length+\" proven quota-rejected ORIGINAL recipients only? This sends real email. Already accepted messages, unknown outcomes and bounces are excluded.\"))return;const b=e.currentTarget;b.disabled=!0;try{await api(\"/api/admin/vendors/club/launch/recover\",{method:\"POST\",body:JSON.stringify({actorId:void 0,confirmed:!0,requestId:\"recovery_\"+crypto.randomUUID(),fingerprint:data.fingerprint,recipientIds:ids}),cacheMs:0,timeoutMs:3e4}),await loadVendorLaunchReportV641(),vendorArchiveNoticeV641(\"Only the reviewed original failed recipients were queued. The existing provider idempotency keys are preserved.\")}catch(err){vendorArchiveNoticeV641(err.message,!0)}finally{vendorArchiveReportV641&&drawVendorLaunchReportV641(vendorArchiveReportV641)}}),$2(\"vendorCommerceCheckV636\")?.addEventListener(\"click\",async e=>{const b=e.currentTarget,out=$2(\"vendorCommerceResultV636\");b.disabled=!0,out.textContent=\"Checking the configured store and selected vendor\\u2026\";try{const data=await api(\"/api/admin/vendors/club/commerce-check\",{method:\"POST\",body:JSON.stringify({vendorId:$2(\"vendorCommerceVendorV641\")?.value||void 0}),cacheMs:0,timeoutMs:6e4});out.textContent=JSON.stringify(data,null,2)}catch(err){out.textContent=err.message}finally{b.disabled=!1}})}let vendorSettingsLoadV641=null;async function loadVendorClubSettingsV620(){if(vendorSettingsLoadV641)return vendorSettingsLoadV641;vendorSettingsLoadV641=(async()=>{initVendorClubSettingsV641();let key=\"rewards\";try{key=sessionStorage.getItem(\"orbitVendorClubSettingsSectionV641\")||\"rewards\"}catch{}const data=await api(\"/api/admin/vendors/club/settings\",{cacheMs:0}),v=data.settings||{},values={vendorClubFirstTablePointsV620:v.firstTablePoints,vendorClubAdditionalTablePointsV620:v.additionalTablePoints,vendorClubReferralPointsV620:v.referredPaidTicketPoints,vendorClubPhonePointsV620:v.firstMobileVerificationPoints,vendorClubGoldSponsorshipPointsV698:v.goldSponsorshipPoints,vendorClubHeadlineSponsorshipPointsV698:v.headlineSponsorshipPoints};Object.entries(values).forEach(([id,value])=>{$2(id)&&($2(id).value=Number(value||0))}),renderVendorClubLaunchStateV6201(v);const commit=$2(\"commitVendorClub2027V620\");return commit&&(commit.disabled=!0),state.vendorClubMigrationDryRunV623=null,await setVendorSettingsSectionV641(key),data})();try{return await vendorSettingsLoadV641}finally{vendorSettingsLoadV641=null}}async function saveVendorClubSettingsV620(button2){setLoading(button2,!0);try{const payload={firstTablePoints:Number($2(\"vendorClubFirstTablePointsV620\").value),additionalTablePoints:Number($2(\"vendorClubAdditionalTablePointsV620\").value),referredPaidTicketPoints:Number($2(\"vendorClubReferralPointsV620\").value),firstMobileVerificationPoints:Number($2(\"vendorClubPhonePointsV620\").value),goldSponsorshipPoints:Number($2(\"vendorClubGoldSponsorshipPointsV698\").value),headlineSponsorshipPoints:Number($2(\"vendorClubHeadlineSponsorshipPointsV698\").value)},data=await api(\"/api/admin/vendors/club/settings\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0}),r=$2(\"vendorClubSettingsResultV620\");return r&&(r.hidden=!1,r.textContent=\"Club settings saved. Future qualifying activity uses the new reward values.\"),data}finally{setLoading(button2,!1)}}function renderVendorClubMigrationV620(data){const d=data?.dryRun||{},target=$2(\"vendorClubMigrationV620\"),commit=$2(\"commitVendorClub2027V620\"),unresolved=Number(d.unresolvedCount||0),pendingPoints=Number(d.totalPointsToIssue||0),corrections=Number(d.pastRewardCorrections||0),alreadyComplete=(d.alreadyComplete===!0||d.migrationStatus===\"complete\"&&pendingPoints===0&&corrections===0)&&!unresolved;if(!target)return;target.className=\"orbit-vendor-club-statusline \"+(unresolved?\"is-warning\":\"is-success\"),alreadyComplete?target.innerHTML=\"<strong>Launch credit already complete</strong><span>\"+Number(d.eligibleFutureBookings||0)+\" eligible upcoming bookings have reward evidence. \"+Number(d.alreadyCreditedSkips||0)+\" are already credited and there is nothing waiting to issue.\"+(d.completedAt?\" Completed \"+esc(prettyDate(d.completedAt))+\".\":\"\")+\"</span>\":target.innerHTML=\"<strong>\"+Number(d.eligibleFutureBookings||0)+\" eligible upcoming booking\"+(Number(d.eligibleFutureBookings||0)===1?\"\":\"s\")+\" \\xB7 \"+pendingPoints+\" points waiting to issue</strong><span>\"+Number(d.canonicalVendors||0)+\" vendors \\xB7 \"+Number(d.excludedPastBookings||0)+\" past excluded \\xB7 \"+Number(d.excludedFullyRefunded||0)+\" fully refunded excluded \\xB7 \"+Number(d.excludedComplimentary||0)+\" complimentary excluded \\xB7 \"+Number(d.alreadyCreditedSkips||0)+\" already credited \\xB7 \"+corrections+\" past event correction\"+(corrections===1?\"\":\"s\")+\" \\xB7 \"+unresolved+\" unresolved</span>\";const canCommit=!alreadyComplete&&!unresolved&&!!d.fingerprint&&!!d.cutoffAt;commit&&(commit.disabled=!canCommit),state.vendorClubMigrationDryRunV623=canCommit?{fingerprint:d.fingerprint,cutoffAt:d.cutoffAt}:null}async function runVendorClubMigrationV620(button2,commit=!1){setLoading(button2,!0);try{if(commit&&!state.vendorClubMigrationDryRunV623)throw new Error(\"Run a fresh Dry run before Commit.\");if(commit&&!confirm(\"Commit the audited upcoming booking Vendor Club launch credit now? Past events receive no retrospective points. The ledger is idempotent and a second run must add zero duplicates.\"))return null;const proof=state.vendorClubMigrationDryRunV623,data=await api(\"/api/admin/vendors/club/migration-future\",{method:commit?\"POST\":\"GET\",body:commit?JSON.stringify(proof):void 0,cacheMs:0,timeoutMs:6e4});if(renderVendorClubMigrationV620(data),commit){setNotice2(\"Upcoming booking launch credit processed. \"+Number(data.created||0)+\" new ledger entries, \"+Number(data.correctedPast||0)+\" past event corrections, second run would create \"+Number(data.secondRunWouldCreate||0)+\".\"),state.vendorClubMigrationDryRunV623=null;const commitButton=$2(\"commitVendorClub2027V620\");commitButton&&(commitButton.disabled=!0)}return data}finally{setLoading(button2,!1)}}async function reconcileVendorClubV620(button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/reconciliation\",{cacheMs:0,timeoutMs:6e4}),target=$2(\"vendorClubReconcileV620\"),m=(data.balanceMismatches||[]).length,deferred=data.paidBookingReconciliation?.deferred===!0;return target&&(target.className=\"orbit-vendor-club-statusline \"+(m?\"is-warning\":\"is-success\"),target.innerHTML=\"<strong>\"+(m?m+\" balance mismatch\"+(m===1?\"\":\"es\"):\"Ledger balances reconcile\")+\"</strong><span>Launch Dry run: \"+Number(data.launchDryRun?.eligibleFutureBookings||0)+\" eligible bookings, \"+Number(data.launchDryRun?.excludedPastBookings||0)+\" past excluded.\"+(deferred?\" New paid booking rewards are safely deferred until launch migration Commit.\":\" Paid booking repair created \"+Number(data.paidBookingReconciliation?.created||0)+\" and reversed \"+Number(data.paidBookingReconciliation?.reversed||0)+\".\")+\"</span>\"),data}finally{setLoading(button2,!1)}}function vendorClubEmailTemplateCardV621(t){return\"<article class='orbit-panel orbit-vendor-email-card-v621'><div class='orbit-panel-header'><div><p class='orbit-kicker'>\"+esc(t.name||t.key)+\"</p><h4>\"+esc(t.subject||\"Vendor Club email\")+\"</h4><p>\"+esc(t.preheader||\"\")+\"</p></div><span class='orbit-status-pill \"+(t.approved?\"active\":\"waiting\")+\"'>\"+(t.approved?\"Approved\":\"Needs approval\")+\"</span></div><div class='orbit-action-row'><button type='button' class='secondary' data-vendor-email-preview-v621='\"+esc(t.key)+\"'>Preview</button><button type='button' class='secondary' data-vendor-email-test-v621='\"+esc(t.key)+\"'>Test send</button><button type='button' \"+(t.approved?\"class='secondary'\":\"\")+\" data-vendor-email-approve-v621='\"+esc(t.key)+\"' data-approved='\"+(t.approved?\"1\":\"0\")+\"'>\"+(t.approved?\"Revoke approval\":\"Approve template\")+\"</button></div>\"+(t.approvedAt?\"<p class='orbit-muted'>Approved \"+esc(prettyDate(t.approvedAt))+\".</p>\":\"\")+\"</article>\"}async function loadVendorClubEmailsV621(button2=null){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/email-templates\",{cacheMs:0,timeoutMs:15e3}),target=$2(\"vendorClubEmailTemplatesV621\");return target&&(target.innerHTML=(data.templates||[]).map(vendorClubEmailTemplateCardV621).join(\"\")||\"<p class='orbit-muted'>No Vendor Club email templates are available.</p>\"),data}finally{button2&&setLoading(button2,!1)}}async function previewVendorClubEmailV621(key,button2=null){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/email-templates/\"+encodeURIComponent(key)+\"/preview\",{cacheMs:0,timeoutMs:15e3}),wrap=$2(\"vendorClubEmailPreviewWrapV621\"),frame=$2(\"vendorClubEmailPreviewFrameV621\"),title=$2(\"vendorClubEmailPreviewTitleV621\");return title&&(title.textContent=data.template?.name||data.template?.subject||\"Vendor Club email\"),frame&&(frame.srcdoc=data.template?.html||\"<p>Preview unavailable.</p>\"),wrap&&(wrap.hidden=!1,wrap.scrollIntoView({behavior:\"smooth\",block:\"start\"})),data}finally{button2&&setLoading(button2,!1)}}async function testVendorClubEmailV621(key,button2=null){const to=String($2(\"vendorClubEmailTestAddressV621\")?.value||\"\").trim();if(!to)throw new Error(\"Enter the Admin/test email address to receive the Vendor Club template.\");button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/email-templates/\"+encodeURIComponent(key)+\"/test-send\",{method:\"POST\",body:JSON.stringify({to}),cacheMs:0,timeoutMs:2e4});return setNotice2(\"Vendor Club template test sent to \"+to+\" from info@orbitcardshow.co.uk.\"),data}finally{button2&&setLoading(button2,!1)}}async function approveVendorClubEmailV621(key,approved,button2=null){const next=!approved;if(confirm((next?\"Approve\":\"Revoke approval for\")+\" this Vendor Club email template?\")){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/club/email-templates/\"+encodeURIComponent(key)+\"/approval\",{method:\"POST\",body:JSON.stringify({approved:next}),cacheMs:0});return setNotice2(next?\"Vendor Club email template approved.\":\"Vendor Club email template approval revoked.\"),await loadVendorClubEmailsV621(),data}finally{button2&&setLoading(button2,!1)}}}function vendorSupportIsSandboxV635(){return $2(\"vendorClubSupportModeV635\")?.value===\"sandbox\"}let vendorSupportBadgeLastV688=null;function setVendorSupportNavBadgeV670(count){const badge=$2(\"vendorSupportNavBadgeV670\"),n=Math.max(0,Number(count||0));return badge&&(badge.textContent=n>99?\"99+\":String(n),badge.hidden=n<1,badge.setAttribute(\"aria-label\",n+\" vendor support request\"+(n===1?\"\":\"s\")+\" waiting for reply\"),badge.setAttribute(\"aria-live\",\"polite\")),n}async function refreshVendorSupportNavBadgeV670(){try{const data=await api(\"/api/admin/vendors/club/support?status=waiting\",{cacheMs:0,timeoutMs:1e4}),count=Number((data?.unanswered??(data?.tickets||[]).filter(t=>t.awaitingAdminReply&&t.status!==\"closed\").length)||0),previous=vendorSupportBadgeLastV688;return setVendorSupportNavBadgeV670(count),vendorSupportBadgeLastV688=count,state.adminAuthenticated&&count>0&&(previous===null||count>previous)&&loadOperationsV74(null,!0).catch(()=>{}),data}catch{return null}}let vendorSupportListEpochV641=0,vendorSupportDetailEpochV641=0,vendorSupportBusyV641=!1;const vendorSupportDraftsV641=new Map,vendorSupportRequestsV641=new Map;function vendorSupportKeyV641(id){return(vendorSupportIsSandboxV635()?\"sandbox:\":\"live:\")+id}function saveVendorSupportDraftV641(){const t=state.currentVendorSupportTicketV621,input=$2(\"vendorClubSupportReplyV621\");t&&input&&vendorSupportDraftsV641.set((t.sandbox?\"sandbox:\":\"live:\")+t.id,input.value)}function vendorSupportActionV641(text2,error=!1){const el=$2(\"vendorSupportActionV641\");el&&(el.textContent=text2,el.classList.toggle(\"is-error\",error))}function vendorSupportCardV621(t){const selected=state.currentVendorSupportTicketV621?.id===t.id&&!!state.currentVendorSupportTicketV621?.sandbox===vendorSupportIsSandboxV635();return\"<button type='button' class='orbit-vendor-support-row-v621 \"+(selected?\"is-selected\":\"\")+\"' aria-pressed='\"+selected+\"' data-vendor-support-open-v621='\"+esc(t.id)+\"'><span class='orbit-support-row-head-v641'><strong>\"+(t.sandbox?\"[TEST] \":\"\")+esc(t.subject||\"Vendor support\")+\"</strong><span class='orbit-status-pill \"+(t.awaitingAdminReply?\"waiting\":\"active\")+\"'>\"+esc(t.status===\"closed\"?\"Closed\":t.awaitingAdminReply?\"Needs reply\":\"Replied\")+\"</span></span><span>\"+esc(t.vendorName||t.vendorEmail||\"Vendor\")+\"</span><small>\"+esc(t.ticketNumber||\"\")+\" \\xB7 \"+esc(prettyDate(t.updatedAt||t.createdAt))+\"</small></button>\"}async function loadVendorClubSupportV621(button2=null){const epoch=++vendorSupportListEpochV641,mode=vendorSupportIsSandboxV635();button2&&setLoading(button2,!0);try{const q=String($2(\"vendorClubSupportSearchV621\")?.value||\"\").trim(),wanted=$2(\"vendorClubSupportStatusV621\")?.value||\"open\",status=[\"waiting\",\"replied\",\"inbox\"].includes(wanted)?\"open\":wanted,data=await api(\"/api/admin/vendors/club/support?sandbox=\"+(mode?\"1\":\"0\")+\"&q=\"+encodeURIComponent(q)+\"&status=\"+encodeURIComponent(status),{cacheMs:0,timeoutMs:15e3});if(epoch!==vendorSupportListEpochV641||mode!==vendorSupportIsSandboxV635())return data;const rows=(data.tickets||[]).filter(t=>wanted===\"waiting\"?t.awaitingAdminReply===!0:wanted===\"replied\"?t.awaitingAdminReply!==!0:!0);wanted===\"inbox\"&&rows.sort((a,b)=>+!!b.awaitingAdminReply-+!!a.awaitingAdminReply),document.querySelectorAll(\"[data-vendor-support-view-v642]\").forEach(b=>b.setAttribute(\"aria-pressed\",String(b.dataset.vendorSupportViewV642===wanted))),state.vendorClubSupportRowsV621=rows;const summary=$2(\"vendorClubSupportSummaryV621\"),waiting=rows.filter(t=>t.awaitingAdminReply&&t.status!==\"closed\").length;summary&&(summary.className=\"orbit-support-summary-v641\",summary.innerHTML=\"<strong>\"+rows.length+\" conversation\"+(rows.length===1?\"\":\"s\")+\"</strong><span>\"+waiting+\" waiting on Orbit\"+(mode?\" \\xB7 Sandbox only; live counts unchanged\":\"\")+\"</span>\");const target=$2(\"vendorClubSupportListV621\");return target&&(target.innerHTML=rows.map(vendorSupportCardV621).join(\"\")||'<p class=\"orbit-support-empty-v641\">No conversations match this view.</p>'),mode||refreshVendorSupportNavBadgeV670(),data}catch(e){throw epoch===vendorSupportListEpochV641&&vendorSupportActionV641(\"Inbox could not refresh. Your reply draft is preserved. \"+e.message,!0),e}finally{button2&&setLoading(button2,!1)}}async function openVendorClubSupportV621(id){saveVendorSupportDraftV641();const epoch=++vendorSupportDetailEpochV641,mode=vendorSupportIsSandboxV635();vendorSupportActionV641(\"Opening conversation\\u2026\");try{const data=await api(\"/api/admin/vendors/club/support/\"+encodeURIComponent(id)+(mode?\"?sandbox=1\":\"\"),{cacheMs:0,timeoutMs:15e3});if(epoch!==vendorSupportDetailEpochV641||mode!==vendorSupportIsSandboxV635())return data;const t=data.ticket||{},target=$2(\"vendorClubSupportDetailV621\");if(state.currentVendorSupportTicketV621=t,!target)return data;target.innerHTML=\"<button type='button' class='secondary orbit-support-back-v641' id='vendorSupportBackV641'>\\u2190 Back to inbox</button><div class='orbit-support-conversation-head-v641'><div><p class='orbit-kicker'>\"+esc(t.ticketNumber||\"Vendor Support\")+\"</p><h3>\"+(t.sandbox?\"[TEST] \":\"\")+esc(t.subject||\"Vendor Support\")+\"</h3><p>\"+esc(t.vendorName||\"Vendor\")+\" \\xB7 \"+esc(t.vendorEmail||\"\")+\"</p></div><span class='orbit-status-pill \"+(t.status===\"closed\"?\"waiting\":\"active\")+\"'>\"+esc(t.status||\"open\")+\"</span></div><div class='orbit-vendor-support-thread-v621' tabindex='0' aria-label='Conversation messages'>\"+(t.messages||[]).map(m=>\"<article class='orbit-vendor-support-message-v621 \"+(m.from===\"admin\"?\"is-admin\":\"is-vendor\")+\"'><strong>\"+(m.from===\"admin\"?\"Orbit team\":\"Vendor\")+\"</strong><p>\"+esc(m.body||\"\").replace(/\\n/g,\"<br>\")+\"</p><small>\"+esc(prettyDate(m.createdAt))+\"</small></article>\").join(\"\")+\"</div>\"+(t.archivedRun?\"<p>Archived sandbox conversation. Preserved as read-only test evidence.</p>\":t.status!==\"closed\"?\"<div class='orbit-support-composer-v641'><label for='vendorClubSupportReplyV621'>Reply to this vendor</label><textarea id='vendorClubSupportReplyV621' rows='4' maxlength='6000' placeholder='Write your reply\\u2026'></textarea><div class='orbit-action-row'><button type='button' data-vendor-support-reply-v621='\"+esc(t.id)+\"'>Send reply</button><button type='button' class='secondary' data-vendor-support-close-v621='\"+esc(t.id)+\"'>Reply &amp; close</button><button type='button' class='secondary' data-vendor-support-status-v621='\"+esc(t.id)+\"' data-status='closed'>Close without reply</button></div></div>\":\"<p class='orbit-support-closed-v641'>This conversation is closed. Its messages are preserved.</p><button type='button' class='secondary' data-vendor-support-status-v621='\"+esc(t.id)+\"' data-status='open'>Reopen request</button>\");const input=$2(\"vendorClubSupportReplyV621\");input&&(input.value=vendorSupportDraftsV641.get(vendorSupportKeyV641(id))||\"\",input.addEventListener(\"input\",()=>vendorSupportDraftsV641.set(vendorSupportKeyV641(id),input.value)));const workspace=target.closest('[data-vendor-pane=\"club-support\"]');workspace?.classList.add(\"has-conversation-v641\"),$2(\"vendorSupportBackV641\").addEventListener(\"click\",()=>{saveVendorSupportDraftV641(),workspace?.classList.remove(\"has-conversation-v641\"),document.querySelector('[data-vendor-support-open-v621=\"'+CSS.escape(id)+'\"]')?.focus()});const list=$2(\"vendorClubSupportListV621\");return list&&(list.innerHTML=(state.vendorClubSupportRowsV621||[]).map(vendorSupportCardV621).join(\"\")),vendorSupportActionV641(\"Conversation loaded.\"),data}catch(e){throw epoch===vendorSupportDetailEpochV641&&vendorSupportActionV641(\"Conversation could not load. \"+e.message,!0),e}}async function replyVendorClubSupportV621(id,closeAfter=!1,button2=null){if(vendorSupportBusyV641)return;const message=String($2(\"vendorClubSupportReplyV621\")?.value||\"\").trim();if(!message)throw Error(\"Enter a reply for the vendor.\");const mode=vendorSupportIsSandboxV635(),key=vendorSupportKeyV641(id),prior=vendorSupportRequestsV641.get(key);if(prior&&(prior.message!==message||prior.closeAfter!==closeAfter))throw Error(\"The previous reply outcome is uncertain. Retry that same reply before sending different content.\");const request=prior||{message,closeAfter,id:\"support_\"+crypto.randomUUID()};vendorSupportRequestsV641.set(key,request),vendorSupportBusyV641=!0,saveVendorSupportDraftV641();const controls=[...$2(\"vendorClubSupportDetailV621\")?.querySelectorAll(\"button[data-vendor-support-reply-v621],button[data-vendor-support-close-v621],button[data-vendor-support-status-v621]\")||[]];controls.forEach(b=>b.disabled=!0),vendorSupportActionV641(\"Saving your reply\\u2026\");try{await api(\"/api/admin/vendors/club/support/\"+encodeURIComponent(id)+\"/reply\",{method:\"POST\",body:JSON.stringify({message,status:closeAfter?\"closed\":\"open\",sandbox:mode,requestId:request.id}),cacheMs:0,timeoutMs:2e4}),vendorSupportRequestsV641.delete(key),vendorSupportDraftsV641.delete(key),mode===vendorSupportIsSandboxV635()&&state.currentVendorSupportTicketV621?.id===id&&($2(\"vendorClubSupportReplyV621\")&&($2(\"vendorClubSupportReplyV621\").value=\"\"),await loadVendorClubSupportV621(),await openVendorClubSupportV621(id),vendorSupportActionV641(closeAfter?\"Reply saved and conversation closed.\":\"Reply saved to the conversation.\"),setNotice2(\"Support reply saved.\",!1)),mode||(await refreshVendorSupportNavBadgeV670(),await loadVendorClubSupportV621(),state.currentVendorSupportTicketV621?.id===id&&await openVendorClubSupportV621(id),setNotice2(\"Support reply saved.\",!1))}catch(e){throw vendorSupportActionV641(\"Reply could not be confirmed. Your draft is saved; retry the same reply to avoid duplication. \"+e.message,!0),e}finally{vendorSupportBusyV641=!1,controls.forEach(b=>b.disabled=!1)}}async function statusVendorClubSupportV621(id,status,button2=null){if(vendorSupportBusyV641||status===\"closed\"&&!confirm(\"Close this Vendor Support request without sending a reply?\"))return;saveVendorSupportDraftV641();const mode=vendorSupportIsSandboxV635();vendorSupportBusyV641=!0,button2&&setLoading(button2,!0);try{await api(\"/api/admin/vendors/club/support/\"+encodeURIComponent(id)+\"/status\",{method:\"POST\",body:JSON.stringify({status,sandbox:mode}),cacheMs:0}),mode===vendorSupportIsSandboxV635()&&(await loadVendorClubSupportV621(),await openVendorClubSupportV621(id),vendorSupportActionV641(status===\"closed\"?\"Conversation closed.\":\"Conversation reopened.\")),mode||(await refreshVendorSupportNavBadgeV670(),await loadVendorClubSupportV621(),await openVendorClubSupportV621(id),vendorSupportActionV641(status===\"closed\"?\"Conversation closed.\":\"Conversation reopened.\"))}finally{vendorSupportBusyV641=!1,button2&&setLoading(button2,!1)}}function vendorDateV385(value){if(!value)return\"Date not detected\";const d=new Date(value);return Number.isNaN(d.getTime())?\"Date not detected\":d.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\",timeZone:\"Europe/London\"})}function vendorDateInputV388(value){if(!value)return\"\";const d=new Date(value);return Number.isNaN(d.getTime())?\"\":d.toISOString().slice(0,10)}function vendorOrderAdminUrl(orderId){const id=String(orderId||\"\").match(/(\\d+)$/)?.[1];return id?\"https://admin.shopify.com/store/4b1z9j-2x/orders/\"+encodeURIComponent(id):null}async function loadVendorCancellationAuditV770(button2=null){const target=$2(\"vendorCancellationAuditListV770\");if(target){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/cancellation-audit?limit=300\",{timeoutMs:18e3,cacheMs:0}),rows=data.rows||[];if(!rows.length){target.innerHTML=\"<p class='orbit-muted'>No recorded cancellations need review.</p>\";return}target.innerHTML=\"<p><strong>\"+Number(data.needsReconciliation||0)+\" needs reconciliation</strong> \\xB7 \"+rows.length+\" historical cancellations reviewed in this read-only audit. No financial changes occur unless you explicitly confirm an action.</p><div class='orbit-table-wrap'><table><thead><tr><th>Vendor / order</th><th>Event</th><th>Paid line</th><th>Recorded credit</th><th>Reward</th><th>Status</th><th>Action</th></tr></thead><tbody>\"+rows.map(row=>{const orderUrl=vendorOrderAdminUrl(row.shopifyOrderId),order=orderUrl?\"<a href='\"+esc(orderUrl)+\"' target='_blank' rel='noopener'>\"+esc(row.orderName||row.shopifyOrderId)+\" \\u2197</a>\":esc(row.orderName||row.shopifyOrderId),credit=row.creditProof?\"Verified \"+vendorMoneyV384(row.creditedAmount):row.creditIds.length?\"Unverified credit: \"+row.creditIds.map(esc).join(\", \"):\"Not linked\",actions=row.status===\"needs_reconciliation\"||row.status===\"credit_proof_missing\"||row.status===\"credited_needs_points_review\"?\"<button type='button' class='secondary' data-cancel-audit-action-v770='confirm_no_credit' data-id='\"+esc(row.id)+\"'>No credit, retain points</button> <button type='button' class='secondary' data-cancel-audit-action-v770='link_existing_credit' data-id='\"+esc(row.id)+\"'>Link existing credit</button> <button type='button' class='secondary' data-cancel-audit-action-v770='reconcile_linked_credit' data-id='\"+esc(row.id)+\"'>Recheck linked credit</button>\":\"<span class='orbit-muted'>Audited</span>\";return\"<tr><td><strong>\"+esc(row.vendorName||\"Vendor\")+\"</strong><small>\"+esc(row.vendorEmail||\"\")+\"</small>\"+order+\"</td><td>\"+esc(row.sourceEventLabel||row.sourceEventKey||\"Unknown\")+\"</td><td>\"+(row.sourcePaidAmount==null?\"Unknown\":vendorMoneyV384(row.sourcePaidAmount))+\"</td><td>\"+credit+\"</td><td>\"+Number(row.rewardOutstandingPoints||0)+\" outstanding of \"+Number(row.rewardOriginalPoints||0)+\"</td><td><strong>\"+esc(row.status.replace(/_/g,\" \"))+\"</strong><small>\"+esc(row.rewardReconciliation?.reason||row.rewardReconciliation?.status||\"\")+\"</small></td><td>\"+actions+\"</td></tr>\"}).join(\"\")+\"</tbody></table></div>\"}finally{button2&&setLoading(button2,!1)}}}async function handleVendorCancellationAuditV770(button2){const action=button2.dataset.cancelAuditActionV770,id=button2.dataset.id,creditId=action===\"link_existing_credit\"?prompt(\"Enter the EXISTING account credit ID. Orbit will verify vendor, exact Shopify line and matching amount before linking. No new credit is created.\",\"\"):null;if(action===\"link_existing_credit\"&&!creditId)return;const reason=prompt(\"Enter the evidence supporting this decision (e.g. manual \\xA3140 credit dated ... or confirmed no refund). This will be saved for audit.\",\"\");if(reason?.trim()&&confirm(\"Apply this exact reconciliation? Orbit will NOT create new money or a Shopify refund. Points may be reversed only when exact credit and award evidence match.\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/cancellation-audit/\"+encodeURIComponent(id)+\"/resolve\",{method:\"POST\",body:JSON.stringify({action,creditId,reason}),timeoutMs:25e3,cacheMs:0});await loadVendorCancellationAuditV770(),setNotice2(result.rewardReconciliation?.status===\"needs_reconciliation\"?\"Credit linked, but points need manual review: \"+result.rewardReconciliation.reason:\"Cancellation audit saved. \"+(result.rewardReconciliation?.pointsReversed?result.rewardReconciliation.pointsReversed+\" Vendor Points reversed.\":\"No duplicate credit was issued.\"))}finally{setLoading(button2,!1)}}}let vendorBookingChangesTimerV487=null,vendorBookingChangesRowsV488=[];function renderVendorBookingChangesV487(rows){const target=$2(\"vendorBookingChangesTableV487\"),summary=$2(\"vendorBookingChangesSummaryV487\");if(!target)return;const items=rows||[];vendorBookingChangesRowsV488=items;const transfers=items.filter(x=>x.action===\"transfer\").length,cancellations=items.filter(x=>x.action===\"cancellation\").length;if(summary&&(summary.className=\"orbit-vendor-booking-summary-v496\",summary.innerHTML=\"<strong>\"+items.length+\" booking change\"+(items.length===1?\"\":\"s\")+\"</strong><span>\"+transfers+\" transfer\"+(transfers===1?\"\":\"s\")+\" \\xB7 \"+cancellations+\" cancellation\"+(cancellations===1?\"\":\"s\")+\" \\xB7 Shopify source orders remain unchanged.</span>\"),!items.length){target.innerHTML=\"<p class='orbit-muted'>No matching transferred or cancelled Vendor bookings were found.</p>\";return}target.innerHTML=\"<table><thead><tr><th>When</th><th>Action</th><th>Vendor</th><th>Order</th><th>From</th><th>To</th><th>Reason / status</th><th>Internal note</th><th></th></tr></thead><tbody>\"+items.map(row=>{const orderUrl=vendorOrderAdminUrl(row.shopifyOrderId),order=orderUrl?\"<a href='\"+esc(orderUrl)+\"' target='_blank' rel='noopener'>\"+esc(row.orderName||row.shopifyOrderId||\"Order\")+\" \\u2197</a>\":esc(row.orderName||\"Manual booking\"),action=row.action===\"transfer\"?\"Transferred\":\"Cancelled\",credit=row.accountCredit,rowCredit=credit?\"Credit: \"+vendorMoneyV384(credit.remainingAmount)+\" remaining of \"+vendorMoneyV384(credit.originalAmount):\"\",detail=row.action===\"cancellation\"?[row.reason,row.refundStatus&&\"Refund: \"+humanStatus(row.refundStatus),rowCredit].filter(Boolean).join(\" \\xB7 \"):[row.reason,row.transferPricing?.difference!=null?\"Difference: \"+vendorMoneyV384(row.transferPricing.difference):\"\",row.convertedFromCancellation?\"Converted from cancellation\":\"\"].filter(Boolean).join(\" \\xB7 \");return\"<tr><td>\"+esc(prettyDate(row.changedAt))+\"</td><td><span class='orbit-status-pill \"+(row.action===\"transfer\"?\"active\":\"waiting\")+\"'>\"+action+\"</span></td><td><strong>\"+esc(row.vendorName||\"Vendor\")+\"</strong>\"+(row.vendorEmail?\"<small>\"+esc(row.vendorEmail)+\"</small>\":\"\")+\"</td><td>\"+order+\"</td><td>\"+esc(row.sourceEventLabel||\"\\u2014\")+\"</td><td>\"+esc(row.destinationEventLabel||\"\\u2014\")+\"</td><td>\"+esc(detail||\"\\u2014\")+\"</td><td>\"+esc(row.operatorNote||\"\\u2014\")+\"</td><td><button type='button' class='secondary' data-vendor-booking-change-edit-v488='\"+esc(row.id)+\"'>Edit</button> <button type='button' class='secondary' data-vendor-resolution-v542='\"+esc(row.id)+\"'>\"+(row.resolved?\"Reopen\":\"Mark resolved\")+\"</button></td></tr>\"}).join(\"\")+\"</tbody></table>\"}async function loadVendorBookingChangesV487(button2=null){const q=String($2(\"vendorBookingChangesSearchV487\")?.value||\"\").trim();button2&&setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/booking-changes?q=\"+encodeURIComponent(q)+\"&limit=250&workspaceStatus=\"+encodeURIComponent($2(\"vendorBookingChangesStateV542\")?.value||\"open\"),{timeoutMs:15e3,cacheMs:0});return renderVendorBookingChangesV487(result.rows||[]),result}finally{button2&&setLoading(button2,!1)}}function scheduleVendorBookingChangesSearchV487(){vendorBookingChangesTimerV487&&clearTimeout(vendorBookingChangesTimerV487),vendorBookingChangesTimerV487=setTimeout(()=>loadVendorBookingChangesV487().catch(err=>setNotice2(err.message||err,!0)),250)}function openVendorBookingChangeEditV488(id){const row=vendorBookingChangesRowsV488.find(x=>String(x.id)===String(id));if(!row)return;$2(\"vendorBookingChangeEditIdV488\").value=row.id||\"\",$2(\"vendorBookingChangeEditTitleV488\").textContent=(row.action===\"cancellation\"?\"Edit cancellation\":\"Edit transfer\")+\" \\xB7 \"+(row.vendorName||row.orderName||\"Vendor\"),$2(\"vendorBookingChangeEditSubtitleV488\").textContent=[row.orderName,row.sourceEventLabel,row.destinationEventLabel].filter(Boolean).join(\" \\xB7 \")||\"Orbit internal Vendor booking-change record\";const refundWrap=$2(\"vendorBookingChangeRefundWrapV488\"),refund=$2(\"vendorBookingChangeRefundV488\");refundWrap&&(refundWrap.hidden=row.action!==\"cancellation\"),refund&&(refund.value=row.action===\"cancellation\"&&row.refundStatus||\"unknown\"),$2(\"vendorBookingChangeNoteV488\").value=row.operatorNote||\"\";const actions=$2(\"vendorBookingChangeCancellationActionsV492\"),creditSummary=$2(\"vendorBookingChangeCreditSummaryV492\"),createCredit=$2(\"vendorBookingChangeCreateCreditV492\"),convert=$2(\"vendorBookingChangeConvertTransferV492\"),creditManage=$2(\"vendorBookingChangeCreditManageV493\"),actionResult=$2(\"vendorBookingChangeActionResultV492\");if(actions&&(actions.hidden=row.action!==\"cancellation\"),actionResult&&(actionResult.hidden=!0,actionResult.textContent=\"\"),row.action===\"cancellation\"){const credit=row.accountCredit||null,remaining=Number(credit?.remainingAmount||0),creditable=Number(row.creditableAmount||credit?.sourcePaidAmount||credit?.originalAmount||0);creditSummary&&(creditSummary.className=\"orbit-info-banner \"+(credit?\"success\":\"info\"),creditSummary.innerHTML=credit?\"<strong>Vendor Account Credit \\xB7 \"+esc(vendorMoneyV384(remaining))+\" held on account</strong><span>Original credit \"+esc(vendorMoneyV384(credit.originalAmount))+\". Keep it here until the vendor chooses another show, then manually deduct the GBP amount you use.</span>\":\"<strong>No account credit yet</strong><span>Choose Not refunded above and enter the GBP credit to hold on this vendor account. Orbit will not move any money.</span>\"),createCredit&&(createCredit.hidden=!!credit,createCredit.disabled=!1),convert&&(convert.hidden=!!credit,convert.disabled=!1),creditManage&&(creditManage.hidden=!credit||remaining<=0),$2(\"vendorBookingChangeCreditAmountV493\")&&($2(\"vendorBookingChangeCreditAmountV493\").value=credit?Number(credit.originalAmount||0).toFixed(2):creditable>0?creditable.toFixed(2):\"\"),$2(\"vendorBookingChangeCreditUsedV493\")&&($2(\"vendorBookingChangeCreditUsedV493\").value=\"\"),$2(\"vendorBookingChangeEventV492\")&&($2(\"vendorBookingChangeEventV492\").value=\"\")}$2(\"vendorBookingChangeEditDialogV488\")?.showModal()}async function saveVendorBookingChangeEditV488(button2){const id=$2(\"vendorBookingChangeEditIdV488\")?.value||\"\",row=vendorBookingChangesRowsV488.find(x=>String(x.id)===String(id));if(!id||!row)return;const payload={operatorNote:$2(\"vendorBookingChangeNoteV488\")?.value||\"\"};row.action===\"cancellation\"&&(payload.refundStatus=$2(\"vendorBookingChangeRefundV488\")?.value||\"unknown\"),setLoading(button2,!0);try{await api(\"/api/admin/vendors/booking-changes/\"+encodeURIComponent(id),{method:\"PATCH\",body:JSON.stringify(payload),timeoutMs:15e3,cacheMs:0}),$2(\"vendorBookingChangeEditDialogV488\")?.close(),await loadVendorBookingChangesV487(),setNotice2(\"Vendor \"+(row.action===\"cancellation\"?\"cancellation\":\"transfer\")+\" record updated. Shopify source order was not changed.\")}finally{setLoading(button2,!1)}}function currentVendorBookingChangeV492(){const id=$2(\"vendorBookingChangeEditIdV488\")?.value||\"\";return vendorBookingChangesRowsV488.find(x=>String(x.id)===String(id))||null}function vendorBookingChangeResultV492(message,error=!1){const box=$2(\"vendorBookingChangeActionResultV492\");box&&(box.hidden=!1,box.classList.toggle(\"error\",!!error),box.textContent=String(message||\"\"))}async function refreshVendorBookingChangeDialogV492(id){await loadVendorBookingChangesV487();const next=vendorBookingChangesRowsV488.find(x=>String(x.id)===String(id));return next?openVendorBookingChangeEditV488(id):$2(\"vendorBookingChangeEditDialogV488\")?.close(),next}async function ensureVendorCancellationNotRefundedV493(row){const refund=$2(\"vendorBookingChangeRefundV488\")?.value||\"unknown\",operatorNote=$2(\"vendorBookingChangeNoteV488\")?.value||\"\";if(refund!==\"not_refunded\")throw new Error(\"Choose Not refunded above before creating credit or converting this cancellation.\");return row.refundStatus===\"not_refunded\"&&String(row.operatorNote||\"\")===String(operatorNote||\"\")?row:(await api(\"/api/admin/vendors/booking-changes/\"+encodeURIComponent(row.id),{method:\"PATCH\",body:JSON.stringify({refundStatus:\"not_refunded\",operatorNote}),timeoutMs:15e3,cacheMs:0}),await loadVendorBookingChangesV487(),currentVendorBookingChangeV492()||row)}async function createVendorAccountCreditV492(button2){let row=currentVendorBookingChangeV492();if(!row||row.action!==\"cancellation\")return;const amount=Number($2(\"vendorBookingChangeCreditAmountV493\")?.value||0);if(!Number.isFinite(amount)||amount<=0)throw new Error(\"Enter the GBP amount you want to hold as Vendor Account Credit.\");setLoading(button2,!0);try{row=await ensureVendorCancellationNotRefundedV493(row);const result=await api(\"/api/admin/vendors/booking-changes/\"+encodeURIComponent(row.id)+\"/account-credit\",{method:\"POST\",body:JSON.stringify({amount}),timeoutMs:15e3,cacheMs:0});vendorBookingChangeResultV492(result.message||\"Account credit created: \"+vendorMoneyV384(result.credit?.originalAmount)),setNotice2(\"Vendor Account Credit is now held on the vendor account. No refund or charge was made.\"),await refreshVendorBookingChangeDialogV492(row.id)}finally{setLoading(button2,!1)}}async function convertVendorCancellationToTransferV492(button2){let row=currentVendorBookingChangeV492();const ev=selectedVendorEventV3882(\"vendorBookingChangeEventV492\");if(!(!row||row.action!==\"cancellation\")){if(!ev.key)throw new Error(\"Select the destination event first.\");if(confirm(\"Convert this cancellation into a transfer to \"+ev.label+\"? No refund or charge will be made and the Shopify source order will remain unchanged.\")){setLoading(button2,!0);try{row=await ensureVendorCancellationNotRefundedV493(row);const result=await api(\"/api/admin/vendors/booking-changes/\"+encodeURIComponent(row.id)+\"/convert-transfer\",{method:\"POST\",body:JSON.stringify({toEventKey:ev.key,toEventLabel:ev.label,toEventDate:ev.date||null,reason:\"Converted from cancelled booking in Booking Changes\"}),timeoutMs:15e3,cacheMs:0});setNotice2(\"Cancellation converted to transfer. \"+(result.message||\"Shopify source order unchanged.\")),await refreshVendorBookingChangeDialogV492(row.id)}finally{setLoading(button2,!1)}}}}async function useVendorAccountCreditV492(button2){const row=currentVendorBookingChangeV492(),credit=row?.accountCredit,ev=selectedVendorEventV3882(\"vendorBookingChangeEventV492\");if(!row||!credit)throw new Error(\"Create Vendor Account Credit first.\");if(!ev.key)throw new Error(\"Select the destination event first.\");const quantity=Math.max(1,Math.min(20,Number($2(\"vendorBookingChangeCreditQuantityV492\")?.value||1))),requestId=globalThis.crypto?.randomUUID?.()||\"credit-use-\"+Date.now()+\"-\"+Math.random().toString(36).slice(2);setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/account-credits/\"+encodeURIComponent(credit.id)+\"/book\",{method:\"POST\",body:JSON.stringify({eventKey:ev.key,eventLabel:ev.label,eventDate:ev.date||null,quantity,requestId}),timeoutMs:15e3,cacheMs:0});vendorBookingChangeResultV492(result.message||\"Credit-funded booking created.\"),setNotice2(result.amountToInvoice>0?\"Manual Vendor booking created. Invoice \"+vendorMoneyV384(result.amountToInvoice)+\" difference.\":\"Manual Vendor booking created using account credit.\"),await refreshVendorBookingChangeDialogV492(row.id)}finally{setLoading(button2,!1)}}async function adjustVendorAccountCreditV493(button2,{clear=!1,creditId=null,customerKey=null}={}){const row=currentVendorBookingChangeV492(),creditIdResolved=creditId||row?.accountCredit?.id;if(!creditIdResolved)throw new Error(\"No Vendor Account Credit is available.\");const bookingValue=clear?null:Number($2(\"vendorBookingChangeCreditUsedV493\")?.value||0);if(!clear&&(!Number.isFinite(bookingValue)||bookingValue<=0))throw new Error(\"Enter the GBP value of the replacement booking.\");const label=clear?\"Clear the full remaining Vendor Account Credit?\":\"Apply this credit against a \"+vendorMoneyV384(bookingValue)+\" replacement booking?\";if(confirm(label+\" This only updates Orbit's credit ledger and does not move money or edit Shopify.\")){setLoading(button2,!0);try{const requestId=globalThis.crypto?.randomUUID?.()||\"credit-adjust-\"+Date.now()+\"-\"+Math.random().toString(36).slice(2),result=await api(\"/api/admin/vendors/account-credits/\"+encodeURIComponent(creditIdResolved)+\"/adjust\",{method:\"POST\",body:JSON.stringify({bookingValue,clearRemaining:clear,reason:\"Credit used against manually assigned Vendor tables\",requestId}),timeoutMs:15e3,cacheMs:0});return setNotice2(result.message||\"Vendor Account Credit updated.\"),customerKey?await viewVendorCustomerV398(customerKey):row&&await refreshVendorBookingChangeDialogV492(row.id),result}finally{setLoading(button2,!1)}}}function vendorLineLabel(b){return b.type===\"complimentary\"?\"Manual table\":b.lineKind===\"display_case\"?\"Display case\":b.lineKind===\"addon\"?\"Add-on\":\"Vendor table\"}function selectedVendorCustomerKeysV390(){return[...document.querySelectorAll(\"[data-vendor-customer-select]:checked\")].map(x=>x.value).filter(Boolean)}function updateVendorMergeButtonV390(){const b=$2(\"mergeVendorCustomers\");if(!b)return;const count=selectedVendorCustomerKeysV390().length;b.disabled=count<2,b.textContent=count>=2?\"Merge \"+count+\" selected customers\":\"Merge selected customers\"}function vendorCustomerSortValueV414(c,key){return[\"orders\",\"events\",\"tables\",\"displayCases\",\"spend\"].includes(key)?Number(c?.[key]||0):key===\"lastBookingAt\"?Date.parse(c?.lastBookingAt||\"1970-01-01\")||0:key===\"businessName\"?String(c?.businessName||c?.instagram||\"\").toLowerCase():key===\"contact\"?String(c?.email||c?.phone||\"\").toLowerCase():String(c?.name||\"\").toLowerCase()}function sortVendorCustomersV414(rows){const sort=state.vendorCustomerSortV414||{key:\"spend\",dir:\"desc\"},mult=sort.dir===\"asc\"?1:-1;return[...rows||[]].sort((a,b)=>{const av=vendorCustomerSortValueV414(a,sort.key),bv=vendorCustomerSortValueV414(b,sort.key);return typeof av==\"number\"&&typeof bv==\"number\"?(av-bv)*mult:String(av).localeCompare(String(bv),void 0,{numeric:!0,sensitivity:\"base\"})*mult})}function vendorCustomerSortHeadingV414(label,key){const sort=state.vendorCustomerSortV414||{key:\"spend\",dir:\"desc\"},mark=sort.key===key?sort.dir===\"asc\"?\" \\u25B2\":\" \\u25BC\":\" \\u2195\";return\"<button type='button' class='orbit-vendor-sort-heading' data-vendor-customer-sort='\"+key+\"'>\"+label+\"<span>\"+mark+\"</span></button>\"}function renderVendorCustomersV398(customers){const target=$2(\"vendorCustomersTable\");if(!target)return;const source=customers||[];state.vendorCustomers=source;const rows=sortVendorCustomersV414(source);if(!rows.length){target.innerHTML=\"<p class='orbit-muted'>No vendor customer records were produced from the stored Shopify archive.</p>\";return}target.innerHTML=\"<table><thead><tr><th class='orbit-vendor-customer-select'><span class='sr-only'>Select</span></th><th>\"+vendorCustomerSortHeadingV414(\"Vendor\",\"name\")+\"</th><th>\"+vendorCustomerSortHeadingV414(\"Business identifier\",\"businessName\")+\"</th><th>\"+vendorCustomerSortHeadingV414(\"Email / phone\",\"contact\")+\"</th><th>Vendor Club</th><th>\"+vendorCustomerSortHeadingV414(\"Orders\",\"orders\")+\"</th><th>\"+vendorCustomerSortHeadingV414(\"Shows\",\"events\")+\"</th><th>\"+vendorCustomerSortHeadingV414(\"Tables\",\"tables\")+\"</th><th>\"+vendorCustomerSortHeadingV414(\"Cases\",\"displayCases\")+\"</th><th>\"+vendorCustomerSortHeadingV414(\"Lifetime spend\",\"spend\")+\"</th><th>\"+vendorCustomerSortHeadingV414(\"Last booking\",\"lastBookingAt\")+\"</th><th></th></tr></thead><tbody>\"+rows.map(c=>{const search=String(c.searchText||[c.name,c.email,c.phone].filter(Boolean).join(\" \")).toLowerCase(),displayName=c.businessName||c.name||\"Unknown vendor\",bookingName=c.businessName&&c.name&&c.name!==c.businessName?c.name:null;return\"<tr data-vendor-customer-row data-vendor-search='\"+esc(search)+\"'><td class='orbit-vendor-customer-select'><input type='checkbox' data-vendor-customer-select value='\"+esc(c.key||\"\")+\"'></td><td><strong>\"+esc(displayName)+\"</strong>\"+(bookingName?\"<small>Booking name: \"+esc(bookingName)+\"</small>\":\"\")+(c.merged?\"<small>Merged Orbit identity</small>\":\"\")+\"</td><td>\"+esc(c.businessName?c.name||\"\\u2014\":c.instagram||\"\\u2014\")+(c.businessName&&c.instagram?\"<small>\"+esc(c.instagram)+\"</small>\":\"\")+\"</td><td>\"+esc(c.email||\"\\u2014\")+(c.phone?\"<small>\"+esc(c.phone)+\"</small>\":\"\")+\"</td><td data-vendor-club-status-cell-v624='\"+esc(c.key||\"\")+\"'>\"+vendorClubAdoptionBadgeV624((state.vendorClubStatusMapV624||{})[String(c.key||\"\")])+\"</td><td>\"+Number(c.orders||0)+\"</td><td>\"+Number(c.events||0)+\"</td><td>\"+Number(c.tables||0)+\"</td><td>\"+Number(c.displayCases||0)+\"</td><td>\"+esc(vendorMoneyV384(c.spend))+\"</td><td>\"+esc(c.lastBookingAt?prettyDate(c.lastBookingAt):\"\\u2014\")+\"</td><td><button type='button' class='secondary' data-vendor-customer-view='\"+esc(c.key||\"\")+\"'>Open</button></td></tr>\"}).join(\"\")+\"</tbody></table>\",updateVendorMergeButtonV390(),applyVendorCustomerSearchV398(),!state.vendorClubStatusMapV624||!Object.keys(state.vendorClubStatusMapV624).length?loadVendorClubStatusMapV624().catch(()=>{}):applyVendorClubStatusCellsV624()}function applyVendorCustomerSearchV398(){const q=String($2(\"vendorCustomerSearch\")?.value||\"\").trim().toLowerCase();document.querySelectorAll(\"[data-vendor-customer-row]\").forEach(row=>row.classList.toggle(\"orbit-vendor-row-hidden\",!!q&&!String(row.dataset.vendorSearch||row.textContent||\"\").toLowerCase().includes(q)))}function renderVendorDuplicateSuggestionsV398(rows){const box=$2(\"vendorDuplicateSuggestions\");if(!box)return;const items=rows||[];if(state.vendorDuplicateSuggestions=items,!items.length){box.hidden=!0,box.innerHTML=\"\";return}box.hidden=!1,box.innerHTML=\"<div class='orbit-panel-header'><div><p class='orbit-kicker'>Possible duplicates</p><h3>\"+items.length+\" customer match\"+(items.length===1?\"\":\"es\")+\" worth checking</h3><p>Orbit never auto-merges identities. Confirm only the ones you recognise.</p></div></div><div class='orbit-vendor-duplicate-list'>\"+items.slice(0,12).map(x=>{const a=x.customers?.[0]||{},b=x.customers?.[1]||{};return\"<div class='orbit-vendor-duplicate-row'><div><strong>\"+esc(a.name)+\"</strong> <span>\"+esc(a.email||\"\")+\"</span><br><strong>\"+esc(b.name)+\"</strong> <span>\"+esc(b.email||\"\")+\"</span><small>\"+esc((x.reasons||[]).join(\" \\xB7 \"))+\" \\xB7 \"+Number(x.score||0)+\"% confidence</small></div><div class='orbit-action-row'><button type='button' class='secondary' data-vendor-duplicate-dismiss='\"+esc(x.id)+\"'>Do not merge</button><button type='button' class='secondary' data-vendor-duplicate-merge='\"+esc(x.id)+\"'>Review merge</button></div></div>\"}).join(\"\")+\"</div>\"}function applyVendorEventSearchV398(targetId,inputId){const q=String($2(inputId)?.value||\"\").trim().toLowerCase(),target=$2(targetId);target&&target.querySelectorAll(\"[data-vendor-event-card]\").forEach(card=>card.classList.toggle(\"orbit-vendor-card-hidden\",!!q&&!String(card.dataset.vendorSearch||card.textContent||\"\").toLowerCase().includes(q)))}function vendorTablePlanIsManuallyCompleteV466(plan){return String(plan?.status||\"\").toLowerCase()===\"ready\"&&!!plan?.completionConfirmedAt}function ensureFinanceAttendanceDialogV509(){let dialog=$2(\"financeAttendanceDialogV509\");return dialog||(dialog=document.createElement(\"dialog\"),dialog.id=\"financeAttendanceDialogV509\",dialog.className=\"orbit-admin-dialog orbit-finance-attendance-dialog-v510\",dialog.innerHTML=\"<div class='orbit-dialog-heading orbit-finance-attendance-heading-v510'><div><p class='orbit-kicker'>Past Event Finance</p><h3 id='financeAttendanceTitleV509'>Attendance</h3></div><button type='button' class='secondary orbit-finance-attendance-close-v510' data-finance-attendance-close-v509>Close</button></div><div class='orbit-finance-attendance-toolbar-v510'><button type='button' class='secondary' data-finance-attendance-refresh-v509>Refresh from Eventbrite</button><div id='financeAttendanceRefreshStatusV510' class='orbit-finance-attendance-refresh-status-v510' hidden></div></div><div id='financeAttendanceBodyV509' class='orbit-finance-attendance-body-v510'><p class='orbit-muted'>Loading attendance\\u2026</p></div>\",document.body.appendChild(dialog),dialog)}async function renderFinanceAttendanceV509(eventId,eventName){const dialog=ensureFinanceAttendanceDialogV509(),body=$2(\"financeAttendanceBodyV509\"),title=$2(\"financeAttendanceTitleV509\");dialog.dataset.eventId=eventId,title&&(title.textContent=(eventName||\"Past event\")+\" \\xB7 Attendance\"),body&&(body.innerHTML=\"<p class='orbit-muted'>Loading attendance\\u2026</p>\"),dialog.open||dialog.showModal();const full=await api(\"/api/admin/attendance/events/\"+encodeURIComponent(eventId),{cacheMs:0});return body&&(body.innerHTML=attendanceDetailMarkup(full),wireHistoricalAddOnRecoveryV480(body,eventId,async()=>renderFinanceAttendanceV509(eventId,eventName)),wireDoorCorrectionsV489(body,eventId,async()=>renderFinanceAttendanceV509(eventId,eventName))),full}function financeAttendanceRefreshStatusV510(message,state2){const node=$2(\"financeAttendanceRefreshStatusV510\");if(node){if(!message){node.hidden=!0,node.textContent=\"\",node.className=\"orbit-finance-attendance-refresh-status-v510\";return}node.hidden=!1,node.textContent=message,node.className=\"orbit-finance-attendance-refresh-status-v510 \"+(state2?\"is-\"+state2:\"\")}}async function refreshFinanceAttendanceFromEventbriteV509(button2){const dialog=ensureFinanceAttendanceDialogV509(),eventId=dialog.dataset.eventId;if(!eventId)return;const eventName=String($2(\"financeAttendanceTitleV509\")?.textContent||\"\").replace(/ \u00B7 Attendance$/,\"\");setLoading(button2,!0);const startedAt=Date.now();let pollTimer=null;const elapsed=()=>Math.max(0,Math.round((Date.now()-startedAt)/1e3));try{financeAttendanceRefreshStatusV510(\"Starting Eventbrite attendance download\\u2026\",\"working\");const started=await api(\"/api/admin/attendance/events/\"+encodeURIComponent(eventId)+\"/prepare-jobs\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:15e3}),jobId=started?.job?.id;if(!jobId)throw new Error(\"Orbit could not start the Eventbrite attendance refresh job.\");let job=started.job;for(;job&&[\"queued\",\"running\"].includes(String(job.status||\"\").toLowerCase());)if(financeAttendanceRefreshStatusV510(\"Downloading Eventbrite attendance\\u2026 \"+elapsed()+\"s elapsed. Large historical events can take a few minutes.\",\"working\"),await new Promise(resolve=>{pollTimer=setTimeout(resolve,1200)}),pollTimer=null,job=(await api(\"/api/admin/attendance/prepare-jobs/\"+encodeURIComponent(jobId),{cacheMs:0,timeoutMs:15e3}))?.job||null,elapsed()>600)throw new Error(\"The Eventbrite attendance refresh is still running after 10 minutes. Do not start another refresh; check again shortly.\");if(!job)throw new Error(\"Orbit lost the Eventbrite attendance refresh status.\");if(String(job.status||\"\").toLowerCase()!==\"completed\")throw new Error(job.error||\"Eventbrite attendance refresh failed.\");financeAttendanceRefreshStatusV510(\"Eventbrite attendance downloaded. Reloading the report\\u2026\",\"success\"),await renderFinanceAttendanceV509(eventId,eventName);const admissions=Number(job.result?.preparedAdmissions??job.result?.totalSynced??0);financeAttendanceRefreshStatusV510(\"Refresh complete\"+(admissions?\" \\xB7 \"+admissions+\" admissions loaded\":\"\")+\". Eventbrite itself was not changed.\",\"success\"),setNotice2(\"Attendance refreshed from Eventbrite. Eventbrite itself was not changed.\")}catch(error){throw financeAttendanceRefreshStatusV510(error.message||\"Eventbrite attendance refresh failed.\",\"error\"),error}finally{pollTimer&&clearTimeout(pollTimer),setLoading(button2,!1)}}function renderVendorEventsV398(targetId,events,searchInputId=null){const target=$2(targetId);if(!target)return;const rows=events||[];if(!rows.length){target.innerHTML=\"<p class='orbit-muted'>No events in this group yet.</p>\";return}target.innerHTML=rows.map(e=>{const search=[e.displayName||e.label,e.eventDate,e.venue?.name,...(e.bookings||[]).flatMap(b=>[b.customer?.name,b.customer?.email,b.orderName])].filter(Boolean).join(\" \").toLowerCase(),profit=e.finance?.profit,finance=e.finance||{},isPast=e.state===\"past\",metaUnknown=[\"unavailable\",\"not_requested\"].includes(finance.metaAccounting?.status),tax=Number(finance.tax??(finance.totalIncome||e.sales||0)*.2),costsIncludingTax=Number(finance.expenses?.total||0)+tax,financialLine=isPast?\"<div class='orbit-vendor-event-finance-mini'><span>Income <strong>\"+esc(vendorMoneyV384(finance.totalIncome||e.sales))+\"</strong></span><span>Costs <strong>\"+(metaUnknown?\"\\u2014\":esc(vendorMoneyV384(costsIncludingTax)))+\"</strong></span><span class='tax'>Tax <strong>\"+esc(vendorMoneyV384(tax))+\"</strong></span><span class='\"+(Number(profit||0)<0?\"loss\":\"profit\")+\"'>P&amp;L <strong>\"+(metaUnknown?\"\\u2014\":esc(vendorMoneyV384(profit)))+\"</strong></span>\"+(metaUnknown?\"<small>Advertising not loaded; view Finance for accounting</small>\":\"\")+\"</div>\":\"\",planReady=String(e.tablePlan?.status||\"\").toLowerCase()===\"ready\"&&!!e.tablePlan?.completionConfirmedAt,briefSent=!!e.vendorBriefingLastSent?.sentAt,liveOps=isPast?\"\":\"<div class='orbit-vendor-live-hero-cards'><span><small>Vendors attending</small><strong>\"+Number(e.customers||0)+\"</strong></span><span><small>Total tables booked</small><strong>\"+Number(e.tables||0)+\"</strong></span><span class='\"+(planReady?\"ready\":\"pending\")+\"'><small>Table plan complete</small><strong>\"+(planReady?\"Yes\":\"No\")+\"</strong></span><span class='\"+(briefSent?\"ready\":\"pending\")+\"'><small>Vendor email sent</small><strong>\"+(briefSent?\"Yes \\xB7 \"+esc(prettyDate(e.vendorBriefingLastSent.sentAt)):\"No\")+\"</strong></span></div>\",eventbriteId=e.eventbriteEventId||e.financials?.eventbriteEventId||\"\",attendanceButton=targetId===\"financePastEventsV463\"&&eventbriteId?\"<button type='button' class='secondary' data-finance-attendance-v509='\"+esc(eventbriteId)+\"' data-event-name='\"+esc(e.displayName||e.label||\"Past event\")+\"'>Attendance</button>\":\"\",nav=\"<div class='orbit-vendor-event-card-nav'><button type='button' data-vendor-event-open='\"+esc(e.key)+\"'>Open event</button>\"+(targetId===\"financePastEventsV463\"?\"<button type='button' class='secondary' data-vendor-archive-floorplan='\"+esc(e.key)+\"'>Floor plan</button>\":\"<button type='button' class='secondary' data-vendor-event-tool='planner' data-event-key='\"+esc(e.key)+\"'>Floor plan</button>\")+(isPast?\"\":\"<button type='button' class='secondary' data-vendor-event-tool='briefings' data-event-key='\"+esc(e.key)+\"'>Briefing</button>\")+\"<button type='button' class='secondary' data-vendor-event-finance='\"+esc(e.key)+\"'>Financial report</button><button type='button' class='secondary' data-vendor-event-tool='documents' data-event-key='\"+esc(e.key)+\"'>Documents</button>\"+attendanceButton+\"</div>\";return\"<article class='orbit-panel orbit-vendor-event-card orbit-vendor-event-summary' data-vendor-event-card data-vendor-search='\"+esc(search)+\"'><div><p class='orbit-kicker'>\"+esc(vendorDateV385(e.eventDate))+(e.eventEndDate?\" \\u2013 \"+esc(vendorDateV385(e.eventEndDate)):\"\")+\"</p><h3>\"+esc(e.displayName||e.label||\"Uncategorised event\")+\"</h3><p>\"+Number(e.customers||0)+\" vendors \\xB7 \"+Number(e.tables||0)+\" tables \\xB7 \"+Number(e.displayCases||0)+\" display cases \\xB7 \"+esc(vendorMoneyV384(e.sales))+\" vendor income</p>\"+(e.venue?.name?\"<small>\"+esc(e.venue.name)+\"</small>\":\"\")+\"</div>\"+liveOps+financialLine+nav+\"</article>\"}).join(\"\"),applyVendorEventSearchV398(targetId,searchInputId||(targetId===\"vendorLiveEvents\"?\"vendorLiveEventSearch\":\"vendorPastEventSearch\"))}function populateVendorEventSelectorsV398(events){const rows=(events||[]).filter(e=>e&&e.key),options=\"<option value=''>Select event</option>\"+rows.map(e=>\"<option value='\"+esc(e.key)+\"' data-label='\"+esc(e.displayName||e.label||\"\")+\"' data-date='\"+esc(vendorDateInputV388(e.eventDate))+\"'>\"+esc(e.displayName||e.label||\"Uncategorised event\")+(e.eventDate?\" \\xB7 \"+esc(vendorDateV385(e.eventDate)):\"\")+\"</option>\").join(\"\");[\"vendorCompEvent\",\"vendorTransferEvent\",\"vendorBookingChangeEventV492\",\"vendorPlannerEventSelect\",\"vendorBriefingEventSelect\"].forEach(id=>{const el=$2(id);if(el){const previous=el.value;el.innerHTML=options,previous&&[...el.options].some(o=>o.value===previous)&&(el.value=previous)}});const all=(state.vendorWorkspace?.allEvents||rows).filter(e=>e&&e.key),allOptions=\"<option value=''>Select event</option>\"+all.map(e=>\"<option value='\"+esc(e.key)+\"'>\"+esc(e.displayName||e.label||\"Uncategorised event\")+\" \\xB7 \"+esc(vendorDateV385(e.eventDate))+\"</option>\").join(\"\"),docs=$2(\"vendorDocumentsEventSelect\");if(docs){const previous=docs.value;docs.innerHTML=allOptions,previous&&[...docs.options].some(o=>o.value===previous)&&(docs.value=previous)}}function selectedVendorEventV3882(selectId){const select=$2(selectId),option=select?.selectedOptions?.[0];return{key:select?.value||\"\",label:option?.dataset?.label||option?.textContent||\"\",date:option?.dataset?.date||\"\"}}function renderVendorOrderHistoryV433(rows){const target=$2(\"vendorOrderHistoryTable\");if(!target)return;const orders=rows||[];state.vendorOrderHistory=orders;const q=String($2(\"vendorOrderHistorySearch\")?.value||\"\").trim().toLowerCase();if(!orders.length){target.innerHTML=\"<p class='orbit-muted'>No stored Shopify order rows are available.</p>\";return}if(!q){target.innerHTML=\"<div class='orbit-info-banner'><strong>\"+Number(orders.length).toLocaleString(\"en-GB\")+\" historical Shopify rows available</strong><span>Use the search box above to load only the records you need.</span></div>\";return}const filtered=orders.filter(o=>[o.orderName,o.financialStatus,o.customer?.name,o.customer?.email,...o.eventLabels||[]].filter(Boolean).join(\" \").toLowerCase().includes(q)).slice(0,100);if(!filtered.length){target.innerHTML=\"<p class='orbit-muted'>No Shopify vendor orders match that search.</p>\";return}target.innerHTML=\"<div class='orbit-info-banner'><strong>\"+filtered.length+(filtered.length===100?\"+\":\"\")+\" matching row\"+(filtered.length===1?\"\":\"s\")+\"</strong><span>Only matching history is rendered to keep the Vendor workspace fast.</span></div><div class='orbit-table-wrap'><table><thead><tr><th>Order</th><th>Vendor</th><th>Matched event</th><th>Tables</th><th>Cases</th><th>Spend</th><th>Date</th><th></th></tr></thead><tbody>\"+filtered.map(o=>{const url=vendorOrderAdminUrl(o.shopifyOrderId);return\"<tr><td><strong>\"+esc(o.orderName||\"\\u2014\")+\"</strong><small>\"+esc(o.financialStatus||\"\")+\"</small></td><td>\"+esc(o.customer?.name||\"Unknown vendor\")+\"<small>\"+esc(o.customer?.email||\"\")+\"</small></td><td>\"+esc((o.eventLabels||[]).join(\" \\xB7 \")||(o.unresolvedLines?\"Needs reconciliation\":\"Uncategorised\"))+\"</td><td>\"+Number(o.tables||0)+\"</td><td>\"+Number(o.displayCases||0)+\"</td><td>\"+esc(vendorMoneyV384(o.spend))+\"</td><td>\"+esc(o.createdAt?prettyDate(o.createdAt):\"\\u2014\")+\"</td><td>\"+(url?\"<a class='orbit-button-link' target='_blank' rel='noopener' href='\"+esc(url)+\"'>View Shopify \\u2197</a>\":\"\")+\"</td></tr>\"}).join(\"\")+\"</tbody></table></div>\"}function renderVendorOrderHistoryV398(rows){renderVendorOrderHistoryV433(rows)}function renderVendorVenuesV398(venues){const target=$2(\"vendorVenuesList\");if(!target)return;const rows=venues||[];if(state.vendorVenues=rows,!rows.length){target.innerHTML=\"<article class='orbit-panel'><h3>No venues yet</h3><p class='orbit-muted'>Add the venues you use regularly so future events inherit access information, hire costs and floor-plan defaults.</p></article>\";return}target.innerHTML=rows.map(v=>\"<article class='orbit-panel orbit-vendor-venue-card'><p class='orbit-kicker'>\"+(v.source===\"eventbrite\"?\"Imported venue\":\"Venue\")+\"</p><h3>\"+esc(v.name)+\"</h3><p>\"+esc([v.address,v.postcode].filter(Boolean).join(\", \")||\"Address not added\")+\"</p>\"+(v.source===\"eventbrite\"?\"<small class='orbit-vendor-source-note'>Eventbrite \\xB7 \"+Number((v.eventbriteEventIds||[]).length)+\" linked event\"+(Number((v.eventbriteEventIds||[]).length)===1?\"\":\"s\")+(v.manualEditedAt?\" \\xB7 manually enriched\":\" \\xB7 ready to enrich\")+\"</small>\":\"\")+\"<div class='orbit-vendor-venue-facts'><span>Setup <strong>\"+esc(v.defaultSetupTime||\"\\u2014\")+\"</strong></span><span>Default hire <strong>\"+esc(vendorMoneyV384(v.defaultHireCost))+\"</strong></span><span>Floor plans <strong>\"+Number(v.floorPlanCount||0)+\"</strong></span></div><button type='button' class='secondary' data-vendor-venue-edit='\"+esc(v.id)+\"'>Open venue</button></article>\").join(\"\")}function renderVendorReconciliationV398(rows){const target=$2(\"vendorReconciliationList\");if(!target)return;const items=rows||[];if(state.vendorReconciliation=items,$2(\"vendorReconcileCount\")&&($2(\"vendorReconcileCount\").textContent=Number(items.length).toLocaleString(\"en-GB\")),!items.length){target.innerHTML=\"<div class='orbit-info-banner success'><strong>Everything confidently assigned</strong><span>No Shopify lines currently need manual event reconciliation.</span></div>\";return}const options=(state.vendorWorkspace?.allEvents||[]).map(e=>\"<option value='\"+esc(e.key)+\"' data-label='\"+esc(e.displayName||e.label||\"\")+\"' data-date='\"+esc(vendorDateInputV388(e.eventDate))+\"'>\"+esc(e.displayName||e.label||\"\")+\" \\xB7 \"+esc(vendorDateV385(e.eventDate))+\"</option>\").join(\"\");target.innerHTML=\"<div class='orbit-vendor-reconcile-list'>\"+items.map(r=>\"<article class='orbit-panel orbit-vendor-reconcile-row' data-reconcile-id='\"+esc(r.id)+\"'><div><p class='orbit-kicker'>\"+esc(vendorLineLabel(r))+\" \\xB7 \"+esc(r.orderName||r.shopifyOrderId)+\"</p><h3>\"+esc(r.customer?.name||\"Unknown vendor\")+\"</h3><p>\"+esc(r.reason||\"Needs event confirmation\")+\" \\xB7 \"+Number(r.lineQuantity||0)+\" item(s) \\xB7 \"+esc(vendorMoneyV384(r.sales))+\"</p></div><select data-reconcile-event><option value=''>Choose the correct event\\u2026</option>\"+options+\"</select><button type='button' data-vendor-reconcile-save='\"+esc(r.id)+\"'>Confirm event</button></article>\").join(\"\")+\"</div>\"}function vendorPaneRequestNameV453(pane){return{reconcile:\"reconcile\",merge:\"merge\",shopify:\"shopify\",rules:\"rules\",briefings:\"live\",documents:\"past\"}[pane]||pane||\"customers\"}function appendVendorPagerV453(targetId,pageInfo,pane){const target=$2(targetId);if(!target||!pageInfo||Number(pageInfo.pages||1)<=1)return;const wrap=document.createElement(\"div\");wrap.className=\"orbit-vendor-pagination-v453\",wrap.innerHTML=\"<button type='button' class='secondary' data-vendor-page='\"+Math.max(1,Number(pageInfo.page)-1)+\"' \"+(Number(pageInfo.page)<=1?\"disabled\":\"\")+\">Previous</button><span>Page \"+Number(pageInfo.page)+\" of \"+Number(pageInfo.pages)+\" \\xB7 \"+Number(pageInfo.total).toLocaleString(\"en-GB\")+\" records</span><button type='button' class='secondary' data-vendor-page='\"+(Number(pageInfo.page)+1)+\"' \"+(Number(pageInfo.page)>=Number(pageInfo.pages)?\"disabled\":\"\")+\">Next</button>\",target.appendChild(wrap),wrap.querySelectorAll(\"[data-vendor-page]\").forEach(btn=>btn.addEventListener(\"click\",()=>loadVendorWorkspaceV398(null,!1,!1,pane,Number(btn.dataset.vendorPage))))}function setVendorTaskBadgeV690(element,rawCount){const numeric=Number(rawCount),count=Number.isFinite(numeric)?Math.max(0,Math.trunc(numeric)):0;if(!element)return count;const visible=count>0;return element.textContent=count.toLocaleString(\"en-GB\"),element.hidden=!visible,element.setAttribute(\"aria-hidden\",String(!visible)),visible?element.style.removeProperty(\"display\"):element.style.setProperty(\"display\",\"none\",\"important\"),element.closest(\"button\")?.classList.toggle(\"has-count\",visible),count}function applyVendorTaskCountsV461(payload={}){setVendorTaskBadgeV690($2(\"vendorMergeTaskCount\"),payload.possibleDuplicateRows),setVendorTaskBadgeV690($2(\"vendorReconciliationTaskCount\"),payload.reconciliationRows)}async function exportVendorCustomersV530(button2){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/customers/export\",{cacheMs:0,timeoutMs:3e4}),rows=Array.isArray(data.rows)?data.rows:[],lines=[\"First Name,Last Name,Email address\"].concat(rows.map(row=>[row.firstName,row.lastName,row.email].map(csvCellV48304).join(\",\"))),blob=new Blob([\"\\uFEFF\"+lines.join(`\\r\n`)],{type:\"text/csv;charset=utf-8\"}),url=URL.createObjectURL(blob),a=document.createElement(\"a\");a.href=url,a.download=\"orbit-vendor-customers-\"+new Date().toISOString().slice(0,10)+\".csv\",document.body.appendChild(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(url),1e3),setNotice2(\"Vendor customer CSV exported: \"+rows.length+\" customer\"+(rows.length===1?\"\":\"s\")+\".\")}finally{button2&&setLoading(button2,!1)}}async function loadVendorTaskCountsV461(attempt=0){try{const data=await api(\"/api/admin/vendors/workspace-metrics\",{cacheMs:0,timeoutMs:8e3});return applyVendorTaskCountsV461(data),!data.ready&&attempt<20&&setTimeout(()=>loadVendorTaskCountsV461(attempt+1).catch(()=>{}),3e3),data}catch(error){throw attempt<20&&setTimeout(()=>loadVendorTaskCountsV461(attempt+1).catch(()=>{}),3e3),error}}function renderFinancePastEventsV465(events=[]){const target=$2(\"financePastEventsV463\"),summary=$2(\"financeOverviewSummaryV463\"),rows=events||[];if(!target)return;state.financePastEventsV464=rows;const metaUnknown=rows.some(e=>e.finance?.metaAccounting?.status===\"unavailable\"),income=rows.reduce((n,e)=>n+Number(e?.finance?.totalIncome||e?.sales||0),0),costs=rows.reduce((n,e)=>{const eventIncome=Number(e?.finance?.totalIncome||e?.sales||0),tax=Number(e?.finance?.tax??eventIncome*.2);return n+Number(e?.finance?.expenses?.total||0)+tax},0),profit=rows.reduce((n,e)=>n+Number(e?.finance?.profit||0),0);if(summary){const profitClass=Number(profit)<0?\"loss\":\"profit\";summary.innerHTML=\"<article class='income'><span>Income</span><strong>\"+esc(vendorMoneyV384(income))+\"</strong></article><article class='costs'><span>Costs</span><strong>\"+(metaUnknown?\"\\u2014\":esc(vendorMoneyV384(costs)))+\"</strong></article><article class='\"+profitClass+\"'><span>P&amp;L</span><strong>\"+(metaUnknown?\"\\u2014\":esc(vendorMoneyV384(profit)))+\"</strong></article>\",summary.dataset.eventCount=String(rows.length),summary.title=rows.length+\" past event\"+(rows.length===1?\"\":\"s\")+\" loaded from Orbit\"}if(!rows.length){target.innerHTML=\"<div class='orbit-empty-state'><strong>No past events yet</strong><span>Past Vendor events will appear here automatically.</span></div>\";return}renderVendorEventsV398(\"financePastEventsV463\",rows,\"financePastEventSearchV463\")}function renderFinancePastEventsV464(events=[]){return renderFinancePastEventsV465(events)}function financeReadStatusV539(message,kind=\"warning\"){const target=$2(\"financeAccountingStatusV539\");target&&(target.hidden=!0,target.textContent=\"\",target.className=\"orbit-info-banner\"),message&&kind===\"warning\"&&setNotice2(\"Finance: \"+message,!1),message&&kind===\"error\"&&setNotice2(\"Finance: \"+message,!0)}async function loadFinanceWorkspaceV464(button2,forceRefresh=!1){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/vendors/workspace?pane=past&page=1&limit=50&financials=\"+(forceRefresh===!0?\"true\":\"false\")+(forceRefresh?\"&refresh=1\":\"\"),{timeoutMs:forceRefresh?3e4:15e3,cacheMs:0});state.vendorWorkspace={...state.vendorWorkspace||{},...data},renderFinancePastEventsV464(data.pastEvents||[]);const meta=data.diagnostics?.metaAccounting||{status:\"current\"},savedAt=meta.asOf?\" Snapshot saved \"+prettyDate(meta.asOf)+\".\":\"\";return meta.status===\"saved\"?financeReadStatusV539((meta.warning||\"Showing the last complete stored advertising snapshot while accounting refresh is in progress.\")+savedAt+\" Figures will stay fixed until you choose Refresh report.\",\"info\"):meta.status===\"unavailable\"?financeReadStatusV539((meta.warning||\"Advertising accounting is temporarily unavailable.\")+savedAt+\" Stored figures will not auto-refresh. Use Refresh report or Retry loading when you want to check again.\",\"warning\"):financeReadStatusV539(\"\"),data}catch(error){if(financeReadStatusV539(\"Finance could not refresh: \"+(error.message||\"connection unavailable\")+\". \"+(state.financePastEventsV464?\"Previously loaded figures are unchanged and may be out of date. \":\"\")+\"Use Retry loading to try again.\",\"error\"),!state.financePastEventsV464){const target=$2(\"financePastEventsV463\"),summary=$2(\"financeOverviewSummaryV463\");target&&(target.innerHTML=\"<div class='orbit-empty-state'><strong>Finance could not load</strong><span>Retry loading. No zero totals or partial advertising report have been substituted.</span></div>\"),summary&&(summary.innerHTML=\"<article><span>Income</span><strong>\\u2014</strong></article><article><span>Costs</span><strong>\\u2014</strong></article><article><span>P&amp;L</span><strong>\\u2014</strong></article>\")}throw error}finally{button2&&setLoading(button2,!1)}}$2(\"financeRetryReadV539\")?.addEventListener(\"click\",e=>loadFinanceWorkspaceV464(e.currentTarget,!1).catch(()=>{}));async function loadVendorWorkspaceV398(button2,includeFinancials=!1,forceRefresh=!1,paneOverride=null,page=1){const pane=paneOverride||state.currentVendorPane||\"customers\";if([\"sponsorships\",\"sandbox\",\"growth\",\"competitions\",\"vendor-shop\",\"flyer-studio\"].includes(pane))return null;button2&&setLoading(button2,!0);const diagnostics=$2(\"vendorWorkspaceDiagnostics\");diagnostics&&pane===\"shopify\"&&(diagnostics.textContent=\"Loading lightweight \"+pane+\" Vendor data from Orbit\\u2026\");try{const requestPane=vendorPaneRequestNameV453(pane),searchId=pane===\"customers\"?\"vendorCustomerSearch\":pane===\"shopify\"?\"vendorOrderHistorySearch\":pane===\"reconcile\"?\"vendorReconciliationSearch\":\"\",q=searchId?String($2(searchId)?.value||\"\").trim():\"\",customerSort=state.vendorCustomerSortV414||{key:\"spend\",dir:\"desc\"},sortQuery=pane===\"customers\"?\"&sortKey=\"+encodeURIComponent(customerSort.key)+\"&sortDir=\"+encodeURIComponent(customerSort.dir):\"\",url=\"/api/admin/vendors/workspace?pane=\"+encodeURIComponent(requestPane)+\"&page=\"+encodeURIComponent(page)+\"&limit=50\"+sortQuery+(q?\"&q=\"+encodeURIComponent(q):\"\")+(includeFinancials?\"&financials=true\":\"\")+(forceRefresh?\"&refresh=1\":\"\"),workspaceResponse=await api(url,{timeoutMs:includeFinancials?45e3:15e3,cacheMs:forceRefresh?0:1e4});$2(\"vendorLoadFailureV540-\"+pane)?.remove(),state.vendorPaneLoadedV540=state.vendorPaneLoadedV540||{},state.vendorPaneLoadedV540[pane]=!0,state.vendorWorkspace={...state.vendorWorkspace||{},...workspaceResponse},state.vendorVenues=workspaceResponse.venues||state.vendorVenues||[],workspaceResponse.bookings&&(state.vendorBookings=workspaceResponse.bookings),pane===\"customers\"&&(renderVendorCustomersV398(workspaceResponse.customers||[]),appendVendorPagerV453(\"vendorCustomersTable\",workspaceResponse.customerPage,pane)),pane===\"merge\"&&renderVendorDuplicateSuggestionsV398(workspaceResponse.possibleDuplicates||[]),(pane===\"live\"||pane===\"briefings\")&&(renderVendorEventsV398(\"vendorLiveEvents\",workspaceResponse.liveEvents||[]),populateVendorEventSelectorsV398(workspaceResponse.liveEvents||[])),(pane===\"past\"||pane===\"documents\")&&renderVendorEventsV398(\"vendorPastEvents\",workspaceResponse.pastEvents||[]),pane===\"venues\"&&(renderVendorVenuesV398(workspaceResponse.venues||[]),loadVendorFloorPlansV401().then(()=>{populateVendorFloorPlanSelectV401()}).catch(()=>{})),pane===\"rules\"&&setVendorRichEditorV421(\"vendorGlobalRules\",workspaceResponse.globalSettings?.globalRulesHtml,workspaceResponse.globalSettings?.globalRules),pane===\"reconcile\"&&(renderVendorReconciliationV398(workspaceResponse.reconciliation||[]),appendVendorPagerV453(\"vendorReconciliationList\",workspaceResponse.reconciliationPage,pane)),pane===\"shopify\"&&(renderVendorOrderHistoryV398(workspaceResponse.orderHistory||[]),appendVendorPagerV453(\"vendorOrderHistoryTable\",workspaceResponse.orderHistoryPage,pane)),pane===\"planner\"&&(populateVendorEventSelectorsV398(workspaceResponse.liveEvents||[]),loadVendorFloorPlansV401().then(()=>populateVendorFloorPlanSelectV401()).catch(()=>{}));const ov=workspaceResponse.overview||{},vd=workspaceResponse.diagnostics||{};if(pane!==\"rules\"){applyVendorTaskCountsV461({possibleDuplicateRows:Number(workspaceResponse.diagnostics?.possibleDuplicateRows??(workspaceResponse.possibleDuplicates||[]).length),reconciliationRows:Number(workspaceResponse.reconciliationPage?.total??workspaceResponse.diagnostics?.reconciliationRows??0)});const reconcileTotal=Number(workspaceResponse.reconciliationRows||ov.reconciliationRows||vd.reconciliationRows||0);$2(\"vendorOrderCount\")&&($2(\"vendorOrderCount\").textContent=Number(ov.totalOrders||vd.sourceOrders||0).toLocaleString(\"en-GB\")),$2(\"vendorGrossSales\")&&($2(\"vendorGrossSales\").textContent=vendorMoneyV384(ov.grossSales)),$2(\"vendorCustomerCount\")&&($2(\"vendorCustomerCount\").textContent=Number(ov.uniqueCustomers||workspaceResponse.customerPage?.total||vd.customerRows||0).toLocaleString(\"en-GB\")),$2(\"vendorReconcileCount\")&&($2(\"vendorReconcileCount\").textContent=reconcileTotal.toLocaleString(\"en-GB\")),renderVendorSyncHeaderV497(ov)}if(pane===\"shopify\"){const syncText=vendorSyncTextV384(ov.sync,ov.totalOrders),oldestVendorOrder=ov.earliestOrderAt?new Date(ov.earliestOrderAt).toLocaleDateString(\"en-GB\",{day:\"2-digit\",month:\"short\",year:\"numeric\"}):\"Not available\";$2(\"vendorSyncSummary\")&&($2(\"vendorSyncSummary\").textContent=syncText+\" \\xB7 Background incremental refresh runs every 5 minutes.\"),$2(\"vendorHistoryStatus\")&&($2(\"vendorHistoryStatus\").innerHTML=\"<h3>Orbit vendor archive</h3><p>\"+esc(syncText)+\"</p><p><strong>Automatic refresh:</strong> every 5 minutes in the background \\xB7 <strong>Orders stored:</strong> \"+Number(ov.totalOrders||0).toLocaleString(\"en-GB\")+\" \\xB7 <strong>Oldest stored order:</strong> \"+esc(oldestVendorOrder)+\" \\xB7 <strong>Recorded sales:</strong> \"+esc(vendorMoneyV384(ov.grossSales))+\" \\xB7 <strong>Customers:</strong> \"+Number(ov.uniqueCustomers||0).toLocaleString(\"en-GB\")+\"</p>\");const c=$2(\"vendorShopifyConnection\");c&&(c.innerHTML=\"<strong>Stored archive ready</strong><span>Background incremental Shopify refresh runs every 5 minutes. Normal page load still reads Orbit Mongo only.</span>\");const n=$2(\"vendorConnectionNotice\");n&&(n.className=\"orbit-info-banner success\",n.innerHTML=\"<strong>Automatic Vendor refresh active</strong><span>Orbit refreshes new/changed Shopify Vendor data in the background every 5 minutes without making this page wait on Shopify.</span>\")}if(diagnostics&&pane===\"shopify\"&&(diagnostics.textContent=\"Loaded \"+pane+\" pane \\xB7 \"+Number(vd.requestElapsedMs||0).toLocaleString(\"en-GB\")+\"ms server time \\xB7 payload: \"+Number(vd.customerPayload||0)+\" customers / \"+Number(vd.eventPayload||0)+\" events / \"+Number(vd.historyPayload||0)+\" history rows.\"),state.currentVendorEventKey){const fresh=(workspaceResponse.allEvents||[]).find(x=>x.key===state.currentVendorEventKey);fresh&&(state.currentVendorEvent=fresh,renderVendorEventDetailV398(fresh))}return workspaceResponse}catch(error){diagnostics&&pane===\"shopify\"&&(diagnostics.textContent=\"Vendor pane failed to load: \"+(error.message||String(error)));const target=$2(pane===\"live\"||pane===\"briefings\"?\"vendorLiveEvents\":pane===\"past\"?\"vendorPastEvents\":pane===\"customers\"?\"vendorCustomersTable\":\"\");if(target){$2(\"vendorLoadFailureV540-\"+pane)?.remove();const message='<div id=\"vendorLoadFailureV540-'+esc(pane)+'\" class=\"orbit-notice error\" role=\"status\"><strong>Vendor data could not load.</strong><p>'+esc(error.message||String(error))+'</p><button type=\"button\" data-vendor-retry-v540=\"'+esc(pane)+'\">Retry loading</button></div>';state.vendorPaneLoadedV540?.[pane]?target.insertAdjacentHTML(\"afterbegin\",message):target.innerHTML=message,target.querySelector(\"[data-vendor-retry-v540]\")?.addEventListener(\"click\",e=>loadVendorWorkspaceV398(e.currentTarget,!1,!0,pane,page).catch(()=>{}))}throw error}finally{button2&&setLoading(button2,!1)}}function renderVendorSyncHeaderV497(overview={}){const target=$2(\"vendorHeaderSyncStatusV497\");if(!target)return;const sync=overview.sync||{},total=Number(overview.totalOrders||0),running=sync.status===\"running\",failed=sync.status===\"failed\",last=sync.lastSuccessfulAt||sync.completedAt||sync.updatedAt||null;target.className=\"orbit-vendor-header-sync-v497 \"+(failed?\"warning\":running?\"running\":\"success\"),target.innerHTML=\"<strong>\"+(running?\"Shopify sync running\":failed?\"Last sync needs attention\":\"Shopify auto-sync active\")+\"</strong><span>\"+total.toLocaleString(\"en-GB\")+\" order records \\xB7 automatic check every 5 minutes\"+(last?\" \\xB7 last completed \"+esc(prettyDate(last)):\"\")+\"</span>\"}async function waitForVendorSyncV497(previousCompletedAt,timeoutMs=3e4){const started=Date.now();let latest=null,sawRunning=!1;for(;Date.now()-started<timeoutMs;){await new Promise(resolve=>setTimeout(resolve,900));const data=await api(\"/api/admin/vendors/overview?orbit_vendor_sync_poll=\"+Date.now(),{cacheMs:0,timeoutMs:1e4});latest=data,renderVendorSyncHeaderV497(data||{});const sync=data?.sync||{};if(sync.status===\"running\"){sawRunning=!0;continue}if(sync.status===\"failed\")throw new Error(sync.error||\"Vendor Shopify sync failed.\");const completedAt=sync.lastSuccessfulAt||sync.completedAt||null;if(sync.status===\"complete\"&&(sawRunning||!previousCompletedAt||completedAt!==previousCompletedAt))return data}return latest}async function startVendorHistoricalSyncV384(button2){button2&&setLoading(button2,!0);const before=state.vendorWorkspace?.overview||{},beforeOrders=Number(before.totalOrders||0),beforeCompletedAt=before.sync?.lastSuccessfulAt||before.sync?.completedAt||null;try{const result=await api(\"/api/admin/vendors/shopify/sync\",{method:\"POST\",body:JSON.stringify({full:!1})});setNotice2(result.alreadyRunning?\"Vendor Shopify sync is already running \\u2014 waiting for the result.\":result.mode===\"historical_backfill\"?\"Initial historical Vendor backfill started.\":\"Checking Shopify now. Automatic checks also run every 5 minutes.\");let after=null;try{after=await waitForVendorSyncV497(beforeCompletedAt,3e4)}catch(error){throw setNotice2(error.message||String(error),!0),error}await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\");const sync=after?.sync||state.vendorWorkspace?.overview?.sync||{},afterOrders=Number(after?.totalOrders??state.vendorWorkspace?.overview?.totalOrders??beforeOrders),delta=afterOrders-beforeOrders,orderUpdates=Number(sync.ordersImported||0),productUpdates=Number(sync.productsImported||0),outcome=delta>0?\"Imported \"+delta.toLocaleString(\"en-GB\")+\" new order record\"+(delta===1?\"\":\"s\")+\".\":orderUpdates||productUpdates?\"No new order records, but Shopify returned \"+orderUpdates.toLocaleString(\"en-GB\")+\" changed order\"+(orderUpdates===1?\"\":\"s\")+\" and \"+productUpdates.toLocaleString(\"en-GB\")+\" changed product\"+(productUpdates===1?\"\":\"s\")+\".\":\"Everything was already up to date \\u2014 no new Vendor Shopify data found.\";return setNotice2(outcome+\" Stored order records: \"+beforeOrders.toLocaleString(\"en-GB\")+\" \\u2192 \"+afterOrders.toLocaleString(\"en-GB\")+\".\"),{...result,completedSync:sync,beforeOrders,afterOrders}}finally{button2&&setLoading(button2,!1)}}async function startVendorFullResyncV396(button2){if(confirm(\"Run a FULL Vendor Shopify resync? Normal operation does not need this. Use it only to repair the local archive.\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/shopify/sync\",{method:\"POST\",body:JSON.stringify({full:!0})});return setNotice2(result.alreadyRunning?\"Vendor Shopify sync is already running.\":\"Full Vendor Shopify repair resync started.\"),await new Promise(resolve=>setTimeout(resolve,750)),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),result}finally{setLoading(button2,!1)}}}let vendorTransferEventsSequenceV767=0;function vendorTransferAvailableEventsV767(events=[],currentEventKey=\"\"){const ukParts=Object.fromEntries(new Intl.DateTimeFormat(\"en-GB\",{timeZone:\"Europe/London\",year:\"numeric\",month:\"2-digit\",day:\"2-digit\"}).formatToParts(new Date).filter(x=>x.type!==\"literal\").map(x=>[x.type,x.value])),today=ukParts.year+\"-\"+ukParts.month+\"-\"+ukParts.day;return(Array.isArray(events)?events:[]).filter(e=>e&&e.key&&String(e.key)!==currentEventKey&&vendorDateInputV388(e.eventDate)>=today&&e.active!==!1&&e.deletedAt==null&&e.cancelledAt==null).sort((a,b)=>String(a.eventDate||\"\").localeCompare(String(b.eventDate||\"\")))}function paintVendorTransferEventsV767(events,currentEventKey=\"\"){const select=$2(\"vendorTransferEvent\");if(!select)return 0;const rows=vendorTransferAvailableEventsV767(events,currentEventKey),previous=select.value;return select.innerHTML=\"<option value=''>\"+(rows.length?\"Select destination event\":\"No upcoming events available\")+\"</option>\"+rows.map(e=>\"<option value='\"+esc(e.key)+\"' data-label='\"+esc(e.displayName||e.label||\"\")+\"' data-date='\"+esc(vendorDateInputV388(e.eventDate))+\"'>\"+esc(e.displayName||e.label||\"Event\")+\" \\xB7 \"+esc(vendorDateV385(e.eventDate))+(e.venue?.name?\" \\xB7 \"+esc(e.venue.name):\"\")+\"</option>\").join(\"\"),select.disabled=!rows.length,previous&&rows.some(e=>e.key===previous)&&(select.value=previous),rows.length}async function loadVendorTransferEventsV767(currentEventKey=\"\"){const select=$2(\"vendorTransferEvent\"),dialog=$2(\"vendorTransferDialog\");if(!select||!dialog?.open)return;const seq=++vendorTransferEventsSequenceV767;let count=paintVendorTransferEventsV767(state.vendorWorkspace?.liveEvents||[],currentEventKey);count||(select.disabled=!0,select.innerHTML=\"<option value=''>Loading upcoming events...</option>\");let retry=$2(\"vendorTransferRetryV767\");retry||(retry=document.createElement(\"button\"),retry.id=\"vendorTransferRetryV767\",retry.type=\"button\",retry.className=\"secondary\",retry.textContent=\"Retry loading events\",retry.hidden=!0,retry.addEventListener(\"click\",()=>loadVendorTransferEventsV767(dialog.dataset.currentEventKey||\"\").catch(()=>{})),select.insertAdjacentElement(\"afterend\",retry)),retry.hidden=!0;try{const response=await api(\"/api/admin/vendors/workspace?pane=live&page=1&limit=50\",{cacheMs:0,timeoutMs:2e4});if(seq!==vendorTransferEventsSequenceV767||!dialog.open)return;const rows=response.liveEvents||[];state.vendorWorkspace={...state.vendorWorkspace||{},liveEvents:rows},count=paintVendorTransferEventsV767(rows,currentEventKey),retry.hidden=!!count}catch(error){if(seq!==vendorTransferEventsSequenceV767||!dialog.open)return;count||(select.disabled=!0,select.innerHTML=\"<option value=''>Event list unavailable</option>\"),retry.hidden=!1,setNotice2(\"Unable to refresh destination events: \"+(error.message||String(error)),!0)}}function openVendorTransferV385(button2){$2(\"vendorTransferOrderId\").value=button2.dataset.orderId||\"\",$2(\"vendorTransferLineId\").value=button2.dataset.lineId||\"\",$2(\"vendorTransferAdjustmentId\")&&($2(\"vendorTransferAdjustmentId\").value=button2.dataset.adjustmentId||\"\"),$2(\"vendorTransferEvent\").value=\"\",$2(\"vendorTransferEventDate\").value=\"\",$2(\"vendorTransferReason\").value=\"\",$2(\"vendorTransferResult\").hidden=!0;const preview=$2(\"vendorTransferPricingPreview\");preview&&(preview.hidden=!0,preview.textContent=\"\",preview.className=\"orbit-notice\");const dialog=$2(\"vendorTransferDialog\");dialog&&(dialog.dataset.currentEventKey=button2.dataset.currentEventKey||\"\",dialog.showModal(),loadVendorTransferEventsV767(dialog.dataset.currentEventKey).catch(error=>setNotice2(error.message||String(error),!0)))}async function loadVendorTransferPricingV4852(){const target=$2(\"vendorTransferPricingPreview\"),adjustmentId=$2(\"vendorTransferAdjustmentId\")?.value||\"\",ev=selectedVendorEventV3882(\"vendorTransferEvent\");if(!target)return null;if(!ev.key)return target.hidden=!0,null;if(adjustmentId)return target.hidden=!1,target.className=\"orbit-notice\",target.innerHTML=\"<strong>Complimentary booking</strong><br>No paid source value is being carried. Transfer remains operational only.\",null;target.hidden=!1,target.className=\"orbit-notice\",target.textContent=\"Calculating table-price difference\\u2026\";try{const pricing=await api(\"/api/admin/vendors/bookings/transfer-preview\",{method:\"POST\",body:JSON.stringify({shopifyOrderId:$2(\"vendorTransferOrderId\").value,lineItemId:$2(\"vendorTransferLineId\").value,toEventKey:ev.key,toEventLabel:ev.label}),cacheMs:0});return target.className=\"orbit-notice \"+(pricing.action===\"invoice_difference\"?\"warning\":\"success\"),target.innerHTML=\"<strong>\"+esc(pricing.quantity)+\" table\"+(Number(pricing.quantity)===1?\"\":\"s\")+\" \\xB7 Existing booking value \"+(pricing.sourceBookingValue==null?\"unknown\":\"\\xA3\"+Number(pricing.sourceBookingValue).toFixed(2))+\" \\xB7 Destination \"+(pricing.destinationBookingValue==null?\"price not set\":\"\\xA3\"+Number(pricing.destinationBookingValue).toFixed(2))+\"</strong><br>\"+esc(pricing.message||\"\"),pricing}catch(err){return target.className=\"orbit-notice warning\",target.textContent=err.message||String(err),null}}async function saveVendorTransferV385(button2){setLoading(button2,!0);try{const ev=selectedVendorEventV3882(\"vendorTransferEvent\");if(!ev.key)throw new Error(\"Select a destination event.\");const adjustmentId=$2(\"vendorTransferAdjustmentId\")?.value||\"\";adjustmentId||await loadVendorTransferPricingV4852();const payload={shopifyOrderId:$2(\"vendorTransferOrderId\").value,lineItemId:$2(\"vendorTransferLineId\").value,toEventKey:ev.key,toEventLabel:ev.label,toEventDate:ev.date||null,reason:$2(\"vendorTransferReason\").value},result=adjustmentId?await api(\"/api/admin/vendors/bookings/complimentary-action\",{method:\"POST\",body:JSON.stringify({...payload,adjustmentId,action:\"transfer\"})}):await api(\"/api/admin/vendors/bookings/transfer\",{method:\"POST\",body:JSON.stringify(payload)});$2(\"vendorTransferResult\").hidden=!1;const pricing=result?.transferPricing;return $2(\"vendorTransferResult\").textContent=pricing?.message?\"Transfer saved. \"+pricing.message+\" Shopify source order remains unchanged.\":\"Transfer saved. Shopify source order remains unchanged.\",setNotice2(pricing?.action===\"invoice_difference\"?\"Vendor transferred \\u2014 \"+pricing.message:\"Vendor booking transferred operationally.\"),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),setTimeout(()=>$2(\"vendorTransferDialog\")?.close(),900),result}finally{setLoading(button2,!1)}}async function saveVendorComplimentaryV385(button2){setLoading(button2,!0);try{const ev=selectedVendorEventV3882(\"vendorCompEvent\");if(!ev.key)throw new Error(\"Select an event.\");const result=await api(\"/api/admin/vendors/bookings/complimentary\",{method:\"POST\",body:JSON.stringify({customerKey:state.vendorCompSelectedCustomerV509?.key||null,customerName:$2(\"vendorCompName\").value,email:$2(\"vendorCompEmail\").value,eventKey:ev.key,eventLabel:ev.label,eventDate:ev.date||null,quantity:Number($2(\"vendorCompQuantity\").value||1),notes:$2(\"vendorCompNotes\").value,awardVendorClubPoints:$2(\"vendorCompAwardClubPointsV620\")?.checked===!0})});return $2(\"vendorCompResult\").hidden=!1,$2(\"vendorCompResult\").textContent=\"Manual booking added.\",setNotice2(\"Manual vendor table added.\"),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),setTimeout(()=>$2(\"vendorComplimentaryDialog\")?.close(),600),result}finally{setLoading(button2,!1)}}function openVendorMergeV409(keysOverride=null,rowsOverride=null){let keys=Array.isArray(keysOverride)?keysOverride.filter(Boolean):selectedVendorCustomerKeysV390();const suppliedRows=Array.isArray(rowsOverride)?rowsOverride.filter(Boolean):[];!keys.length&&suppliedRows.length&&(keys=suppliedRows.map(c=>c.key).filter(Boolean));const rows=suppliedRows.length?suppliedRows.filter(c=>keys.includes(c.key)):(state.vendorCustomers||[]).filter(c=>keys.includes(c.key));if(keys.length<2||rows.length<2){setNotice2(\"Select at least two customer records to review and merge.\",!0);return}state.vendorMergeKeys=keys;const selection=$2(\"vendorMergeSelection\");selection&&(selection.innerHTML=rows.map(c=>{const orders=(c.orderIds||[]).map(id=>{const url=vendorOrderAdminUrl(id);return url?\"<a href='\"+esc(url)+\"' target='_blank' rel='noopener'>#\"+esc(String(id).match(/(\\d+)$/)?.[1]||id)+\" \\u2197</a>\":\"<span>#\"+esc(id)+\"</span>\"}).join(\" \")||\"<span>No Shopify order IDs</span>\";return\"<div class='orbit-vendor-merge-candidate'><strong>\"+esc(c.name||\"Unknown vendor\")+\"</strong><span>\"+esc(c.email||\"No email\")+(c.phone?\" \\xB7 \"+esc(c.phone):\"\")+\"</span><small>\"+Number(c.orders||0)+\" orders \\xB7 \"+Number(c.events||0)+\" shows \\xB7 \"+Number(c.tables||0)+\" tables \\xB7 \"+vendorMoneyV384(c.spend||0)+\"</small><div class='orbit-vendor-merge-orders'>Orders: \"+orders+\"</div></div>\"}).join(\"\")),$2(\"vendorMergeName\").value=rows[0]?.name||\"\",$2(\"vendorMergeEmail\")&&($2(\"vendorMergeEmail\").value=rows[0]?.email||\"\"),$2(\"vendorMergeResult\").hidden=!0,$2(\"vendorCustomerMergeDialog\")?.showModal()}async function saveVendorMergeV390(button2){setLoading(button2,!0);try{const memberKeys=state.vendorMergeKeys?.length?state.vendorMergeKeys:selectedVendorCustomerKeysV390(),canonicalName=$2(\"vendorMergeName\").value.trim();if(memberKeys.length<2)throw new Error(\"Select at least two customers.\");const result=await api(\"/api/admin/vendors/customers/merge\",{method:\"POST\",body:JSON.stringify({memberKeys,canonicalName,preferredEmail:$2(\"vendorMergeEmail\")?.value||\"\"})});return $2(\"vendorMergeResult\").hidden=!1,$2(\"vendorMergeResult\").textContent=\"Customer records merged successfully. Shopify orders were not changed.\",setNotice2(\"Vendor customer records merged successfully.\"),state.vendorMergeKeys=[],setTimeout(()=>$2(\"vendorCustomerMergeDialog\")?.close(),450),loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\").catch(err=>setNotice2(\"Merge saved, but Vendor workspace refresh failed: \"+(err.message||err),!0)),result}finally{setLoading(button2,!1)}}function vendorBookingActionButtonsV398(b){if(b.vendorClubBookingId)return vendorManagedButtonsV639(b);const url=vendorOrderAdminUrl(b.shopifyOrderId),parts=[],attrs=b.type===\"complimentary\"?\" data-adjustment-id='\"+esc(b.adjustmentId||\"\")+\"'\":\" data-order-id='\"+esc(b.shopifyOrderId||\"\")+\"' data-line-id='\"+esc(b.lineItemId||\"\")+\"'\";return url&&parts.push(\"<a class='orbit-button-link' target='_blank' rel='noopener' href='\"+esc(url)+\"'>View order \\u2197</a>\"),b.lineKind===\"table\"&&(b.type===\"shopify\"||b.type===\"complimentary\")&&(b.operationalCancelled||parts.push(\"<button type='button' class='secondary' data-vendor-transfer\"+attrs+\" data-current-event-key='\"+esc(b.eventKey||b.sourceEvent?.key||\"\")+\"'>Transfer</button>\"),b.operationalCancelled||parts.push(\"<button type='button' class='secondary' data-vendor-cancel-booking\"+attrs+\" data-current-event-key='\"+esc(b.event?.key||b.sourceEvent?.key||\"\")+\"'>Cancel</button>\"),b.operationalCancelled||parts.push(\"<button type='button' class='secondary' data-vendor-substitute-booking\"+attrs+\">Change attending vendor</button>\"),b.operationalCancelled||parts.push(\"<button type='button' class='secondary' data-vendor-add-display-case\"+attrs+\">Add display case</button>\"),b.type===\"complimentary\"&&parts.push(\"<button type='button' class='secondary' data-vendor-complimentary-email\"+attrs+\" data-current-email='\"+esc(b.customer?.email||\"\")+\"'>\"+(b.customer?.email?\"Edit email\":\"Add email\")+\"</button>\")),b.operationalCancelled&&parts.push(\"<strong class='orbit-status-pill waiting'>\"+esc(b.cancellation?.disposition===\"account_credit\"?\"Cancelled \\xB7 credit issued\":b.cancellation?.disposition===\"without_credit\"?\"Cancelled \\xB7 no credit\":\"Cancelled \\xB7 needs reconciliation\")+\"</strong>\"),parts.join(\" \")}function groupedEventBookingsV398(event){const map=new Map;for(const b of event?.bookings||[]){if(b.operationalCancelled)continue;const attending=b.attendingVendor||b.customer||{},key=b.customer?.key||attending.email||attending.name||\"unknown\",customer={...attending,key},g=map.get(key)||{customer,purchaser:b.attendingVendor?b.customer:null,tables:0,displayCases:0,spend:0,orders:new Set,rows:[]};g.tables+=Number(b.quantity||0),g.displayCases+=Number(b.displayCases||0),g.spend+=Number(b.sales||0),b.orderName&&g.orders.add(b.orderName),g.rows.push(b),map.set(key,g)}return[...map.values()].map(g=>({...g,orders:[...g.orders]}))}function renderVendorEventBookingsV398(event){const target=$2(\"vendorEventBookingsTable\");if(!target)return;const groups=groupedEventBookingsV398(event),q=String($2(\"vendorEventBookingSearch\")?.value||\"\").trim().toLowerCase(),rows=groups.filter(g=>!q||[g.customer?.businessName,g.customer?.name,g.customer?.email,...g.orders].filter(Boolean).join(\" \").toLowerCase().includes(q));if(!rows.length){target.innerHTML=\"<p class='orbit-muted'>No matching vendor bookings.</p>\";return}target.innerHTML=\"<div class='orbit-table-wrap'><table><thead><tr><th>Vendor</th><th>Orders</th><th>Tables</th><th>Cases</th><th>Spend</th><th>Actions</th></tr></thead><tbody>\"+rows.map((g,index)=>{const orderLinks=[...new Map(g.rows.filter(x=>x.shopifyOrderId&&x.orderName).map(x=>[x.shopifyOrderId,x])).values()].sort((a,b)=>{const na=Number(String(a.orderName||\"\").replace(/\\D/g,\"\"))||0,nb=Number(String(b.orderName||\"\").replace(/\\D/g,\"\"))||0;return na-nb||String(a.orderName||\"\").localeCompare(String(b.orderName||\"\"))}).map(x=>{const url=vendorOrderAdminUrl(x.shopifyOrderId);return url?\"<a target='_blank' rel='noopener' href='\"+esc(url)+\"'>\"+esc(x.orderName)+\" \\u2197</a>\":esc(x.orderName)}).join(\" \\xB7 \")||\"Complimentary\",actionable=g.rows.filter(x=>!x.vendorClubBookingId&&x.lineKind===\"table\"&&(x.type===\"shopify\"||x.type===\"complimentary\")),actions=g.rows.filter(x=>x.vendorClubBookingId).map(vendorManagedButtonsV639).join(\"\")+\"<div class='orbit-vendor-booking-actions-v457'><button type='button' class='secondary' data-vendor-customer-view='\"+esc(g.customer?.key||\"\")+\"'>Customer</button>\"+(event?.state!==\"past\"?\"<button type='button' class='secondary' data-vendor-send-info='\"+esc(g.customer?.key||\"\")+\"'>Send info</button>\":\"\")+(actionable.length?\"<span class='orbit-vendor-table-adjust'><button type='button' class='secondary' data-vendor-group-action='remove-table' data-group-index='\"+index+\"' aria-label='Remove one table'>\\u2212</button><strong>\"+Number(g.tables||0)+\" tables</strong><button type='button' class='secondary' data-vendor-group-action='add-table' data-group-index='\"+index+\"' aria-label='Add one table'>+</button></span><button type='button' class='secondary' data-vendor-group-action='transfer' data-group-index='\"+index+\"'>Transfer</button><button type='button' class='secondary' data-vendor-group-action='cancel' data-group-index='\"+index+\"'>Cancel</button><button type='button' class='secondary' data-vendor-group-action='substitute' data-group-index='\"+index+\"'>Change attending vendor</button><button type='button' class='secondary' data-vendor-group-action='display-case' data-group-index='\"+index+\"'>Add display case</button>\":\"\")+\"</div>\",displayName=g.customer?.businessName||g.customer?.name||\"Unknown vendor\",bookingName=g.customer?.businessName&&g.customer?.name&&g.customer.name!==g.customer.businessName?g.customer.name:null;return\"<tr><td><strong>\"+esc(displayName)+\"</strong>\"+(bookingName?\"<small>Booking name: \"+esc(bookingName)+\"</small>\":\"\")+\"<small>\"+esc(g.customer?.email||\"\")+\"</small></td><td>\"+orderLinks+\"</td><td>\"+Number(g.tables||0)+\"</td><td>\"+Number(g.displayCases||0)+\"</td><td>\"+esc(vendorMoneyV384(g.spend))+\"</td><td>\"+actions+\"</td></tr>\"}).join(\"\")+\"</tbody></table></div>\",state.vendorEventBookingGroups=rows}function renderVendorEventFinanceV398(event){const target=$2(\"vendorEventFinanceSummary\");if(!target)return;const f=event.finance||{},sf=event.financials||{},metaUnknown=[\"unavailable\",\"not_requested\"].includes(f.metaAccounting?.status),totalIncome=Number(f.totalIncome??(f.vendorRevenue??event.sales??0)+(f.ticketRevenue??sf.orbitTicketRevenue??0)+(f.eventbriteRevenue??sf.eventbriteRevenue??0)),tax=Number(f.tax??totalIncome*.2),costsIncludingTax=Number(f.expenses?.total||0)+tax;target.innerHTML=\"<div><span>Vendor income</span><strong>\"+esc(vendorMoneyV384(f.vendorRevenue??event.sales))+\"</strong><small>Tables + cases + add-ons</small></div><div><span>Orbit ticket income</span><strong>\"+esc(vendorMoneyV384(f.ticketRevenue??sf.orbitTicketRevenue))+\"</strong><small>\"+Number(sf.orbitTickets||0)+\" paid tickets \\xB7 \"+Number(sf.memberTickets||0)+\" member tickets</small></div><div><span>Eventbrite ticket sales</span><strong>\"+esc(vendorMoneyV384(f.eventbriteRevenue??sf.eventbriteRevenue))+\"</strong><small>\"+Number(sf.eventbriteTickets||0)+\" tickets\"+(Number(sf.eventbriteAddOns||0)?\" \\xB7 \"+Number(sf.eventbriteAddOns)+\" add-ons\":\"\")+\"</small></div><div><span>Total costs</span><strong>\"+(metaUnknown?\"\\u2014\":esc(vendorMoneyV384(costsIncludingTax)))+\"</strong><small>Includes \"+esc(vendorMoneyV384(tax))+\" tax</small></div><div class='orbit-vendor-profit-card'><span>Profit / loss</span><strong>\"+(metaUnknown?\"\\u2014\":esc(vendorMoneyV384(f.profit)))+\"</strong></div>\"+(metaUnknown?\"<p class='orbit-info-banner'>Advertising is not loaded in this view. Total costs and profit are unavailable; use Finance for accounting.</p>\":f.metaAccounting?.status===\"saved\"?\"<p class='orbit-info-banner'>Advertising uses the last complete stored snapshot. It has not been refreshed.</p>\":\"\");const expenses=$2(\"vendorEventExpensesList\"),rows=(event.expenses||[]).filter(x=>x.active!==!1);expenses&&(expenses.innerHTML=rows.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>Type</th><th>Supplier</th><th>Description</th><th>Amount</th><th></th></tr></thead><tbody>\"+rows.map(x=>\"<tr><td>\"+esc(x.category||\"other\")+(x.automatic?\" <small>Automatic</small>\":\"\")+\"</td><td>\"+esc(x.supplier||\"\\u2014\")+\"</td><td>\"+esc(x.description||\"\\u2014\")+\"</td><td>\"+esc(vendorMoneyV384(x.amount))+\"</td><td>\"+(x.automatic?x.source===\"meta_ads_attribution\"?\"<button type='button' class='secondary' data-vendor-meta-breakdown-v457='\"+esc(event.key)+\"'>View matched ads</button>\":\"<small>From Venue Master</small>\":\"<button type='button' class='secondary' data-vendor-expense-delete='\"+esc(x.id)+\"'>Remove</button>\")+\"</td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p class='orbit-muted'>No event costs entered yet.</p>\")}function renderVendorEventDocumentsV398(event){const target=$2(\"vendorEventDocumentsList\");if(!target)return;const rows=(event.documents||[]).filter(x=>x.active!==!1);target.innerHTML=rows.length?\"<div class='orbit-vendor-document-list'>\"+rows.map(x=>{const final=x.finalVendorDocument===!0,released=!!x.releasedToVendorsAt;return\"<div><span><strong>\"+esc(x.name||x.fileName)+\"</strong><small>\"+esc(x.fileName||\"\")+\" \\xB7 \"+Math.max(1,Math.round(Number(x.bytes||0)/1024))+\" KB \\xB7 \"+esc(x.category||\"general\")+(final?\" \\xB7 Final\":\"\")+(released?\" \\xB7 Released to Club\":\"\")+\"</small></span><button type='button' class='secondary' data-vendor-document-open='\"+esc(x.id)+\"'>Open</button>\"+(final?\"<button type='button' class='secondary' data-vendor-document-release-v620='\"+esc(x.id)+\"' data-released='\"+(released?\"1\":\"0\")+\"'>\"+(released?\"Unrelease from Club\":\"Release to Club\")+\"</button>\":\"\")+\"<button type='button' class='secondary' data-vendor-document-delete='\"+esc(x.id)+\"'>Remove</button></div>\"}).join(\"\")+\"</div>\":\"<p class='orbit-muted'>No invoices or documents attached yet.</p>\"}function fillVendorEventSetupV398(event){const venues=state.vendorVenues||[],select=$2(\"vendorEventVenue\");select&&(select.innerHTML=\"<option value=''>No venue selected</option>\"+venues.map(v=>\"<option value='\"+esc(v.id)+\"'>\"+esc(v.name)+\"</option>\").join(\"\"),select.value=event.venueId||\"\"),$2(\"vendorEventSetupTime\")&&($2(\"vendorEventSetupTime\").value=event.setupTime||\"\"),$2(\"vendorEventInstructions\")&&($2(\"vendorEventInstructions\").value=event.vendorInstructions||\"\"),$2(\"vendorEventParking\")&&($2(\"vendorEventParking\").value=event.parkingNotes||\"\"),$2(\"vendorEventRules\")&&($2(\"vendorEventRules\").value=event.rules||\"\")}function ensureVendorShowBroadcastButtonV560(event){const row=document.querySelector(\"#vendorEventDetailDialog .orbit-vendor-event-top-actions\");if(!row)return;let b=$2(\"vendorEventShowBroadcastV560\");b||(b=document.createElement(\"button\"),b.type=\"button\",b.id=\"vendorEventShowBroadcastV560\",b.className=\"secondary\",b.textContent=\"Show Broadcast\",row.insertBefore(b,$2(\"previewVendorEventDetails\")||null),b.addEventListener(\"click\",()=>{const current=state.currentVendorEvent;current&&openVendorShowBroadcastV560(current).catch(err=>setNotice2(\"Show Broadcast unavailable: \"+(err.message||err),!0))})),b.hidden=event?.state===\"past\",b.disabled=event?.state===\"past\"}function vendorShowBroadcastHistoryHtmlV560(rows=[]){return rows.length?`<div class=\"orbit-table-wrap\"><table><thead><tr><th>Sent</th><th>Subject</th><th>Recipients</th><th>Status</th></tr></thead><tbody>${rows.map(x=>`<tr><td>${esc(prettyDate(x.completedAt||x.createdAt||\"\"))}</td><td>${esc(x.subject||\"\")}</td><td>${Number(x.counts?.sent||0)} sent${Number(x.counts?.failed||0)?` \\xB7 ${Number(x.counts.failed)} failed`:\"\"}</td><td>${esc(String(x.status||\"\").replace(/_/g,\" \"))}</td></tr>`).join(\"\")}</tbody></table></div>`:\"<p class='orbit-muted'>No Show Broadcasts have been sent for this event yet.</p>\"}async function openVendorShowBroadcastV560(event){state.currentVendorEvent=event,state.currentVendorEventKey=event.key;const[preview,history2]=await Promise.all([api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/show-broadcast/preview\",{cacheMs:0}),api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/show-broadcast/history?limit=10\",{cacheMs:0}).catch(()=>({broadcasts:[]}))]),d=vendorEventToolDialogV439(\"Show Broadcast\",[event.displayName||event.label||\"Event\",vendorDateV385(event.eventDate)].filter(Boolean).join(\" \\xB7 \"),\"Custom vendor email\"),body=$2(\"vendorEventToolBody\");if(!d||!body)return;body.innerHTML=`<div class=\"orbit-show-broadcast-v561\">\n      <section class=\"orbit-show-broadcast-intro-v561\"><div><p class=\"orbit-kicker\">ONE-OFF VENDOR EMAIL</p><h3>Email only the vendors booked on this show</h3><p>This does not change Vendor Briefing, floor-plan or show-information sent status.</p></div><div class=\"orbit-show-broadcast-from-v561\"><span>From</span><strong>${esc(preview.from||\"info@orbitcardshow.co.uk\")}</strong></div></section>\n      <div class=\"orbit-show-broadcast-metrics-v561\"><article><small>Will receive</small><strong id=\"vendorShowBroadcastWillReceiveV566\">${Number(preview.recipientCount||0)}</strong><span>selected vendor emails</span></article><article><small>Booked vendors</small><strong>${Number(preview.totalBookedVendors||0)}</strong><span>on this show</span></article><article><small>Missing email</small><strong>${Number(preview.missingEmail||0)}</strong><span>cannot receive</span></article><article><small>Duplicates removed</small><strong>${Number(preview.duplicateEmailsRemoved||0)}</strong><span>send once per address</span></article></div>\n      <section class=\"orbit-show-broadcast-card-v561 orbit-show-broadcast-compose-v561\"><div class=\"orbit-show-broadcast-section-heading-v561\"><div><span>1</span><div><h3>Write broadcast</h3><p>Compose the exact email your vendors will receive.</p></div></div></div><label>Subject<input id=\"vendorShowBroadcastSubjectV560\" maxlength=\"200\" placeholder=\"Email subject\"></label><label>Message<textarea id=\"vendorShowBroadcastMessageV560\" rows=\"11\" placeholder=\"Write your message to vendors booked on this show\"></textarea></label></section>\n      <section class=\"orbit-show-broadcast-card-v561\"><div class=\"orbit-show-broadcast-section-heading-v561\"><div><span>2</span><div><h3>Check recipients</h3><p>Select <strong>Exclude</strong> beside anyone who should not receive this broadcast. Exclusions apply only to this message.</p></div></div><div class=\"orbit-show-broadcast-selection-v566\"><strong id=\"vendorShowBroadcastSelectedCountV566\">${Number(preview.recipientCount||0)}</strong><span>selected</span></div></div><details class=\"orbit-show-broadcast-recipients-v561\" open><summary>Recipient list</summary><div class=\"orbit-table-wrap\"><table><thead><tr><th>Vendor</th><th>Email</th><th class=\"orbit-show-broadcast-exclude-heading-v566\">Exclude</th></tr></thead><tbody>${(preview.recipients||[]).map(x=>`<tr><td>${esc(x.name||\"Vendor\")}</td><td>${esc(x.email||\"\")}</td><td class=\"orbit-show-broadcast-exclude-cell-v566\"><label class=\"orbit-show-broadcast-exclude-v566\"><input type=\"checkbox\" class=\"vendor-show-broadcast-exclude-v566\" value=\"${esc(x.email||\"\")}\"><span>Exclude</span></label></td></tr>`).join(\"\")||\"<tr><td colspan='3'>No deliverable vendor email addresses.</td></tr>\"}</tbody></table></div></details></section>\n      <section class=\"orbit-show-broadcast-card-v561 orbit-show-broadcast-test-v561\"><div class=\"orbit-show-broadcast-section-heading-v561\"><div><span>3</span><div><h3>Send a test</h3><p>The exact subject and message go only to the address below. Vendors are not contacted.</p></div></div></div><div class=\"orbit-show-broadcast-test-row-v561\"><input id=\"vendorShowBroadcastTestEmailV560\" type=\"email\" value=\"info@orbitcardshow.co.uk\" aria-label=\"Test email address\"><button type=\"button\" class=\"secondary\" id=\"vendorShowBroadcastTestV560\">Send test email</button></div></section>\n      <section class=\"orbit-show-broadcast-card-v561 orbit-show-broadcast-send-v561\"><div class=\"orbit-show-broadcast-section-heading-v561\"><div><span>4</span><div><h3>Send broadcast</h3><p>Orbit logs each recipient separately and prevents accidental duplicate sends.</p></div></div><button type=\"button\" id=\"vendorShowBroadcastSendV560\" ${preview.recipientCount?\"\":\"disabled\"}>Send to ${Number(preview.recipientCount||0)} vendor${Number(preview.recipientCount||0)===1?\"\":\"s\"}</button></div><div id=\"vendorShowBroadcastResultV560\" class=\"orbit-action-result\" hidden></div></section>\n      <section class=\"orbit-show-broadcast-history-v561\"><div class=\"orbit-panel-header\"><div><h3>Broadcast history</h3><p>Previous custom broadcasts for this show.</p></div></div><div id=\"vendorShowBroadcastHistoryV560\">${vendorShowBroadcastHistoryHtmlV560(history2.broadcasts||[])}</div></section>\n      </div>`;const excludedEmails=()=>Array.from(body.querySelectorAll(\".vendor-show-broadcast-exclude-v566:checked\")).map(input=>String(input.value||\"\").trim()).filter(Boolean),values=()=>({subject:$2(\"vendorShowBroadcastSubjectV560\")?.value||\"\",message:$2(\"vendorShowBroadcastMessageV560\")?.value||\"\",excludedEmails:excludedEmails()}),updateRecipientSelectionV566=()=>{const excluded=excludedEmails().length,selected=Math.max(0,Number(preview.recipientCount||0)-excluded),countNode=$2(\"vendorShowBroadcastSelectedCountV566\"),metricNode=$2(\"vendorShowBroadcastWillReceiveV566\"),send=$2(\"vendorShowBroadcastSendV560\");return countNode&&(countNode.textContent=String(selected)),metricNode&&(metricNode.textContent=String(selected)),send&&(send.disabled=selected<1,send.textContent=`Send to ${selected} vendor${selected===1?\"\":\"s\"}`),selected};body.querySelectorAll(\".vendor-show-broadcast-exclude-v566\").forEach(input=>input.addEventListener(\"change\",updateRecipientSelectionV566)),updateRecipientSelectionV566(),$2(\"vendorShowBroadcastTestV560\")?.addEventListener(\"click\",async ev=>{const r=$2(\"vendorShowBroadcastResultV560\"),v=values(),to=$2(\"vendorShowBroadcastTestEmailV560\")?.value||\"\";setLoading(ev.currentTarget,!0),r&&(r.hidden=!1,r.classList.remove(\"error\"),r.textContent=\"Sending test\\u2026\");try{const data=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/show-broadcast/test\",{method:\"POST\",body:JSON.stringify({...v,to}),cacheMs:0,timeoutMs:3e4});r&&(r.textContent=data.sent?\"Test email sent to \"+data.to+\". Vendors were not contacted.\":\"Test send was not confirmed by the email provider.\")}catch(err){r&&(r.classList.add(\"error\"),r.textContent=err.message||err)}finally{setLoading(ev.currentTarget,!1)}}),$2(\"vendorShowBroadcastSendV560\")?.addEventListener(\"click\",async ev=>{const v=values(),count=updateRecipientSelectionV566();if(!v.subject.trim()||!v.message.trim()){const r=$2(\"vendorShowBroadcastResultV560\");r&&(r.hidden=!1,r.classList.add(\"error\"),r.textContent=\"Enter both a subject and message first.\");return}if(count<1){const r=$2(\"vendorShowBroadcastResultV560\");r&&(r.hidden=!1,r.classList.add(\"error\"),r.textContent=\"Include at least one vendor before sending.\");return}const excluded=v.excludedEmails.length,selectionNote=excluded?`\n\n${excluded} vendor${excluded===1?\" is\":\"s are\"} excluded from this broadcast.`:\"\";window.confirm(`Send this Show Broadcast to ${count} vendor${count===1?\"\":\"s\"} booked on ${event.displayName||event.label||\"this show\"}?${selectionNote}\n\nThis is separate from Vendor Briefing.`)&&await sendVendorShowBroadcastV560(event,v,ev.currentTarget,!1)}),typeof d.showModal==\"function\"?d.showModal():d.setAttribute(\"open\",\"\")}async function sendVendorShowBroadcastV560(event,values,button2,allowRepeat){const r=$2(\"vendorShowBroadcastResultV560\");setLoading(button2,!0),r&&(r.hidden=!1,r.classList.remove(\"error\"),r.textContent=\"Queuing broadcast\\u2026\");try{const data=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/show-broadcast/batches\",{method:\"POST\",body:JSON.stringify({...values,allowRepeat:!!allowRepeat}),cacheMs:0,timeoutMs:3e4});r&&(r.textContent=\"Broadcast queued. Orbit is sending it with per-recipient delivery logging\\u2026\"),await pollVendorShowBroadcastV560(event,data.job?.id,r)}catch(err){if(!allowRepeat&&String(err.data?.code||err.code||\"\")===\"SHOW_BROADCAST_REPEAT_CONFIRMATION_REQUIRED\"&&window.confirm(\"This exact broadcast was already sent within the last 24 hours. Send the same message again anyway?\"))return setLoading(button2,!1),sendVendorShowBroadcastV560(event,values,button2,!0);r&&(r.classList.add(\"error\"),r.textContent=err.message||err)}finally{setLoading(button2,!1)}}async function pollVendorShowBroadcastV560(event,id,result){if(id){for(let i=0;i<80;i++){await new Promise(resolve=>setTimeout(resolve,1500));const data=await api(\"/api/admin/vendors/show-broadcast/batches/\"+encodeURIComponent(id),{cacheMs:0,timeoutMs:12e3}),job=data.job;if(!job)continue;const c=job.counts||{};if(result&&(result.textContent=`${Number(c.sent||0)} sent \\xB7 ${Number(c.failed||0)} failed \\xB7 ${Number(c.pending||0)} remaining.`),[\"completed\",\"completed_with_failures\"].includes(job.status)){result&&(result.classList.toggle(\"error\",Number(c.failed||0)>0),result.textContent=`Show Broadcast complete \\xB7 ${Number(c.sent||0)} sent${Number(c.failed||0)?` \\xB7 ${Number(c.failed)} failed`:\"\"}. Vendor Briefing status was not changed.`);const h=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/show-broadcast/history?limit=10\",{cacheMs:0}).catch(()=>({broadcasts:[]}));$2(\"vendorShowBroadcastHistoryV560\")&&($2(\"vendorShowBroadcastHistoryV560\").innerHTML=vendorShowBroadcastHistoryHtmlV560(h.broadcasts||[]));return}}result&&(result.classList.add(\"error\"),result.textContent=\"Sending is still running in the background. Reopen Show Broadcast to view its status.\")}}function renderVendorEventDetailV398(event){state.currentVendorEvent=event,state.currentVendorEventKey=event.key,$2(\"vendorEventDetailKey\")&&($2(\"vendorEventDetailKey\").value=event.key),$2(\"vendorEventDetailTitle\")&&($2(\"vendorEventDetailTitle\").textContent=event.displayName||event.label||\"Vendor event\"),$2(\"vendorEventDetailKicker\")&&($2(\"vendorEventDetailKicker\").textContent=event.state===\"past\"?\"Past event financial record\":\"Live event operations\"),$2(\"vendorEventDetailSubtitle\")&&($2(\"vendorEventDetailSubtitle\").textContent=[vendorDateV385(event.eventDate),event.venue?.name].filter(Boolean).join(\" \\xB7 \"));const venueSelect=$2(\"vendorEventVenueTag\");venueSelect&&(venueSelect.innerHTML=\"<option value=''>Choose venue</option>\"+(state.vendorVenues||[]).map(v=>\"<option value='\"+esc(v.id)+\"'>\"+esc(v.name)+\"</option>\").join(\"\"),venueSelect.value=event.venueId||event.venue?.id||\"\");const metrics=$2(\"vendorEventDetailMetrics\");metrics&&(metrics.innerHTML=\"<article><span>Vendors</span><strong>\"+Number(event.customers||0)+\"</strong></article><article><span>Tables</span><strong>\"+Number(event.tables||0)+\"</strong></article><article><span>Display cases</span><strong>\"+Number(event.displayCases||0)+\"</strong></article><article><span>Vendor income</span><strong>\"+esc(vendorMoneyV384(event.sales))+\"</strong></article>\"),$2(\"vendorEventClubPriceV620\")&&($2(\"vendorEventClubPriceV620\").value=event.standardTablePrice??event.shopifyVariantPrice??\"\"),$2(\"vendorEventClubCapacityV620\")&&($2(\"vendorEventClubCapacityV620\").value=event.vendorClubTableCapacity??\"\"),$2(\"vendorEventAllowClubPointsV620\")&&($2(\"vendorEventAllowClubPointsV620\").checked=event.allowVendorClubPointsBookings!==!1),renderVendorEventBookingsV398(event),renderVendorEventFinanceV398(event);const financePanel=$2(\"vendorPastFinancePanel\"),commsPanel=$2(\"vendorLiveCommunicationPanel\");financePanel&&(financePanel.hidden=event.state!==\"past\"),commsPanel&&(commsPanel.hidden=event.state===\"past\"),$2(\"vendorEventEmailCustomMessage\")&&setVendorRichEditorV421(\"vendorEventEmailCustomMessage\",event.vendorEmailCustomHtml,event.vendorEmailCustomMessage),$2(\"vendorEmailHtmlEditor\")&&($2(\"vendorEmailHtmlEditor\").value=event.vendorEmailHtmlOverride||\"\");const sentRecord=$2(\"vendorEventSentRecord\"),lastSent=event.vendorBriefingLastSent;sentRecord&&(sentRecord.hidden=!lastSent,lastSent&&(sentRecord.innerHTML=\"<strong>Vendor information sent</strong><span>Last batch: \"+esc(prettyDate(lastSent.sentAt))+\" \\xB7 \"+Number(lastSent.sent||0)+\" sent\"+(Number(lastSent.failed||0)?\" \\xB7 \"+Number(lastSent.failed)+\" failed\":\"\")+(Number(lastSent.unallocatedTablesAtSend||0)?\" \\xB7 \"+Number(lastSent.unallocatedTablesAtSend)+\" unallocated table(s) acknowledged\":\"\")+\"</span>\"));const preview=$2(\"vendorRenderedEmailPreview\");preview&&(preview.hidden=!0,preview.innerHTML=\"\"),ensureVendorShowBroadcastButtonV560(event),loadVendorBriefingBatchStatusV487(event.key).catch(()=>{})}function vendorEventByKeyV399(key){return(state.vendorWorkspace?.allEvents||[]).find(x=>x.key===key)||null}function closeVendorEventToolV562(clear=!1){const d=$2(\"vendorEventToolDialog\");if(d){if(d.open||d.hasAttribute(\"open\"))try{d.close()}catch{d.removeAttribute(\"open\")}else d.removeAttribute(\"open\");if(d.classList.remove(\"orbit-show-broadcast-dialog-v561\"),clear){const body=$2(\"vendorEventToolBody\");body&&(body.innerHTML=\"\"),$2(\"vendorEventToolTitle\")&&($2(\"vendorEventToolTitle\").textContent=\"Event tool\"),$2(\"vendorEventToolSubtitle\")&&($2(\"vendorEventToolSubtitle\").textContent=\"\"),state.currentVendorEvent=null,state.currentVendorEventKey=\"\"}}}function vendorEventToolDialogV439(title,subtitle,kicker=\"Vendor event\"){const d=$2(\"vendorEventToolDialog\");return d?(d.classList.toggle(\"orbit-show-broadcast-dialog-v561\",title===\"Show Broadcast\"),$2(\"vendorEventToolTitle\")&&($2(\"vendorEventToolTitle\").textContent=title||\"Event tool\"),$2(\"vendorEventToolSubtitle\")&&($2(\"vendorEventToolSubtitle\").textContent=subtitle||\"\"),$2(\"vendorEventToolKicker\")&&($2(\"vendorEventToolKicker\").textContent=kicker),d):null}function vendorEventDocumentRowsV439(event){const rows=(event?.documents||[]).filter(x=>x.active!==!1);return rows.length?\"<div class='orbit-vendor-document-list orbit-vendor-popup-document-list'>\"+rows.map(x=>\"<div><span><strong>\"+esc(x.name||x.fileName)+\"</strong><small>\"+esc(x.fileName||\"\")+\" \\xB7 \"+Math.max(1,Math.round(Number(x.bytes||0)/1024))+\" KB</small></span><button type='button' class='secondary' data-vendor-popup-document-open='\"+esc(x.id)+\"'>Open</button><button type='button' class='secondary' data-vendor-popup-document-delete='\"+esc(x.id)+\"'>Remove</button></div>\").join(\"\")+\"</div>\":\"<p class='orbit-muted'>No documents attached to this event yet.</p>\"}function openVendorDocumentsDialogV439(event){state.currentVendorEvent=event,state.currentVendorEventKey=event.key;const d=vendorEventToolDialogV439(\"Documents\",[event.displayName||event.label||\"Event\",vendorDateV385(event.eventDate)].filter(Boolean).join(\" \\xB7 \"),\"Event documents\"),body=$2(\"vendorEventToolBody\");!d||!body||(body.innerHTML=\"<div id='vendorPopupDocumentList'>\"+vendorEventDocumentRowsV439(event)+\"</div><section class='orbit-panel orbit-vendor-popup-upload'><div class='orbit-form-grid'><label>Document<input id='vendorPopupDocumentFile' type='file' accept='.pdf,image/*'></label><label>Description<input id='vendorPopupDocumentName' placeholder='e.g. Venue final invoice'></label></div><div class='orbit-action-row'><button type='button' id='vendorPopupDocumentUpload'>Upload document</button></div></section>\",d.showModal())}async function uploadVendorPopupDocumentV439(button2){const event=state.currentVendorEvent,file=$2(\"vendorPopupDocumentFile\")?.files?.[0];if(!event||!file)throw new Error(\"Choose a PDF or image to upload.\");setLoading(button2,!0);try{const dataUrl=await fileToDataUrlV398(file);await api(\"/api/admin/vendors/events/documents\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,name:$2(\"vendorPopupDocumentName\")?.value||file.name,fileName:file.name,dataUrl})}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\");const refreshed=vendorEventByKeyV399(event.key)||event;state.currentVendorEvent=refreshed,$2(\"vendorPopupDocumentList\")&&($2(\"vendorPopupDocumentList\").innerHTML=vendorEventDocumentRowsV439(refreshed)),setNotice2(\"Event document stored.\")}finally{setLoading(button2,!1)}}function openVendorBriefingDialogV440(event){state.currentVendorEvent=event,state.currentVendorEventKey=event.key;const d=vendorEventToolDialogV439(\"Vendor briefing\",[event.displayName||event.label||\"Event\",vendorDateV385(event.eventDate)].filter(Boolean).join(\" \\xB7 \"),\"Live event briefing\"),body=$2(\"vendorEventToolBody\");!d||!body||(body.innerHTML=\"<div class='orbit-vendor-popup-brief-toolbar'><button type='button' class='secondary' data-vendor-popup-format='bold'><strong>B</strong></button><button type='button' class='secondary' data-vendor-popup-format='underline'><u>U</u></button><button type='button' class='secondary' data-vendor-popup-format='italic'><em>I</em></button><button type='button' class='secondary' data-vendor-popup-format='insertUnorderedList'>Bullets</button><button type='button' class='secondary' data-vendor-popup-format='insertOrderedList'>Numbers</button><button type='button' class='secondary' id='vendorPopupBriefingSourceToggle'>HTML source</button><button type='button' class='secondary' id='vendorPopupBriefingSelectAll' hidden>Select all</button></div><div id='vendorPopupBriefingEditor' class='orbit-vendor-brief-editor orbit-vendor-popup-brief-editor' contenteditable='true'>\"+(event.vendorEmailCustomHtml||esc(event.vendorEmailCustomMessage||\"\"))+\"</div><textarea id='vendorPopupBriefingSource' class='orbit-vendor-rich-source orbit-vendor-popup-brief-source' rows='18' hidden spellcheck='false'></textarea><div class='orbit-action-row'><button type='button' id='saveVendorPopupBriefing'>Save briefing</button></div>\",d.showModal())}function toggleVendorPopupBriefingSourceV440(){const editor=$2(\"vendorPopupBriefingEditor\"),source=$2(\"vendorPopupBriefingSource\"),toggle=$2(\"vendorPopupBriefingSourceToggle\"),selectAll=$2(\"vendorPopupBriefingSelectAll\");if(!editor||!source)return;!source.hidden?(editor.innerHTML=source.value,source.hidden=!0,editor.hidden=!1,toggle&&(toggle.textContent=\"HTML source\"),selectAll&&(selectAll.hidden=!0)):(source.value=editor.innerHTML,editor.hidden=!0,source.hidden=!1,toggle&&(toggle.textContent=\"Visual editor\"),selectAll&&(selectAll.hidden=!1))}async function saveVendorPopupBriefingV439(button2){const event=state.currentVendorEvent,editor=$2(\"vendorPopupBriefingEditor\"),source=$2(\"vendorPopupBriefingSource\");if(!(!event||!editor)){setLoading(button2,!0);try{source&&!source.hidden&&(editor.innerHTML=source.value);const html=editor.innerHTML.trim(),text2=editor.innerText.trim();await api(\"/api/admin/vendors/events/config\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,vendorEmailCustomMessage:text2,vendorEmailCustomHtml:html})}),event.vendorEmailCustomMessage=text2,event.vendorEmailCustomHtml=html,setNotice2(\"Vendor briefing saved.\")}finally{setLoading(button2,!1)}}}function vendorFloorPlanVendorMapV439(event){const map=new Map;for(const g of plannerGroupsV398(event)||[])g.customer?.key&&map.set(g.customer.key,g.customer.businessName||g.customer.name||\"Vendor\");return map}async function openVendorFloorPlanDialogV439(event){state.currentVendorEvent=event,state.currentVendorEventKey=event.key;let result;try{result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/table-plan\")}catch{result={tablePlan:null}}const plan=result?.tablePlan||null;if(!(String(plan?.status||event.tablePlan?.status||\"\").toLowerCase()===\"ready\"))return!1;const d=vendorEventToolDialogV439(\"Final floor plan\",[event.displayName||event.label||\"Event\",vendorDateV385(event.eventDate)].filter(Boolean).join(\" \\xB7 \"),\"Ready for show\"),body=$2(\"vendorEventToolBody\");if(!d||!body)return!0;const names=vendorFloorPlanVendorMapV439(event);let html=\"\";for(const room of plan.rooms||[]){const bg=await orientedVendorBackgroundV401(room).catch(()=>room.backgroundDataUrl||\"\"),tables=room.tables||[];html+=\"<section class='orbit-vendor-floor-preview-room'><h3>\"+esc(room.name||\"Floor plan\")+\"</h3><div class='orbit-vendor-floor-preview-canvas'>\"+(bg?\"<img src='\"+esc(bg)+\"' alt='Floor plan'>\":\"\")+\"<div class='orbit-vendor-floor-preview-overlay'>\"+tables.map((table2,index)=>{const pt=transformVendorPointV401(Number(table2.x??table2.left??0),Number(table2.y??table2.top??0),room),swap=Number(room?.rotation||0)===90||Number(room?.rotation||0)===270,rawW=Number(table2.widthPct||table2.width||3.5),rawH=Number(table2.heightPct||table2.height||2.5),w=swap?rawH:rawW,h=swap?rawW:rawH,x=pt.x,y=pt.y;return\"<span class='\"+(table2.vendorKey?\"allocated\":\"unallocated\")+\"' style='left:\"+x+\"%;top:\"+y+\"%;width:\"+Math.max(1,w)+\"%;height:\"+Math.max(1,h)+\"%;transform:translate(-50%,-50%) rotate(\"+Number(table2?.angleDeg||0)+\"deg)' title='\"+esc(table2.vendorKey?names.get(table2.vendorKey)||\"Vendor\":\"Unallocated\")+\"'>\"+esc(String(table2.label||index+1))+\"</span>\"}).join(\"\")+\"</div></div><div class='orbit-vendor-floor-preview-list'>\"+tables.filter(x=>x.vendorKey).map(x=>\"<span><strong>Table \"+esc(String(x.label||tables.indexOf(x)+1))+\"</strong> \"+esc(names.get(x.vendorKey)||\"Vendor\")+\"</span>\").join(\"\")+\"</div></section>\"}return body.innerHTML=html||\"<p class='orbit-muted'>No saved room map found.</p>\",d.showModal(),!0}function vendorFinanceHtmlV441(event){const f=event.finance||{},sf=event.financials||{},expenses=f.expenses||{},rows=(event.expenses||[]).filter(x=>x.active!==!1),vendorRevenue=Number(f.vendorRevenue??event.sales??0),orbitTickets=Number(f.ticketRevenue??sf.orbitTicketRevenue??0),eventbrite=Number(f.eventbriteRevenue??sf.eventbriteRevenue??0),totalIncome=Number(f.totalIncome??vendorRevenue+orbitTickets+eventbrite),tax=Number(f.tax??totalIncome*.2),operatingCosts=Number(expenses.total||0),costs=operatingCosts+tax,profit=Number(f.profit??totalIncome-tax-operatingCosts),costRows=rows.length?\"<div class='orbit-table-wrap'><table><thead><tr><th>Type</th><th>Supplier</th><th>Description</th><th>Amount</th><th></th></tr></thead><tbody>\"+rows.map(x=>\"<tr><td>\"+esc(x.category||\"other\")+(x.automatic?\" <small>Automatic</small>\":\"\")+\"</td><td>\"+esc(x.supplier||\"\\u2014\")+\"</td><td>\"+esc(x.description||\"\\u2014\")+\"</td><td>\"+esc(vendorMoneyV384(x.amount||0))+\"</td><td>\"+(x.automatic?x.source===\"meta_ads_attribution\"?\"<button type='button' class='secondary' data-vendor-meta-breakdown-v457='\"+esc(event.key)+\"'>View matched ads</button>\":\"<small>From Venue Master</small>\":\"<button type='button' class='secondary' data-vendor-finance-expense-delete='\"+esc(x.id)+\"'>Remove</button>\")+\"</td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p class='orbit-muted'>No event costs entered yet.</p>\";return\"<div class='orbit-vendor-finance-popup-summary'><article><span>Vendor income</span><strong>\"+esc(vendorMoneyV384(vendorRevenue))+\"</strong></article><article><span>Orbit ticket income</span><strong>\"+esc(vendorMoneyV384(orbitTickets))+\"</strong></article><article><span>Eventbrite income</span><strong>\"+esc(vendorMoneyV384(eventbrite))+\"</strong></article><article><span>Total income</span><strong>\"+esc(vendorMoneyV384(totalIncome))+\"</strong></article><article><span>Total costs</span><strong>\"+esc(vendorMoneyV384(costs))+\"</strong></article><article class='tax'><span>Tax \\xB7 20%</span><strong>\"+esc(vendorMoneyV384(tax))+\"</strong></article><article class='\"+(profit<0?\"loss\":\"profit\")+\"'><span>Profit / loss</span><strong>\"+esc(vendorMoneyV384(profit))+\"</strong></article></div><section class='orbit-panel orbit-vendor-finance-ledger'><div class='orbit-panel-header'><div><p class='orbit-kicker'>Cost ledger</p><h3>Expenses</h3><p>All finance controls for this event live here.</p></div><button type='button' id='vendorPopupRefreshFinancials' class='secondary'>Refresh income & advertising</button></div><div id='vendorPopupExpensesList'>\"+costRows+\"</div><div class='orbit-form-grid orbit-vendor-expense-form'><label>Category<select id='vendorPopupExpenseCategory'><option value='venue'>Venue hire</option><option value='advertising'>Advertising</option><option value='miscellaneous'>Miscellaneous</option><option value='other'>Other</option></select></label><label>Amount (\\xA3)<input id='vendorPopupExpenseAmount' type='number' min='0' step='0.01'></label><label>Supplier<input id='vendorPopupExpenseSupplier' placeholder='e.g. Warwick Racecourse'></label><label>Description<input id='vendorPopupExpenseDescription' placeholder='What was this cost?'></label></div><div class='orbit-action-row'><button type='button' id='vendorPopupAddExpense'>Add expense</button></div></section>\"}function openVendorFinancialDialogV440(key){const event=vendorEventByKeyV399(key);if(!event)return;state.currentVendorEvent=event,state.currentVendorEventKey=event.key;const d=vendorEventToolDialogV439(\"Financial report\",[event.displayName||event.label||\"Event\",vendorDateV385(event.eventDate)].filter(Boolean).join(\" \\xB7 \"),\"Past event\"),body=$2(\"vendorEventToolBody\");body&&(body.innerHTML=vendorFinanceHtmlV441(event)),d?.showModal()}async function waitForVendorMetaSyncV48307(jobId,{timeoutMs=12e4}={}){const started=Date.now();for(;Date.now()-started<timeoutMs;){const status=await api(\"/api/admin/meta-ads/history/import/\"+encodeURIComponent(jobId),{cacheMs:0,timeoutMs:25e3});if(status.status===\"completed\")return status;if(status.status===\"failed\")throw new Error(status.error?.message||\"Meta advertising sync failed.\");await new Promise(resolve=>setTimeout(resolve,1800))}throw new Error(\"Meta advertising sync is still running. The stored finance view can be refreshed again shortly.\")}async function refreshVendorFinancialPopupV465(button2){button2&&setLoading(button2,!0);try{const event=state.currentVendorEvent||vendorEventByKeyV399(state.currentVendorEventKey),eventbriteEventId=event?.financials?.eventbriteEventId||event?.finance?.eventbriteEventId||null;let remoteMode=\"stored_only\",metaMode=\"stored_only\",metaDiagnostics=null;const advertisingBefore=Number(event?.finance?.expenses?.advertising||event?.expenses?.advertising||0);if(eventbriteEventId)try{remoteMode=(await api(\"/api/admin/vendors/eventbrite/event-financial-sync\",{method:\"POST\",body:JSON.stringify({eventbriteEventId})}))?.mode||\"targeted_ticket_metrics\"}catch(syncError){setNotice2(\"Eventbrite refresh warning: \"+(syncError.message||syncError)+\". Orbit will keep the latest stored ticket totals.\",!0)}try{const overlay=await api(\"/api/admin/meta-ads/live-overlay/refresh\",{method:\"POST\",body:JSON.stringify({skipRematch:!0,days:45}),cacheMs:0,timeoutMs:12e4});overlay?.success!==!1&&(metaDiagnostics=overlay||null,metaMode=\"incremental_live\")}catch(metaError){throw new Error(\"Meta advertising was not refreshed: \"+(metaError.message||metaError)+\". The financial report has not been replaced. Finish the current Meta sync or retry this refresh.\")}remoteMode=(await api(\"/api/admin/vendors/events/financial-refresh\",{method:\"POST\",body:JSON.stringify({eventKey:event?.key||state.currentVendorEventKey}),cacheMs:0,timeoutMs:12e4}))?.success===!1?remoteMode:\"canonical_event_snapshot\",orbitGetCache.clear(),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\");const fresh=vendorEventByKeyV399(state.currentVendorEventKey);if(fresh){state.currentVendorEvent=fresh;const body=$2(\"vendorEventToolBody\");body&&(body.innerHTML=vendorFinanceHtmlV441(fresh))}const advertisingAfter=Number(fresh?.finance?.expenses?.advertising||0),metaSummary=metaDiagnostics?\" Meta recent window: \\xA3\"+Number(metaDiagnostics.providerSpend||0).toFixed(2)+\" provider spend, \\xA3\"+Number(metaDiagnostics.importedSpend||0).toFixed(2)+\" imported, \\xA3\"+Number(metaDiagnostics.deltaSpend||0).toFixed(2)+\" live ad/day delta; \\xA3\"+Number(metaDiagnostics.matchedDeltaSpend||0).toFixed(2)+\" matched, \\xA3\"+Number(metaDiagnostics.reviewDeltaSpend||0).toFixed(2)+\" review, \\xA3\"+Number(metaDiagnostics.unmatchedDeltaSpend||0).toFixed(2)+\" unmatched.\":\"\",unchanged=metaMode===\"incremental_live\"&&Math.abs(advertisingAfter-advertisingBefore)<.005;setNotice2((remoteMode===\"canonical_event_snapshot\"?\"Ticket/add-on Finance snapshot refreshed and saved\":remoteMode===\"stored_only\"?\"Stored ticket income\":\"Ticket income refreshed\")+\" \\xB7 \"+(metaMode===\"incremental_live\"?\"Meta safe ad/day sync completed\":\"stored advertising costs retained\")+\". Advertising \\xA3\"+advertisingBefore.toFixed(2)+\" \\u2192 \\xA3\"+advertisingAfter.toFixed(2)+\".\"+metaSummary+(unchanged?\" No event advertising change was produced. Review unmatched/review ads rather than forcing campaign-lifetime spend into this event.\":\"\"),!1)}finally{button2&&setLoading(button2,!1)}}async function refreshVendorFinancialPopupV441(button2){return refreshVendorFinancialPopupV465(button2)}async function addVendorFinancialPopupExpenseV441(button2){const event=state.currentVendorEvent,amount=Number($2(\"vendorPopupExpenseAmount\")?.value||0);if(event){if(!amount)throw new Error(\"Enter the expense amount.\");setLoading(button2,!0);try{await api(\"/api/admin/vendors/events/expenses\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,category:$2(\"vendorPopupExpenseCategory\")?.value||\"other\",amount,supplier:$2(\"vendorPopupExpenseSupplier\")?.value||\"\",description:$2(\"vendorPopupExpenseDescription\")?.value||\"\"})}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\");const fresh=vendorEventByKeyV399(event.key)||event;state.currentVendorEvent=fresh;const body=$2(\"vendorEventToolBody\");body&&(body.innerHTML=vendorFinanceHtmlV441(fresh)),setNotice2(\"Event expense added.\")}finally{setLoading(button2,!1)}}}async function deleteVendorFinancialPopupExpenseV441(id){const event=state.currentVendorEvent;if(!event||!confirm(\"Remove this event expense?\"))return;await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/expenses/\"+encodeURIComponent(id),{method:\"DELETE\"}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\");const fresh=vendorEventByKeyV399(event.key)||event;state.currentVendorEvent=fresh;const body=$2(\"vendorEventToolBody\");body&&(body.innerHTML=vendorFinanceHtmlV441(fresh)),setNotice2(\"Event expense removed.\")}async function openVendorMetaBreakdownV457(eventKey){const event=vendorEventByKeyV399(eventKey);if(!event)return;let d=$2(\"vendorMetaBreakdownDialogV457\");d||(d=document.createElement(\"dialog\"),d.id=\"vendorMetaBreakdownDialogV457\",d.className=\"orbit-dialog orbit-vendor-meta-dialog-v457\",d.innerHTML=\"<div class='orbit-dialog-card'><div class='orbit-panel-header'><div><p class='orbit-kicker'>Advertising audit</p><h2 id='vendorMetaBreakdownTitleV457'>Matched Meta ads</h2></div><button type='button' class='secondary' id='closeVendorMetaBreakdownV457'>Close</button></div><div id='vendorMetaBreakdownBodyV457'>Loading\\u2026</div></div>\",document.body.appendChild(d),$2(\"closeVendorMetaBreakdownV457\").addEventListener(\"click\",()=>d.close())),$2(\"vendorMetaBreakdownTitleV457\").textContent=(event.displayName||event.label||\"Event\")+\" \\xB7 matched Meta ads\",d.showModal(),await loadVendorMetaBreakdownV457(event,1)}async function loadVendorMetaBreakdownV457(event,page=1){const body=$2(\"vendorMetaBreakdownBodyV457\");if(!body)return;body.innerHTML=\"<p class='orbit-muted'>Loading matched advertising\\u2026</p>\";const data=await api(\"/api/admin/meta-ads/history?view=event&eventId=\"+encodeURIComponent(event.key)+\"&page=\"+encodeURIComponent(page)+\"&limit=50\",{cacheMs:0,timeoutMs:25e3}),rows=data.rows||[];body.innerHTML=rows.length?\"<p class='orbit-muted'>Campaigns group individual matched ads for display only. Stored history and the published live delta are shown separately. Change ad assignments in Marketing \\u2192 Reconciliation.</p><div class='orbit-table-wrap'><table><thead><tr><th>Campaign</th><th>Dates</th><th>Attributed spend</th><th>Breakdown</th></tr></thead><tbody>\"+rows.map(r=>\"<tr><td><strong>\"+esc(r.campaign_name||r.ad_name||\"Meta campaign\")+\"</strong></td><td>\"+esc([r.first_date,r.last_date].filter(Boolean).join(\" to \"))+\"</td><td>\"+esc(metaAdsMoneyV449(r.spend??r.metrics?.spend,\"GBP\"))+\"</td><td><small>Stored \"+esc(metaAdsMoneyV449(r.historical_spend,\"GBP\"))+\" \\xB7 live \"+esc(metaAdsMoneyV449(r.live_delta_spend,\"GBP\"))+\" \\xB7 \"+esc(String(r.ad_count||1))+\" ad(s)</small></td></tr>\").join(\"\")+\"</tbody></table></div>\"+(data.pages>1?\"<div class='orbit-meta-pagination-v453'><button class='secondary' data-vendor-meta-page-v457='\"+(page-1)+\"' \"+(page<=1?\"disabled\":\"\")+\">Previous</button><span>Page \"+page+\" of \"+data.pages+\"</span><button class='secondary' data-vendor-meta-page-v457='\"+(page+1)+\"' \"+(page>=data.pages?\"disabled\":\"\")+\">Next</button></div>\":\"\"):\"<p class='orbit-muted'>No matched Meta advertising rows are currently attributed to this event.</p>\",body.querySelectorAll(\"[data-vendor-meta-page-v457]\").forEach(btn=>btn.addEventListener(\"click\",()=>loadVendorMetaBreakdownV457(event,Number(btn.dataset.vendorMetaPageV457))))}async function openFinanceArchivedFloorPlanV71705(key){const response=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(key)+\"/archived-floor-plan\",{cacheMs:0,timeoutMs:25e3});let dlg=document.getElementById(\"orbitHistoricFloorPlanDialogV71705\");dlg||(dlg=document.createElement(\"dialog\"),dlg.id=\"orbitHistoricFloorPlanDialogV71705\",dlg.style.cssText=\"border:1px solid #c9dae6;border-radius:20px;padding:24px;width:min(950px,94vw);max-height:90vh;overflow:auto;box-shadow:0 20px 70px #041b3466\",document.body.appendChild(dlg));const event=vendorEventByKeyV399(key),title=event?.displayName||event?.label||\"Past event\";let body='<p role=\"status\" style=\"padding:16px;border-radius:12px;background:#fff6e3;color:#755016\">The original released floor plan is not in the immutable archive. The booking totals remain available, but the original artwork and coordinates must be recovered before the venue plan can be displayed.</p><p>Review original briefing emails, historic media or database backups. The editable modern venue plan is not a substitute.</p>';response.available&&(body=\"<p>Genuine preserved event release \\xB7 \"+esc(response.releasedAt||\"date unavailable\")+\". Read-only.</p>\"+(response.rooms||[]).map(room=>{const marks=(room.tables||[]).map(t=>'<span title=\"Table '+esc(t.label)+'\" style=\"position:absolute;left:'+Math.max(0,Math.min(98,Number(t.x)))+\"%;top:\"+Math.max(0,Math.min(98,Number(t.y)))+'%;font-size:10px;line-height:1;transform:translate(-50%,-50%);border:1px solid #13304c;background:#ffffffca;color:#12304d;padding:2px;border-radius:3px;pointer-events:none\">'+esc(t.label)+\"</span>\").join(\"\");return\"<section><h3>\"+esc(room.name)+'</h3><div style=\"position:relative;border:1px solid #c1d2e1;border-radius:12px;overflow:hidden\"><img alt=\"Original archived floor plan for '+esc(room.name)+'\" style=\"display:block;width:100%;height:auto\" src=\"'+esc(room.backgroundDataUrl)+'\"/>'+marks+\"</div></section>\"}).join(\"\")),dlg.innerHTML='<div style=\"display:flex;justify-content:space-between;gap:14px;align-items:start\"><div><small>Historical released floor plan \\xB7 read-only</small><h2 style=\"margin:6px 0 16px\">'+esc(title)+'</h2></div><button type=\"button\" data-close-archive-plan style=\"padding:10px 15px;border:1px solid #d7e3eb;border-radius:10px;background:#f5f9fb\">Close</button></div>'+body,dlg.querySelector(\"[data-close-archive-plan]\").addEventListener(\"click\",()=>dlg.close()),dlg.showModal()}async function selectVendorToolEventV399(tool,key){const event=vendorEventByKeyV399(key);if(event)if(state.currentVendorEvent=event,state.currentVendorEventKey=event.key,tool===\"planner\"){state.currentModule===\"vendors\"&&state.currentPrimaryRouteV5991!==\"table-planner\"&&(syncWorkspaceNavigation(\"vendors\",\"planner\",\"table-planner\"),updateAdminRouteLocationV5991(\"table-planner\",\"vendors\",\"planner\",\"push\")),setVendorPaneV385(\"planner\");const select=$2(\"vendorPlannerEventSelect\");select&&(select.value=event.key),$2(\"vendorPlannerEventTitle\")&&($2(\"vendorPlannerEventTitle\").textContent=event.displayName||event.label||\"Event\");try{const plan=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/table-plan\");state.vendorTablePlan=plan.tablePlan||{version:2,rooms:[],activeRoomId:null}}catch{state.vendorTablePlan={version:2,rooms:[],activeRoomId:null}}if(!Array.isArray(state.vendorTablePlan.rooms)){const legacy=state.vendorTablePlan;state.vendorTablePlan={version:2,rooms:legacy.backgroundDataUrl||legacy.tables?.length?[{id:\"legacy-room\",name:legacy.backgroundName||\"Legacy floor plan\",rotation:0,flipX:!1,flipY:!1,backgroundDataUrl:legacy.backgroundDataUrl||null,tables:legacy.tables||[]}]:[],activeRoomId:\"legacy-room\"}}state.vendorPlannerZoom=1,$2(\"vendorPlannerZoomLabel\")&&($2(\"vendorPlannerZoomLabel\").textContent=\"100%\"),$2(\"vendorPlannerStatus\")&&($2(\"vendorPlannerStatus\").value=vendorTablePlanIsManuallyCompleteV466(state.vendorTablePlan)?\"ready\":\"draft\"),setVendorPlanSaveStateV403(\"Saved\",\"saved\"),populateVendorFloorPlanSelectV401(),await renderVendorTablePlanV398(),updateVendorPlannerProgressV399(),loadVendorBookingNotesV618(event),loadVendorPlannerBookingAuditV725(event)}else tool===\"documents\"?openVendorDocumentsDialogV439(event):tool===\"briefings\"&&openVendorBriefingDialogV440(event)}function updateVendorPlannerProgressV399(){const event=state.currentVendorEvent,plan=state.vendorTablePlan||{rooms:[]},target=$2(\"vendorPlannerProgress\");if(!target||!event)return;const groups=plannerGroupsV398(event),tables=(plan.rooms||[]).flatMap(r=>r.tables||[]),required=groups.reduce((n,g)=>n+vendorPlannerRequiredTablesV418(g),0),assigned=tables.filter(x=>x.vendorKey).length,complete=groups.filter(g=>tables.filter(x=>x.vendorKey===g.customer?.key).length>=vendorPlannerRequiredTablesV418(g)).length,orphanCount=(plan.rooms||[]).reduce((n,r)=>n+Number((r.orphanAllocations||[]).length),0);target.textContent=complete+\"/\"+groups.length+\" vendors complete \\xB7 \"+assigned+\"/\"+required+\" required tables allocated \\xB7 \"+Number((plan.rooms||[]).length)+\" room/map\"+((plan.rooms||[]).length===1?\"\":\"s\")+(orphanCount?\" \\xB7 \\u26A0 \"+orphanCount+\" preserved allocation\"+(orphanCount===1?\"\":\"s\")+\" need reassignment\":\"\"),target.classList.toggle(\"warning\",orphanCount>0)}function vendorGroupActionRowV399(group,action){const shopify=(group?.rows||[]).filter(x=>x.type===\"shopify\"&&x.lineKind===\"table\"),complimentary=(group?.rows||[]).filter(x=>x.type===\"complimentary\"&&x.lineKind===\"table\"),rows=shopify.length?shopify:complimentary;if(!rows.length)return null;if(rows.length===1)return rows[0];const labels=rows.map((x,i)=>i+1+\": \"+(x.orderName||x.shopifyOrderId)+\" \\xB7 \"+Number(x.quantity||0)+\" table(s)\").join(`\n`),answer=prompt(\"This vendor has multiple underlying bookings. Choose which booking to \"+action+`:\n\n`+labels+`\n\nEnter 1-`+rows.length,\"1\");if(answer===null)return null;const index=Number(answer)-1;return rows[index]||null}function runVendorGroupActionV399(button2){const group=(state.vendorEventBookingGroups||[])[Number(button2.dataset.groupIndex)],action=button2.dataset.vendorGroupAction,row=vendorGroupActionRowV399(group,action);if(!row)return;const proxy=document.createElement(\"button\");proxy.dataset.orderId=row.shopifyOrderId||\"\",proxy.dataset.lineId=row.lineItemId||\"\",proxy.dataset.adjustmentId=row.adjustmentId||\"\",action===\"add-table\"||action===\"remove-table\"?adjustVendorBookingTablesV420(group,row,action===\"add-table\"?1:-1).catch(err=>setNotice2(err.message||err,!0)):action===\"transfer\"?openVendorTransferV385(proxy):action===\"cancel\"?cancelVendorBookingV398(proxy).catch(err=>setNotice2(err.message||err,!0)):action===\"substitute\"?substituteVendorBookingV398(proxy).catch(err=>setNotice2(err.message||err,!0)):action===\"display-case\"&&addVendorDisplayCaseV404(proxy).catch(err=>setNotice2(err.message||err,!0))}async function addVendorDisplayCaseV404(button2){const quantity=Number(prompt(\"How many display cases should be added to this booking?\",\"1\"));if(!Number.isFinite(quantity)||quantity<1)return;const adjustmentId=button2.dataset.adjustmentId||\"\",result=adjustmentId?await api(\"/api/admin/vendors/bookings/complimentary-action\",{method:\"POST\",body:JSON.stringify({adjustmentId,action:\"display-case\",quantity})}):await api(\"/api/admin/vendors/bookings/display-cases\",{method:\"POST\",body:JSON.stringify({shopifyOrderId:button2.dataset.orderId,lineItemId:button2.dataset.lineId,quantity})});if(setNotice2(quantity+\" display case\"+(quantity===1?\"\":\"s\")+\" added to the Orbit vendor record.\"),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),state.currentVendorEvent){const refreshed=(state.vendorWorkspace?.allEvents||[]).find(x=>x.key===state.currentVendorEvent.key);refreshed&&renderVendorEventDetailV398(refreshed)}return result}function clearVendorCompCustomerSelectionV509(){state.vendorCompSelectedCustomerV509=null;const selected=$2(\"vendorCompSelectedCustomerV509\");selected&&(selected.hidden=!0,selected.innerHTML=\"\")}function selectVendorCompCustomerV509(customer){if(state.vendorCompSelectedCustomerV509=customer||null,!customer)return;$2(\"vendorCompName\").value=customer.businessName||customer.name||\"\",$2(\"vendorCompEmail\").value=customer.email||\"\";const selected=$2(\"vendorCompSelectedCustomerV509\");selected&&(selected.hidden=!1,selected.innerHTML=\"<strong>Linked to existing Vendor customer</strong><span>\"+esc(customer.businessName||customer.name||\"Vendor\")+(customer.email?\" \\xB7 \"+esc(customer.email):\"\")+\"</span>\");const results=$2(\"vendorCompCustomerResultsV509\");results&&(results.hidden=!0,results.innerHTML=\"\")}async function searchVendorCompCustomersV509(){const input=$2(\"vendorCompCustomerSearchV509\"),results=$2(\"vendorCompCustomerResultsV509\");if(!input||!results)return;const q=String(input.value||\"\").trim();if(q.length<2){results.hidden=!0,results.innerHTML=\"\";return}const rows=(await api(\"/api/admin/vendors/workspace?pane=customers&page=1&limit=8&q=\"+encodeURIComponent(q),{cacheMs:0,timeoutMs:15e3})).customers||[];results.hidden=!1,results.innerHTML=rows.length?rows.map((c,i)=>\"<button type='button' class='secondary' data-vendor-comp-customer-v509='\"+i+\"'><strong>\"+esc(c.businessName||c.name||\"Vendor\")+\"</strong><span>\"+esc(c.email||c.name||\"\")+\"</span></button>\").join(\"\"):\"<p class='orbit-muted'>No existing Vendor customer matched. You can still enter the booking manually.</p>\",state.vendorCompSearchResultsV509=rows}function resetVendorComplimentaryV404(event=null){clearVendorCompCustomerSelectionV509(),$2(\"vendorCompCustomerSearchV509\")&&($2(\"vendorCompCustomerSearchV509\").value=\"\"),$2(\"vendorCompCustomerResultsV509\")&&($2(\"vendorCompCustomerResultsV509\").hidden=!0,$2(\"vendorCompCustomerResultsV509\").innerHTML=\"\"),$2(\"vendorCompName\").value=\"\",$2(\"vendorCompEmail\").value=\"\",$2(\"vendorCompQuantity\").value=\"1\",$2(\"vendorCompNotes\").value=\"\",$2(\"vendorCompAwardClubPointsV620\")&&($2(\"vendorCompAwardClubPointsV620\").checked=!1),$2(\"vendorCompResult\").hidden=!0;const select=$2(\"vendorCompEvent\");select&&(select.value=event?.key||\"\",select.dispatchEvent(new Event(\"change\"))),$2(\"vendorCompEventDate\")&&($2(\"vendorCompEventDate\").value=vendorDateInputV388(event?.eventDate||\"\"))}function openVendorComplimentaryV404(event=null){resetVendorComplimentaryV404(event),$2(\"vendorComplimentaryDialog\")?.showModal()}async function openVendorEventV398(key){const event=(state.vendorWorkspace?.allEvents||[]).find(x=>x.key===key);event&&(renderVendorEventDetailV398(event),$2(\"vendorEventDetailDialog\")?.showModal())}async function saveVendorEventSetupV398(button2){const event=state.currentVendorEvent;if(event){setLoading(button2,!0);try{return await api(\"/api/admin/vendors/events/config\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,venueId:$2(\"vendorEventVenue\").value,setupTime:$2(\"vendorEventSetupTime\").value,vendorInstructions:$2(\"vendorEventInstructions\").value,parkingNotes:$2(\"vendorEventParking\").value,rules:$2(\"vendorEventRules\").value})}),setNotice2(\"Event setup saved.\"),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),!0}finally{setLoading(button2,!1)}}}async function saveVendorEventClubV620(button2){const event=state.currentVendorEvent;if(!event)return;const price=Number($2(\"vendorEventClubPriceV620\")?.value||0),capacityRaw=String($2(\"vendorEventClubCapacityV620\")?.value||\"\").trim(),capacity=capacityRaw===\"\"?null:Number(capacityRaw);if(price<0||!Number.isFinite(price))throw new Error(\"Enter a valid table price.\");if(capacity!==null&&(!Number.isInteger(capacity)||capacity<0))throw new Error(\"Capacity must be a whole number or blank to use live Shopify stock.\");setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/events/config\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,standardTablePrice:price,allowVendorClubPointsBookings:$2(\"vendorEventAllowClubPointsV620\")?.checked!==!1,vendorClubTableCapacity:capacity}),cacheMs:0});return Object.assign(event,result.eventRecord||{}),setNotice2(\"Vendor Club booking controls saved.\"),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),result}finally{setLoading(button2,!1)}}async function addVendorEventExpenseV398(button2){const event=state.currentVendorEvent;if(!event)return;const amount=Number($2(\"vendorExpenseAmount\").value||0);if(!amount)throw new Error(\"Enter the expense amount.\");setLoading(button2,!0);try{await api(\"/api/admin/vendors/events/expenses\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,category:$2(\"vendorExpenseCategory\").value,amount,supplier:$2(\"vendorExpenseSupplier\").value,description:$2(\"vendorExpenseDescription\").value})}),$2(\"vendorExpenseAmount\").value=\"\",$2(\"vendorExpenseSupplier\").value=\"\",$2(\"vendorExpenseDescription\").value=\"\",await loadVendorWorkspaceV398(null,!0,!0,state.currentVendorPane||\"customers\"),setNotice2(\"Event expense added.\")}finally{setLoading(button2,!1)}}async function deleteVendorEventExpenseV398(id){const event=state.currentVendorEvent;!event||!confirm(\"Remove this event expense?\")||(await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/expenses/\"+encodeURIComponent(id),{method:\"DELETE\"}),await loadVendorWorkspaceV398(null,!0,!0,state.currentVendorPane||\"customers\"),setNotice2(\"Event expense removed.\"))}function fileToDataUrlV398(file){return new Promise((resolve,reject)=>{const reader=new FileReader;reader.onload=()=>resolve(reader.result),reader.onerror=()=>reject(reader.error||new Error(\"Could not read file.\")),reader.readAsDataURL(file)})}async function uploadVendorEventDocumentV398(button2){const event=state.currentVendorEvent,file=$2(\"vendorEventDocumentFile\")?.files?.[0];if(!event||!file)throw new Error(\"Choose a PDF or image to upload.\");setLoading(button2,!0);try{const dataUrl=await fileToDataUrlV398(file);await api(\"/api/admin/vendors/events/documents\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,name:$2(\"vendorEventDocumentName\").value||file.name,fileName:file.name,dataUrl,category:$2(\"vendorEventDocumentCategoryV620\")?.value||\"general\",finalVendorDocument:$2(\"vendorEventDocumentFinalV620\")?.checked===!0})}),$2(\"vendorEventDocumentFile\").value=\"\",$2(\"vendorEventDocumentName\").value=\"\",$2(\"vendorEventDocumentFinalV620\")&&($2(\"vendorEventDocumentFinalV620\").checked=!1),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),setNotice2(\"Event document stored.\")}finally{setLoading(button2,!1)}}async function openVendorEventDocumentV398(id){const event=state.currentVendorEvent;if(!event)return;const url=(await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/documents/\"+encodeURIComponent(id))).document?.dataUrl;if(url){const w=window.open();w&&(w.location.href=url)}}async function deleteVendorEventDocumentV398(id){const event=state.currentVendorEvent;!event||!confirm(\"Remove this document from the event record?\")||(await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/documents/\"+encodeURIComponent(id),{method:\"DELETE\"}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),setNotice2(\"Event document removed.\"))}async function releaseVendorEventDocumentV620(button2){const event=state.currentVendorEvent,id=button2.dataset.vendorDocumentReleaseV620,released=button2.dataset.released!==\"1\";if(!(!event||!id)&&!(released&&!confirm(\"Release this final vendor document to booked vendors in Vendor Club?\"))){setLoading(button2,!0);try{await api(\"/api/admin/vendors/club/events/\"+encodeURIComponent(event.key)+\"/documents/\"+encodeURIComponent(id)+\"/release\",{method:\"POST\",body:JSON.stringify({released}),cacheMs:0}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"documents\");const refreshed=(state.vendorWorkspace?.allEvents||[]).find(x=>x.key===event.key);refreshed&&(state.currentVendorEvent=refreshed,renderVendorEventDocumentsV398(refreshed)),setNotice2(released?\"Final document released to Vendor Club.\":\"Document removed from Vendor Club while remaining in Admin.\")}finally{setLoading(button2,!1)}}}function plannerGroupsV398(event){return groupedEventBookingsV398(event).filter(g=>Number(g.tables||0)>0)}function vendorPlannerSlotsV401(){return\"\"}function activeVendorPlannerRoomV401(){const plan=state.vendorTablePlan||{},rooms=plan.rooms||[];return rooms.find(r=>r.id===plan.activeRoomId)||rooms[0]||null}function transformVendorPointV401(x,y,room){let px=Number(x||0),py=Number(y||0),r=Number(room?.rotation||0);return r===90?[px,py]=[100-py,px]:r===180?[px,py]=[100-px,100-py]:r===270&&([px,py]=[py,100-px]),room?.flipX&&(px=100-px),room?.flipY&&(py=100-py),{x:px,y:py}}function inverseVendorPointV401(x,y,room){let px=Number(x||0),py=Number(y||0);room?.flipX&&(px=100-px),room?.flipY&&(py=100-py);const r=Number(room?.rotation||0);return r===90?[px,py]=[py,100-px]:r===180?[px,py]=[100-px,100-py]:r===270&&([px,py]=[100-py,px]),{x:px,y:py}}function imageDimensionsV401(dataUrl){return new Promise((resolve,reject)=>{const img=new Image;img.onload=()=>resolve({img,width:img.naturalWidth||img.width,height:img.naturalHeight||img.height}),img.onerror=()=>reject(new Error(\"Could not load floor plan image.\")),img.src=dataUrl})}async function orientedVendorBackgroundV401(room){if(!room?.backgroundDataUrl)return null;const key=[room.rotation||0,room.flipX?1:0,room.flipY?1:0,room.backgroundDataUrl.length].join(\":\");if(room._orientedKey===key&&room._orientedDataUrl)return room._orientedDataUrl;const{img,width,height}=await imageDimensionsV401(room.backgroundDataUrl),rot=Number(room.rotation||0),swap=rot===90||rot===270,canvas=document.createElement(\"canvas\");canvas.width=swap?height:width,canvas.height=swap?width:height;const ctx=canvas.getContext(\"2d\");return ctx.translate(canvas.width/2,canvas.height/2),ctx.scale(room.flipX?-1:1,room.flipY?-1:1),ctx.rotate(rot*Math.PI/180),ctx.drawImage(img,-width/2,-height/2),room._orientedKey=key,room._orientedDataUrl=canvas.toDataURL(\"image/jpeg\",.9),room._displayWidth=canvas.width,room._displayHeight=canvas.height,room._orientedDataUrl}function vendorPlannerExtraTablesV418(group){const key=group?.customer?.key||\"\",map=state.vendorTablePlan?.tableOverrides||{};return Math.max(0,Number(map[key]||0))}function vendorPlannerRequiredTablesV418(group){return Math.max(1,Number(group?.tables||0))}function adjustVendorPlannerExtraTablesV418(vendorKey,delta){const plan=state.vendorTablePlan,group=plannerGroupsV398(state.currentVendorEvent).find(g=>g.customer?.key===vendorKey);if(!plan||!group)return;plan.tableOverrides=plan.tableOverrides||{};const current=Math.max(0,Number(plan.tableOverrides[vendorKey]||0)),next=Math.max(0,Math.min(20,current+Number(delta||0)));next?plan.tableOverrides[vendorKey]=next:delete plan.tableOverrides[vendorKey];const required=vendorPlannerRequiredTablesV418(group),all=(plan.rooms||[]).flatMap(r=>r.tables||[]),assigned=all.filter(t=>t.vendorKey===vendorKey);assigned.length>required&&assigned.slice(required).forEach(t=>t.vendorKey=null),setNotice2((group.customer?.name||\"Vendor\")+\" now needs \"+required+\" table\"+(required===1?\"\":\"s\")+\" in this show plan\"+(next?\" (\"+next+\" manually added)\":\"\")+\".\"),refreshVendorPlannerAllocationsV727(),scheduleVendorPlanAutosaveV403()}function undoVendorAllocationV418(vendorKey){const plan=state.vendorTablePlan,group=plannerGroupsV398(state.currentVendorEvent).find(g=>g.customer?.key===vendorKey);if(!plan||!group)return;let cleared=0;(plan.rooms||[]).forEach(r=>{if((r.tables||[]).forEach(t=>{t.vendorKey===vendorKey&&(t.vendorKey=null,cleared++)}),Array.isArray(r.orphanAllocations)){const before=r.orphanAllocations.length;r.orphanAllocations=r.orphanAllocations.filter(o=>o.vendorKey!==vendorKey),cleared+=before-r.orphanAllocations.length}}),setNotice2((group.customer?.name||\"Vendor\")+\" returned to the unallocated list (\"+cleared+\" table\"+(cleared===1?\"\":\"s\")+\" cleared).\"),refreshVendorPlannerAllocationsV727(),scheduleVendorPlanAutosaveV403()}async function loadVendorBookingNotesV618(event){if(event?.key){event.bookingNotesStatusV618=\"Loading booking notes\\u2026\",renderVendorPlannerTrayV398(event);try{const data=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/booking-notes\",{cacheMs:0,timeoutMs:2e4});if(state.currentVendorEvent?.key!==event.key)return;const notes=new Map((data.notes||[]).map(row=>[row.shopifyOrderId,row.note]));for(const booking of event.bookings||[])notes.has(booking.shopifyOrderId)&&(booking.orderNote=notes.get(booking.shopifyOrderId));event.bookingNotesStatusV618=data.complete===!1?\"Some booking notes could not be checked. Retry before finalising allocations.\":\"\"}catch{if(state.currentVendorEvent?.key!==event.key)return;event.bookingNotesStatusV618=\"Booking notes unavailable. Retry before finalising allocations.\"}renderVendorPlannerTrayV398(event)}}function vendorBookingNotesV618(group){const seen=new Set,rows=[];for(const booking of group?.rows||[]){const note=String(booking.orderNote||\"\").trim();if(!note)continue;const key=String(booking.shopifyOrderId||booking.orderName||\"\")+\"|\"+note;seen.has(key)||(seen.add(key),rows.push({order:booking.orderName||\"Booking\",note}))}return rows.length?\"<details class='orbit-booking-notes-v618' open><summary>Booking notes (\"+rows.length+\")</summary>\"+rows.map(row=>\"<p><strong>\"+esc(row.order)+\"</strong><span>\"+esc(row.note)+\"</span></p>\").join(\"\")+\"</details>\":\"\"}function vendorPlannerBookingIdentityV725(row){const kind=String(row?.type||\"\").trim(),ref=String(row?.shopifyOrderId||row?.adjustmentId||row?.vendorClubBookingId||row?.id||\"\").trim(),line=String(row?.lineItemId||\"\").trim();return kind&&ref?JSON.stringify([kind,ref,line]):null}function vendorPlannerExplicitSizeV725(row){const fields=[row?.tableType,row?.historicalLine?.variantTitle,row?.historicalLine?.lineTitle,row?.historicalLine?.sku].filter(Boolean),detected=new Set;for(const field of fields)for(const match of String(field).matchAll(/(?:^|[^\\d])([46])\\s*(?:ft|feet|foot|['\u2019])(?=[^a-z]|$)/gi))detected.add(match[1]+\"ft\");return detected.size===1?[...detected][0]:null}function vendorPlannerBookingSizesV724(group){const totals={\"4ft\":0,\"6ft\":0,unknown:0},event=state.currentVendorEvent||{},verified=event.vendorPlannerSizeAuditV725;for(const row of group?.rows||[]){if(row.lineKind&&row.lineKind!==\"table\")continue;const qty=Math.max(0,Math.trunc(Number(row.quantity)||0));if(!qty)continue;const identity=vendorPlannerBookingIdentityV725(row),original=vendorPlannerExplicitSizeV725(row),audited=identity&&verified instanceof Map?verified.get(identity):null,size=audited&&[\"4ft\",\"6ft\"].includes(audited.size)&&audited.quantity===qty&&(!original||original===audited.size)?audited.size:audited&&audited.size&&original&&audited.size!==original||audited&&audited.size===null?\"unknown\":original||\"unknown\";totals[size]+=qty}return totals}async function loadVendorPlannerBookingAuditV725(event){if(!event||!/^2026-11-14/.test(String(event.eventDate||event.date||\"\"))||!/wolverhampton/i.test(String(event.label||event.eventName||event.displayName||event.venueName||event.venue||\"\")))return;const eventKey=event.key;event.vendorPlannerSizeAuditStatusV725=\"Reading original booking sizes\\u2026\";try{const data=await api(\"/api/admin/vendors/club/wolverhampton-november-audit\",{cacheMs:0,timeoutMs:3e4});if(state.currentVendorEvent?.key!==eventKey)return;const map=new Map,duplicates=new Set;for(const vendor of data.vendors||[])for(const record of vendor.bookings||[]){if(record.bookingStatus!==\"active\")continue;const key=vendorPlannerBookingIdentityV725({type:record.evidence?.source,shopifyOrderId:record.evidence?.source===\"shopify\"?record.evidence?.bookingRef:null,adjustmentId:record.evidence?.source!==\"shopify\"?record.evidence?.bookingRef:null,lineItemId:record.evidence?.lineItemId});key&&(map.has(key)?duplicates.add(key):map.set(key,{size:[\"4ft\",\"6ft\"].includes(record.verifiedSize)?record.verifiedSize:null,quantity:Math.max(0,Number(record.quantity)||0)}))}for(const key of duplicates)map.delete(key);state.currentVendorEvent.vendorPlannerSizeAuditV725=map,state.currentVendorEvent.vendorPlannerSizeAuditStatusV725=Number(data.summary?.unresolved||0)>0?String(data.summary.unresolved)+\" genuine bookings still need source confirmation.\":\"\",renderVendorPlannerTrayV398(state.currentVendorEvent)}catch{if(state.currentVendorEvent?.key!==event.key)return;state.currentVendorEvent.vendorPlannerSizeAuditStatusV725=\"Booking-size audit unavailable; no table sizes have been guessed.\",renderVendorPlannerTrayV398(state.currentVendorEvent)}}function vendorPlannerBookingSizeLabelV724(group){const sizes=vendorPlannerBookingSizesV724(group),parts=[];return sizes[\"4ft\"]&&parts.push(sizes[\"4ft\"]+\" \\xD7 4ft\"),sizes[\"6ft\"]&&parts.push(sizes[\"6ft\"]+\" \\xD7 6ft\"),sizes.unknown&&parts.push(sizes.unknown+\" \\xD7 confirm size in booking audit\"),parts.join(\" \\xB7 \")||\"No verified booking size\"}function vendorPlannerAssignedLabelsV772(vendorKey){const rows=(state.vendorTablePlan?.rooms||[]).flatMap(r=>(r.tables||[]).filter(t=>String(t.vendorKey||\"\")===String(vendorKey)).map(t=>({label:String(t.label||\"\").trim(),room:r.name||\"Room\"}))).filter(t=>t.label),numeric=label=>/^\\d+$/.test(label)?Number(label):null;return rows.sort((a,b)=>{const an=numeric(a.label),bn=numeric(b.label);return an!==null&&bn!==null?an-bn:a.label.localeCompare(b.label,void 0,{numeric:!0})||a.room.localeCompare(b.room)}),rows.map(t=>t.label)}function manualVendorTableAssignmentV772(vendorKey,tableNumbers){const plan=state.vendorTablePlan,group=plannerGroupsV398(state.currentVendorEvent).find(g=>String(g.customer?.key||\"\")===String(vendorKey));if(!plan||!group)throw new Error(\"Select an event and an active vendor first.\");const input=String(tableNumbers||\"\").trim(),labels=input.split(/[;,\\s]+/).map(x=>x.trim()).filter(Boolean),required=vendorPlannerRequiredTablesV418(group),name=group.customer?.businessName||group.customer?.name||\"Vendor\";if(labels.length!==required)throw new Error(name+\" has \"+required+\" booked table\"+(required===1?\"\":\"s\")+\". Enter exactly \"+required+\" table number\"+(required===1?\"\":\"s\")+\".\");if(new Set(labels.map(s=>s.toLowerCase())).size!==labels.length)throw new Error(\"Each table number can only be entered once.\");const all=(plan.rooms||[]).flatMap(room=>(room.tables||[]).map(table2=>({room,table:table2}))),choices=[];for(const label of labels){const matches=all.filter(row2=>String(row2.table.label||\"\").trim().toLowerCase()===label.toLowerCase());if(!matches.length)throw new Error(\"Table \"+label+\" does not exist in this event floor plan.\");if(matches.length>1)throw new Error(\"Table \"+label+\" exists in multiple rooms. Open the correct room or use uniquely numbered tables.\");const row=matches[0];if(row.table.vendorKey&&String(row.table.vendorKey)!==String(vendorKey))throw new Error(\"Table \"+label+\" is already allocated to another vendor. Reassign or remove that allocation first.\");choices.push(row.table)}const selection=new Set(choices);for(const row of all)String(row.table.vendorKey||\"\")===String(vendorKey)&&!selection.has(row.table)&&(row.table.vendorKey=null);for(const table2 of choices)table2.vendorKey=vendorKey;return state.vendorPlannerSelectedKeyV723=null,refreshVendorPlannerAllocationsV727(),scheduleVendorPlanAutosaveV403(),vendorPlannerAssignedLabelsV772(vendorKey)}function promptManualVendorTableAssignmentV772(vendorKey){const group=plannerGroupsV398(state.currentVendorEvent).find(g=>String(g.customer?.key||\"\")===String(vendorKey));if(!group)return;const name=group.customer?.businessName||group.customer?.name||\"Vendor\",current=vendorPlannerAssignedLabelsV772(vendorKey),requested=prompt(\"Assign exact table numbers to \"+name+\". Enter \"+vendorPlannerRequiredTablesV418(group)+` numbers separated by commas.\nOther vendors\\u2019 tables cannot be overwritten.`,current.join(\", \"));if(requested!==null)try{const desired=requested.split(/[;,\\s]+/).map(x=>x.trim()).filter(Boolean);if(current.length&&!confirm(\"Change \"+name+\" from tables \"+current.join(\", \")+\" to \"+desired.join(\", \")+\"?\"))return;const allocated=manualVendorTableAssignmentV772(vendorKey,requested);setNotice2(name+\" allocated to tables \"+allocated.join(\", \")+\". Saving floor plan\\u2026\")}catch(error){setNotice2(error.message||String(error),!0)}}function vendorPlannerAllocatedCountV724(vendorKey){return(state.vendorTablePlan?.rooms||[]).reduce((n,room)=>n+(room.tables||[]).filter(t=>String(t.vendorKey||\"\")===String(vendorKey)).length,0)}function toggleVendorPlannerChipV723(vendorKey){if(!vendorKey)return;const tray=$2(\"vendorPlannerVendorTray\");if(tray){if(vendorPlannerAllocatedCountV724(vendorKey)>0){state.vendorPlannerSelectedKeyV723=null,undoVendorAllocationV418(vendorKey);return}state.vendorPlannerSelectedKeyV723=state.vendorPlannerSelectedKeyV723===vendorKey?null:vendorKey,tray.querySelectorAll(\"[data-planner-vendor]\").forEach(el=>{const selected=el.dataset.plannerVendor===state.vendorPlannerSelectedKeyV723;el.classList.toggle(\"is-selected-v723\",selected),el.setAttribute(\"aria-pressed\",String(selected))})}}function renderVendorPlannerTrayV398(event){installVendorPlannerV772Style(),installVendorPlannerV773Style();const tray=$2(\"vendorPlannerVendorTray\");if(!tray)return;const plan=state.vendorTablePlan||{rooms:[]},groups=plannerGroupsV398(event||state.currentVendorEvent);new Set(groups.map(g=>g.customer?.key).filter(Boolean)).has(state.vendorPlannerSelectedKeyV723)||(state.vendorPlannerSelectedKeyV723=null);const railScrollLeftV72601=tray.scrollLeft,activeVendorV72601=document.activeElement?.closest?.(\"[data-planner-vendor]\")?.dataset.plannerVendor||null;if(tray.innerHTML=groups.map(g=>{const vendorKey=g.customer?.key||\"\",assigned=vendorPlannerAllocatedCountV724(vendorKey),required=vendorPlannerRequiredTablesV418(g),status=assigned>=required?\"complete\":assigned?\"partial\":\"unallocated\",name=g.customer?.businessName||g.customer?.name||\"Unknown vendor\",selected=state.vendorPlannerSelectedKeyV723===vendorKey,sizes=vendorPlannerBookingSizeLabelV724(g),labels=vendorPlannerAssignedLabelsV772(vendorKey),action=assigned?\"Click card to remove all allocated tables; use Set tables to change exact numbers\":\"Click card to select or drag to the map; use Set tables to enter exact numbers\",aria=name+\" \\xB7 \"+sizes+\" \\xB7 \"+assigned+\" of \"+required+\" allocated\"+(labels.length?\" \\xB7 Tables \"+labels.join(\", \"):\"\")+\" \\xB7 \"+action,summary=labels.length?\"<span class='orbit-vendor-planner-table-numbers-v772' title='Tables: \"+esc(labels.join(\", \"))+\"'>Tables: <strong>\"+esc(labels.join(\", \"))+\"</strong></span>\":\"<span class='orbit-vendor-planner-table-numbers-v772' title='\"+esc(sizes)+\"'>\"+esc(sizes)+\"</span>\";return\"<div class='orbit-vendor-planner-chip orbit-vendor-planner-chip-v724 \"+status+(selected?\" is-selected-v723\":\"\")+\"' draggable='true' tabindex='0' role='button' aria-pressed='\"+selected+\"' aria-label='\"+esc(aria)+\"' title='\"+esc(name+\" \\xB7 \"+sizes+(labels.length?\" \\xB7 Tables \"+labels.join(\", \"):\"\"))+\"' data-planner-vendor='\"+esc(vendorKey)+\"'><div class='orbit-vendor-planner-chip-main-v724'><strong class='orbit-vendor-planner-name-v773'>\"+esc(name)+\"</strong><small class='orbit-vendor-planner-booking-sizes-v724'>\"+esc(sizes)+\"</small><span class='orbit-vendor-planner-meta-v773'><span class='orbit-vendor-planner-state-v724'>\"+assigned+\"/\"+required+\"</span>\"+summary+\"</span></div><button type='button' class='orbit-vendor-planner-manual-v772' data-vendor-manual-assign-v772='\"+esc(vendorKey)+\"' aria-label='Set exact table numbers for \"+esc(name)+\"' title='Set exact tables for \"+esc(name)+\"'>Set</button></div>\"}).join(\"\")||\"<p class='orbit-muted'>No table bookings for this event.</p>\",tray.scrollLeft=railScrollLeftV72601,activeVendorV72601){const prior=[...tray.querySelectorAll(\"[data-planner-vendor]\")].find(el=>el.dataset.plannerVendor===activeVendorV72601);prior&&prior.focus({preventScroll:!0})}tray.querySelectorAll(\"[data-vendor-manual-assign-v772]\").forEach(button2=>{button2.addEventListener(\"click\",e=>{e.stopPropagation(),promptManualVendorTableAssignmentV772(button2.dataset.vendorManualAssignV772)}),button2.addEventListener(\"keydown\",e=>e.stopPropagation()),button2.addEventListener(\"dragstart\",e=>e.preventDefault())}),tray.querySelectorAll(\"[data-planner-vendor]\").forEach(el=>{el.addEventListener(\"dragstart\",e=>{e.dataTransfer.setData(\"application/x-orbit-vendor\",el.dataset.plannerVendor),e.dataTransfer.effectAllowed=\"move\"}),el.addEventListener(\"click\",()=>toggleVendorPlannerChipV723(el.dataset.plannerVendor)),el.addEventListener(\"keydown\",e=>{(e.key===\"Enter\"||e.key===\" \")&&(e.preventDefault(),toggleVendorPlannerChipV723(el.dataset.plannerVendor))})})}function effectiveVendorTableOrientationV403(table2,room){const base=table2?.orientation===\"vertical\"?\"vertical\":\"horizontal\",rot=Number(room?.rotation||0);return rot===90||rot===270?base===\"vertical\"?\"horizontal\":\"vertical\":base}function vendorTableAdjacencyScoreV419(a,b,room){const aa=vendorTableDisplayBoxV404(a,room),bb=vendorTableDisplayBoxV404(b,room),orientation=effectiveVendorTableOrientationV403(b,room),cross=Math.abs(orientation===\"vertical\"?aa.x-bb.x:aa.y-bb.y),along=Math.abs(orientation===\"vertical\"?aa.y-bb.y:aa.x-bb.x),crossSize=orientation===\"vertical\"?Math.max(aa.width,bb.width):Math.max(aa.height,bb.height);return(effectiveVendorTableOrientationV403(a,room)===orientation?0:1e5)+(cross>Math.max(1.25,crossSize*1.25)?5e4:0)+cross*1e3+along}function nearestVendorTablesV401(room,target,needed,vendorKey,alreadyAssigned=new Set){const available=(room.tables||[]).filter(t=>!t.vendorKey&&!alreadyAssigned.has(t.id));if(!needed||!available.length)return[];const selected=[];let cursor=target;for(available.includes(target)&&(selected.push(target),cursor=target);selected.length<needed;){const candidates=available.filter(t=>!selected.includes(t));if(!candidates.length)break;const cb=vendorTableDisplayBoxV404(cursor,room),co=effectiveVendorTableOrientationV403(cursor,room);candidates.sort((a,b)=>{const score=t=>{const tb=vendorTableDisplayBoxV404(t,room),to=effectiveVendorTableOrientationV403(t,room),dx=Math.abs(tb.x-cb.x),dy=Math.abs(tb.y-cb.y),dist=Math.hypot(dx,dy),straight=co===\"vertical\"?dx:dy,turn=to===co?0:Math.max(0,dist-1.5)*4;return dist+straight*2+turn};return score(a)-score(b)});const next=candidates[0];selected.push(next),cursor=next}return selected.slice(0,needed)}function assignVendorSlotsV401(vendorKey,tableId){const plan=state.vendorTablePlan,room=activeVendorPlannerRoomV401();if(!plan||!room)return;const groups=plannerGroupsV398(state.currentVendorEvent),group=groups.find(g=>g.customer?.key===vendorKey);if(!group)return;const target=(room.tables||[]).find(t=>t.id===tableId);if(!target)return;const allTables=(plan.rooms||[]).flatMap(r=>r.tables||[]),activeVendorKeys=new Set(groups.map(g=>g.customer?.key).filter(Boolean));if(target.vendorKey&&target.vendorKey!==vendorKey){if(activeVendorKeys.has(target.vendorKey)){setNotice2(\"Table \"+target.label+\" is already allocated to another current vendor.\",!0);return}const staleKey=target.vendorKey,freed=allTables.filter(t=>t.vendorKey===staleKey);freed.forEach(t=>t.vendorKey=null),setNotice2(\"Recovered \"+freed.length+\" stale table allocation\"+(freed.length===1?\"\":\"s\")+\" from the previous vendor identity. Reassigning to \"+(group.customer?.businessName||group.customer?.name||\"the current vendor\")+\".\")}const needed=vendorPlannerRequiredTablesV418(group);let existing=allTables.filter(t=>t.vendorKey===vendorKey);existing.length>=needed&&(allTables.forEach(t=>{t.vendorKey===vendorKey&&(t.vendorKey=null)}),existing=[]);const remaining=Math.max(0,needed-existing.length),already=new Set(existing.map(t=>t.id));nearestVendorTablesV401(room,target,remaining,vendorKey,already).forEach(t=>t.vendorKey=vendorKey);const assigned=allTables.filter(t=>t.vendorKey===vendorKey);state.vendorPlannerSelectedKeyV723=null,assigned.length<needed?setNotice2(\"Only \"+assigned.length+\" of \"+needed+\" required table slots are allocated. Drop the vendor on the closest free table to fill the gap.\",!0):setNotice2((group.customer?.businessName||group.customer?.name||\"Vendor\")+\" allocated to \"+assigned.length+\" closest table slots.\"),refreshVendorPlannerAllocationsV727(),scheduleVendorPlanAutosaveV403()}let vendorPlanAutosaveTimerV403=null,vendorPlanSaveInFlightV726=null,vendorPlanEditRevisionV726=0;function setVendorPlanSaveStateV403(text2,state2=\"\"){const el=$2(\"vendorPlannerSaveState\");el&&(el.textContent=text2,el.dataset.state=state2)}function scheduleVendorPlanAutosaveV403(){state.currentVendorEvent&&(vendorPlanEditRevisionV726++,setVendorPlanSaveStateV403(\"Unsaved changes\",\"dirty\"),clearTimeout(vendorPlanAutosaveTimerV403),vendorPlanAutosaveTimerV403=setTimeout(()=>saveVendorTablePlanV398(null,!0).catch(err=>{setVendorPlanSaveStateV403(\"Autosave failed\",\"error\"),setNotice2(err.message||err,!0)}),900))}function renderVendorRoomTabsV401(){const target=$2(\"vendorPlannerRoomTabs\"),rooms=state.vendorTablePlan?.rooms||[];target&&(target.innerHTML=rooms.map(r=>\"<span class='orbit-vendor-room-tab-wrap'><button type='button' class='secondary \"+(r.id===state.vendorTablePlan.activeRoomId?\"active\":\"\")+\"' data-vendor-room-tab='\"+esc(r.id)+\"'>\"+esc(r.name||\"Room\")+\" <small>\"+Number((r.tables||[]).length)+\" tables</small></button><button type='button' class='secondary orbit-vendor-room-remove' data-vendor-room-remove='\"+esc(r.id)+\"' aria-label='Remove \"+esc(r.name||\"room\")+\"'>\\xD7</button></span>\").join(\"\"))}function vendorTableDisplayBoxV404(table2,room){const point=transformVendorPointV401(table2.x,table2.y,room),rot=Number(room?.rotation||0),swap=rot===90||rot===270;let width=Math.max(.8,Math.min(12,Number(table2.widthPct||0)||(table2.orientation===\"vertical\"?2.8:6.4))),height=Math.max(.8,Math.min(12,Number(table2.heightPct||0)||(table2.orientation===\"vertical\"?6.4:2.8)));return swap&&([width,height]=[height,width]),{x:point.x,y:point.y,width,height}}function applyVendorTableGeometryV404(el,table2,room){const box=vendorTableDisplayBoxV404(table2,room);return el.style.left=box.x+\"%\",el.style.top=box.y+\"%\",el.style.width=box.width+\"%\",el.style.height=box.height+\"%\",el.style.minHeight=\"0\",el.style.setProperty(\"transform\",\"translate(-50%,-50%) rotate(\"+Number(table2?.angleDeg||0)+\"deg)\",\"important\"),el.style.setProperty(\"--orbit-table-counter-rotation\",-Number(table2?.angleDeg||0)+\"deg\"),el.classList.toggle(\"horizontal\",effectiveVendorTableOrientationV403(table2,room)===\"horizontal\"),el.classList.toggle(\"vertical\",effectiveVendorTableOrientationV403(table2,room)===\"vertical\"),box}function inferVendorPdfTableGeometryV410(tables,pageWidth=0,pageHeight=0){const rows=Array.isArray(tables)?tables:[],sourceRows=rows.map(table2=>({table:table2,x:Number(table2.x||0),y:Number(table2.y||0)})),pw=Math.max(1,Number(pageWidth||100)),ph=Math.max(1,Number(pageHeight||100));let changed=!1;for(const table2 of rows){if(table2.manualGeometry){Number(table2.geometryVersion||0)<411&&(table2.geometryVersion=411,changed=!0);continue}const tx=Number(table2.x||0),ty=Number(table2.y||0),verticalNeighbours=sourceRows.filter(other=>other.table!==table2&&Math.abs(other.x-tx)<=1.15).map(other=>Math.abs(other.y-ty)).filter(d=>d>=1.4&&d<=8).sort((a,b)=>a-b),horizontalNeighbours=sourceRows.filter(other=>other.table!==table2&&Math.abs(other.y-ty)<=.85).map(other=>Math.abs(other.x-tx)).filter(d=>d>=1.8&&d<=10).sort((a,b)=>a-b);let orientation=table2.orientation===\"vertical\"?\"vertical\":\"horizontal\";if(verticalNeighbours.length>horizontalNeighbours.length)orientation=\"vertical\";else if(horizontalNeighbours.length>verticalNeighbours.length)orientation=\"horizontal\";else if(verticalNeighbours.length&&horizontalNeighbours.length){const vPhysical=verticalNeighbours[0]/100*ph,hPhysical=horizontalNeighbours[0]/100*pw;orientation=vPhysical<=hPhysical?\"vertical\":\"horizontal\"}const neighbours=orientation===\"vertical\"?verticalNeighbours:horizontalNeighbours;let widthPct=Number(table2.widthPct||0),heightPct=Number(table2.heightPct||0),crossPct=0;if(neighbours.length){const stepPct=neighbours[0],alongPx=stepPct/100*(orientation===\"vertical\"?ph:pw),crossPx=alongPx*.5;crossPct=orientation===\"vertical\"?crossPx/pw*100:crossPx/ph*100,orientation===\"vertical\"?(heightPct=Math.max(1.8,Math.min(7.5,stepPct*.94)),widthPct=Math.max(1.6,Math.min(6.5,crossPx/pw*100))):(widthPct=Math.max(2.2,Math.min(9.5,stepPct*.94)),heightPct=Math.max(1.4,Math.min(5.5,crossPx/ph*100)))}(table2.orientation!==orientation||Math.abs(Number(table2.widthPct||0)-widthPct)>.05||Math.abs(Number(table2.heightPct||0)-heightPct)>.05)&&(changed=!0),Number(table2.geometryVersion||0)<410&&(changed=!0),table2.orientation=orientation,table2.widthPct=Number(widthPct.toFixed(3)),table2.heightPct=Number(heightPct.toFixed(3)),table2.geometryVersion=410}return{tables:rows,changed}}function renderVendorAssignmentSpansV401(canvas,room){const groups=plannerGroupsV398(state.currentVendorEvent);for(const g of groups){const boxes=(room.tables||[]).filter(t=>t.vendorKey===g.customer?.key).map(t=>vendorTableDisplayBoxV404(t,room));if(!boxes.length)continue;const minX=Math.min(...boxes.map(p=>p.x-p.width/2)),maxX=Math.max(...boxes.map(p=>p.x+p.width/2)),minY=Math.min(...boxes.map(p=>p.y-p.height/2)),maxY=Math.max(...boxes.map(p=>p.y+p.height/2)),span=document.createElement(\"div\");span.className=\"orbit-vendor-assignment-span\",span.style.left=Math.max(0,minX)+\"%\",span.style.top=Math.max(0,minY)+\"%\",span.style.width=Math.min(100-minX,maxX-minX)+\"%\",span.style.height=Math.min(100-minY,maxY-minY)+\"%\",span.innerHTML=\"<strong>\"+esc(g.customer?.businessName||g.customer?.name||\"Vendor\")+\"</strong><small>\"+boxes.length+\"/\"+Number(g.tables||0)+\" table slots</small>\",canvas.appendChild(span)}}async function restoreVendorPlannerSourceCoordinatesV410(room){if(!room?.venuePlanId||Number((room.tables||[])[0]?.geometryVersion||0)>=410)return!1;let source=(state.vendorFloorPlans||[]).find(p=>p.id===room.venuePlanId)||null;if(!source?.tables?.length)try{source=(await api(\"/api/admin/vendors/venue-floor-plans/\"+encodeURIComponent(room.venuePlanId),{timeoutMs:2e4})).floorPlan||null}catch{return!1}if(!source?.tables?.length)return!1;const byId=new Map((source.tables||[]).map(t=>[String(t.id||t.label),t])),byLabel=new Map((source.tables||[]).map(t=>[String(t.label),t]));let restored=!1;for(const table2 of room.tables||[]){const canonical=byId.get(String(table2.id||table2.label))||byLabel.get(String(table2.label));canonical&&(table2.x=Number(canonical.x),table2.y=Number(canonical.y),table2.orientation=canonical.orientation||table2.orientation,table2.widthPct=Number(canonical.widthPct||table2.widthPct||0),table2.heightPct=Number(canonical.heightPct||table2.heightPct||0),restored=!0)}return restored&&(room.width=Number(source.width||room.width||0),room.height=Number(source.height||room.height||0)),restored}async function renderVendorTablePlanV398(){ensureVendorAlignmentControlsV774(),installVendorPlannerV773Style();const canvas=$2(\"vendorTablePlannerCanvas\");if(!canvas)return;const room=activeVendorPlannerRoomV401();if(renderVendorRoomTabsV401(),!room){state.vendorPlannerRenderSerialV726=(state.vendorPlannerRenderSerialV726||0)+1,delete canvas.dataset.plannerRoomIdV727,canvas.innerHTML=\"<div class='orbit-vendor-plan-empty'>Add a saved venue floor plan / room to this event.</div>\",canvas.style.backgroundImage=\"none\",canvas.classList.remove(\"has-plan\"),$2(\"vendorPlannerOrientationControls\")&&($2(\"vendorPlannerOrientationControls\").hidden=!0),renderVendorPlannerTrayV398(state.currentVendorEvent),updateVendorPlannerProgressV399();return}$2(\"vendorPlannerOrientationControls\")&&($2(\"vendorPlannerOrientationControls\").hidden=!1);const renderSerial=state.vendorPlannerRenderSerialV726=(state.vendorPlannerRenderSerialV726||0)+1,bg=await orientedVendorBackgroundV401(room).catch(()=>room.backgroundDataUrl||null);if(renderSerial!==state.vendorPlannerRenderSerialV726||room!==activeVendorPlannerRoomV401())return;canvas.innerHTML=\"\",canvas.dataset.plannerRoomIdV727=String(room.id),canvas.style.backgroundImage=\"none\",canvas.classList.toggle(\"has-plan\",!!bg),canvas.style.aspectRatio=room._displayWidth&&room._displayHeight?room._displayWidth+\" / \"+room._displayHeight:\"4 / 3\";const zoom=Number(state.vendorPlannerZoom||1);if(canvas.style.transform=\"scale(\"+zoom+\")\",canvas.style.transformOrigin=\"top left\",bg){const image=document.createElement(\"img\");image.className=\"orbit-vendor-plan-image\",image.alt=\"\",image.draggable=!1,image.src=bg,canvas.appendChild(image)}const plannerVendorMap=new Map(plannerGroupsV398(state.currentVendorEvent).map(g=>[String(g.customer?.key||\"\"),g.customer||{}]));for(const table2 of room.tables||[]){const vendor=plannerVendorMap.get(String(table2.vendorKey||\"\"))||null,point=transformVendorPointV401(table2.x,table2.y,room),orientation=effectiveVendorTableOrientationV403(table2,room),el=document.createElement(\"button\");el.type=\"button\",el.className=\"orbit-vendor-table-marker \"+orientation+(vendor?\" assigned\":\"\"),el.dataset.tableId=table2.id,applyVendorTableGeometryV404(el,table2,room),el.draggable=!!vendor,el.innerHTML=\"<strong>\"+esc(table2.label)+\"</strong>\"+(vendor?\"\":\"<small>Free</small>\"),el.title=vendor?(vendor.businessName||vendor.name||\"Vendor\")+\" \\xB7 Table \"+table2.label+\" \\xB7 click to return vendor to unallocated\":\"Click to allocate the selected vendor, or drag a vendor here\",el.addEventListener(\"dragstart\",e=>{table2.vendorKey?e.dataTransfer.setData(\"application/x-orbit-vendor\",table2.vendorKey):e.preventDefault()}),el.addEventListener(\"dragover\",e=>e.preventDefault()),el.addEventListener(\"drop\",e=>{e.preventDefault();const vendorKey=e.dataTransfer.getData(\"application/x-orbit-vendor\");vendorKey&&assignVendorSlotsV401(vendorKey,table2.id)}),el.addEventListener(\"click\",()=>{if(table2.vendorKey){state.vendorPlannerSelectedKeyV723=null,undoVendorAllocationV418(table2.vendorKey);return}state.vendorPlannerSelectedKeyV723&&assignVendorSlotsV401(state.vendorPlannerSelectedKeyV723,table2.id)}),canvas.appendChild(el)}renderVendorPlannerTrayV398(state.currentVendorEvent),updateVendorPlannerProgressV399()}function refreshVendorPlannerAllocationsV727(){const canvas=$2(\"vendorTablePlannerCanvas\"),room=activeVendorPlannerRoomV401();if(!canvas||!room||canvas.dataset.plannerRoomIdV727!==String(room.id)){renderVendorTablePlanV398();return}const tables=new Map((room.tables||[]).map(t=>[String(t.id),t])),vendorMap=new Map(plannerGroupsV398(state.currentVendorEvent).map(g=>[String(g.customer?.key||\"\"),g.customer||{}]));canvas.querySelectorAll(\".orbit-vendor-table-marker[data-table-id]\").forEach(el=>{const table2=tables.get(String(el.dataset.tableId));if(!table2)return;const vendor=vendorMap.get(String(table2.vendorKey||\"\"))||null,assigned=!!vendor;el.classList.toggle(\"assigned\",assigned),el.draggable=assigned,el.innerHTML=\"<strong>\"+esc(table2.label)+\"</strong>\"+(assigned?\"\":\"<small>Free</small>\"),el.title=assigned?(vendor.businessName||vendor.name||\"Vendor\")+\" \\xB7 Table \"+table2.label+\" \\xB7 click to return vendor to unallocated\":\"Click to allocate the selected vendor, or drag a vendor here\"}),renderVendorPlannerTrayV398(state.currentVendorEvent),updateVendorPlannerProgressV399()}async function loadVendorFloorPlansV401(venueId=\"\"){const result=await api(\"/api/admin/vendors/venue-floor-plans\"+(venueId?\"?venueId=\"+encodeURIComponent(venueId):\"\"),{timeoutMs:2e4});return venueId||(state.vendorFloorPlans=result.floorPlans||[]),result.floorPlans||[]}function populateVendorFloorPlanSelectV401(){const select=$2(\"vendorPlannerFloorPlanSelect\");if(!select)return;const plans=state.vendorFloorPlans||[],venues=new Map((state.vendorVenues||[]).map(v=>[v.id,v.name]));select.innerHTML=\"<option value=''>Choose a saved venue plan</option>\"+plans.map(p=>\"<option value='\"+esc(p.id)+\"'>\"+esc((venues.get(p.venueId)||\"Venue\")+\" \\xB7 \"+(p.roomName||p.name)+\" \\xB7 \"+Number((p.tables||[]).length)+\" tables\")+\"</option>\").join(\"\")}async function addVendorPlannerRoomV401(){const select=$2(\"vendorPlannerFloorPlanSelect\"),id=select?.value;if(!id)throw new Error(\"Choose a saved venue floor plan first.\");const result=await api(\"/api/admin/vendors/venue-floor-plans/\"+encodeURIComponent(id)),p=result.floorPlan;if(!p)throw new Error(\"Floor plan could not be loaded.\");if(state.vendorTablePlan=state.vendorTablePlan||{version:2,rooms:[]},state.vendorTablePlan.version=2,state.vendorTablePlan.rooms=state.vendorTablePlan.rooms||[],state.vendorTablePlan.rooms.find(r=>r.venueId&&r.venueId!==p.venueId))throw new Error(\"This event already uses floor plans from another venue. Remove those room maps before switching venue.\");if(state.vendorTablePlan.rooms.some(r=>r.venuePlanId===p.id)){state.vendorTablePlan.activeRoomId=state.vendorTablePlan.rooms.find(r=>r.venuePlanId===p.id).id,await renderVendorTablePlanV398();return}const room={id:\"room-\"+Date.now().toString(36),venuePlanId:p.id,venueId:p.venueId,name:p.roomName||p.name,rotation:Number(p.rotation||0),flipX:!!p.flipX,flipY:!!p.flipY,backgroundDataUrl:p.backgroundDataUrl,width:p.width,height:p.height,tables:(p.tables||[]).map(x=>({...x,vendorKey:null}))};state.vendorTablePlan.rooms.push(room),state.vendorTablePlan.activeRoomId=room.id,scheduleVendorPlanAutosaveV403(),state.currentVendorEvent&&(state.currentVendorEvent.venueId=p.venueId,api(\"/api/admin/vendors/events/config\",{method:\"POST\",body:JSON.stringify({eventKey:state.currentVendorEvent.key,venueId:p.venueId})}).catch(error=>console.warn(\"Vendor event venue binding warning\",error))),await renderVendorTablePlanV398()}async function saveVendorTablePlanV398(button2,automatic=!1){const event=state.currentVendorEvent;if(!event||vendorPlanSaveInFlightV726&&(await vendorPlanSaveInFlightV726,event!==state.currentVendorEvent))return;const revision=vendorPlanEditRevisionV726,plan=state.vendorTablePlan||{version:3,rooms:[]},status=$2(\"vendorPlannerStatus\")?.value===\"ready\"?\"ready\":\"draft\",completedAt=status===\"ready\"?plan.completionConfirmedAt||new Date().toISOString():null,payload={eventKey:event.key,status,completionConfirmedAt:completedAt,activeRoomId:plan.activeRoomId,tableOverrides:plan.tableOverrides||{},rooms:(plan.rooms||[]).map(r=>({id:r.id,venuePlanId:r.venuePlanId,venueId:r.venueId,name:r.name,tables:(r.tables||[]).map(t=>({id:t.id,label:t.label,vendorKey:t.vendorKey||null})),orphanAllocations:r.orphanAllocations||[]}))};setLoading(button2,!0);const pending=api(\"/api/admin/vendors/events/table-plan\",{method:\"POST\",body:JSON.stringify(payload)});vendorPlanSaveInFlightV726=pending;try{const saved=await pending;if(event!==state.currentVendorEvent)return;if(revision!==vendorPlanEditRevisionV726){setVendorPlanSaveStateV403(\"Saving newer changes\\u2026\",\"dirty\"),clearTimeout(vendorPlanAutosaveTimerV403),vendorPlanAutosaveTimerV403=setTimeout(()=>saveVendorTablePlanV398(null,!0).catch(err=>{setVendorPlanSaveStateV403(\"Autosave failed\",\"error\"),setNotice2(err.message||err,!0)}),50);return}saved?.tablePlan&&(plan.updatedAt=saved.tablePlan.updatedAt,plan.status=saved.tablePlan.status,plan.completionConfirmedAt=saved.tablePlan.completionConfirmedAt);const stamp=new Date().toLocaleTimeString([],{hour:\"2-digit\",minute:\"2-digit\"});setVendorPlanSaveStateV403(\"Saved \"+stamp,\"saved\"),automatic||setNotice2(\"Vendor allocations saved. Venue master still owns all table numbers and geometry.\")}finally{vendorPlanSaveInFlightV726===pending&&(vendorPlanSaveInFlightV726=null),setLoading(button2,!1)}}async function updateVendorTablePlanStatusV467(){const event=state.currentVendorEvent,select=$2(\"vendorPlannerStatus\"),plan=state.vendorTablePlan;if(!event||!select||!plan)return;const previous=vendorTablePlanIsManuallyCompleteV466(plan)?\"ready\":\"draft\",status=select.value===\"ready\"?\"ready\":\"draft\";select.disabled=!0,setVendorPlanSaveStateV403(\"Saving status\\u2026\",\"dirty\");try{const saved=await api(\"/api/admin/vendors/events/table-plan/status\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,status}),cacheMs:0});saved?.tablePlan&&(state.vendorTablePlan={...plan,status:saved.tablePlan.status,completionConfirmedAt:saved.tablePlan.completionConfirmedAt,updatedAt:saved.tablePlan.updatedAt}),setVendorPlanSaveStateV403(\"Saved\",\"saved\"),setNotice2(status===\"ready\"?\"Floor plan marked Complete \\xB7 ready for show. Table layout was not changed.\":\"Floor plan marked Draft \\xB7 not complete. Table layout was not changed.\"),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"live\").catch(()=>{})}catch(err){throw select.value=previous,setVendorPlanSaveStateV403(\"Status save failed\",\"error\"),err}finally{select.disabled=!1}}function transformActiveVendorRoomV401(action){const room=activeVendorPlannerRoomV401();if(room){if(state.vendorTablePlan?.masterArchitecture||state.vendorTablePlan?.version===3){setNotice2(\"Venue Floor Plan is the master for table layout and orientation. Make physical layout changes under Vendors \\u2192 Venues \\u2192 Floor Plan; this event stores vendor allocations only.\",!0);return}action===\"rotate-left\"?room.rotation=(Number(room.rotation||0)+270)%360:action===\"rotate-right\"?room.rotation=(Number(room.rotation||0)+90)%360:action===\"flip-x\"?room.flipX=!room.flipX:action===\"flip-y\"?room.flipY=!room.flipY:action===\"reset\"&&(room.rotation=0,room.flipX=!1,room.flipY=!1),room._orientedKey=null,renderVendorTablePlanV398(),scheduleVendorPlanAutosaveV403()}}async function printVendorEventShowPackageV404(){const event=state.currentVendorEvent;if(!event)return;const previousPlan=state.vendorTablePlan;try{const result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/table-plan\");state.vendorTablePlan=result.tablePlan||{version:2,rooms:[]},await printVendorShowPackageV398()}finally{state.vendorTablePlan=previousPlan}}function vendorShowPackageTableLabelsV461(assigned=[]){return(assigned||[]).map(x=>String(x?.label||\"\").trim()).filter(Boolean).join(\", \")}function openSecretFreePrintDocumentV476(popup,html){if(!popup)throw new Error(\"Orbit could not open the printable show package. Allow pop-ups for Admin OS and try again.\");let printUrl=\"\";try{const blob=new Blob([String(html||\"\")],{type:\"text/html;charset=utf-8\"});if(printUrl=URL.createObjectURL(blob),!String(printUrl).startsWith(\"blob:\")||/[?&]secret=/i.test(String(printUrl)))throw new Error(\"Unsafe printable document URL.\");try{popup.opener=null}catch{}return popup.location.replace(printUrl),setTimeout(()=>{try{URL.revokeObjectURL(printUrl)}catch{}},600*1e3),printUrl}catch(error){try{popup.close()}catch{}throw new Error(\"Orbit blocked the printable show package because a secret-free print document could not be created. \"+(error?.message||error))}}async function printVendorShowPackageV398(){const event=state.currentVendorEvent,plan=state.vendorTablePlan||{rooms:[]};if(!event)return;const groups=plannerGroupsV398(event),w=window.open(\"about:blank\",\"_blank\");if(!w)return;let pages=\"\";for(const room of plan.rooms||[]){const bg=await orientedVendorBackgroundV401(room).catch(()=>room.backgroundDataUrl||\"\"),ratio=(room._displayWidth||room.width||4)+\" / \"+(room._displayHeight||room.height||3);pages+=\"<h2>\"+esc(room.name||\"Floor plan\")+\"</h2><div class='plan' style='aspect-ratio:\"+ratio+\"'><img alt='Floor plan' src='\"+esc(bg)+\"'></div>\"}const allTables=(plan.rooms||[]).flatMap(r=>(r.tables||[]).map(t=>({...t,roomName:r.name}))),rows=groups.map(g=>({...g,assigned:allTables.filter(t=>t.vendorKey===g.customer?.key)})),html=\"<!doctype html><html><head><meta name='referrer' content='no-referrer'><title>\"+esc(event.displayName||event.label)+\" show package</title><style>body{font-family:Arial;color:#111;margin:24px}h1{margin-bottom:4px}.plan{position:relative;width:100%;border:1px solid #bbb;page-break-after:always;overflow:hidden}.plan>img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill;z-index:0}table{width:100%;border-collapse:collapse}th,td{padding:7px;border-bottom:1px solid #ddd;text-align:left}@media print{button{display:none}}</style></head><body><button onclick='window.print()'>Print</button><h1>\"+esc(event.displayName||event.label)+\"</h1><p>\"+esc(vendorDateV385(event.eventDate))+\"</p>\"+pages+\"<h2>Vendor allocation</h2><table><thead><tr><th>Vendor / business</th><th>Booking name</th><th>Order #</th><th>Table numbers</th><th>Tables</th><th>Display cases</th></tr></thead><tbody>\"+rows.map(g=>\"<tr><td>\"+esc(g.customer?.businessName||g.customer?.name||\"\")+\"</td><td>\"+esc(g.customer?.name||g.customer?.bookingName||g.customer?.contactName||\"\\u2014\")+\"</td><td>\"+esc((g.orders||[]).join(\", \")||\"\\u2014\")+\"</td><td>\"+esc(vendorShowPackageTableLabelsV461(g.assigned)||\"UNALLOCATED\")+\"</td><td>\"+vendorPlannerRequiredTablesV418(g)+\"</td><td>\"+Number(g.displayCases||0)+\"</td></tr>\").join(\"\")+\"</tbody></table></body></html>\";openSecretFreePrintDocumentV476(w,html),setTimeout(()=>{try{w.focus()}catch{}},200)}function vendorRichEditorHtmlV421(id){const editor=$2(id),source=$2(id+\"Source\");return source&&!source.hidden?source.value:editor?.innerHTML||\"\"}function vendorRichEditorTextV421(id){const editor=$2(id),source=$2(id+\"Source\");if(source&&!source.hidden){const tmp=document.createElement(\"div\");return tmp.innerHTML=source.value,tmp.innerText||tmp.textContent||\"\"}return editor?.innerText||\"\"}function setVendorRichEditorV421(id,html,text2=\"\"){const editor=$2(id),source=$2(id+\"Source\"),value=html||esc(text2||\"\").replace(/\\n/g,\"<br>\");editor&&(editor.innerHTML=value),source&&(source.value=value,source.hidden=!0),editor&&(editor.hidden=!1)}function ensureVendorRichSourceActionsV423(id){const source=$2(id+\"Source\"),field=source?.closest(\"[data-vendor-rich-field]\")||source?.parentElement,toolbar=field?.querySelector(\".orbit-vendor-brief-toolbar\")||(id===\"vendorEventEmailCustomMessage\"?$2(\"vendorEventBriefSourceToggle\")?.parentElement:null);if(!source||!toolbar)return null;let button2=toolbar.querySelector('[data-vendor-rich-select-all=\"'+id+'\"]');if(!button2){button2=document.createElement(\"button\"),button2.type=\"button\",button2.className=\"secondary orbit-vendor-source-select-all\",button2.dataset.vendorRichSelectAll=id,button2.textContent=\"Select all\",button2.hidden=!0;const toggle=toolbar.querySelector('[data-vendor-rich-source=\"'+id+'\"]')||(id===\"vendorEventEmailCustomMessage\"?$2(\"vendorEventBriefSourceToggle\"):null);toolbar.insertBefore(button2,toggle||null)}return button2}function selectAllVendorRichSourceV423(id){const source=$2(id+\"Source\");!source||source.hidden||(source.focus(),source.select(),source.setSelectionRange(0,source.value.length))}function toggleVendorRichSourceV421(id){const editor=$2(id),source=$2(id+\"Source\"),button2=document.querySelector('[data-vendor-rich-source=\"'+id+'\"]')||(id===\"vendorEventEmailCustomMessage\"?$2(\"vendorEventBriefSourceToggle\"):null),selectAll=ensureVendorRichSourceActionsV423(id);!editor||!source||(source.hidden?(source.value=editor.innerHTML,editor.hidden=!0,source.hidden=!1,button2&&(button2.textContent=\"Visual editor\"),selectAll&&(selectAll.hidden=!1),source.focus(),source.scrollLeft=0):(editor.innerHTML=source.value,source.hidden=!0,editor.hidden=!1,button2&&(button2.textContent=\"HTML source\"),selectAll&&(selectAll.hidden=!0),editor.focus()))}function formatVendorRichV421(id,command){const editor=$2(id);!editor||editor.hidden||(editor.focus(),document.execCommand(command,!1,null))}async function saveVendorGlobalRulesV422(button2){setLoading(button2,!0);try{const html=vendorRichEditorHtmlV421(\"vendorGlobalRules\"),text2=vendorRichEditorTextV421(\"vendorGlobalRules\"),result=await api(\"/api/admin/vendors/global-settings\",{method:\"POST\",body:JSON.stringify({globalRules:text2,globalRulesHtml:html})});state.vendorWorkspace=state.vendorWorkspace||{},state.vendorWorkspace.globalSettings=result.settings||{},setVendorRichEditorV421(\"vendorGlobalRules\",result.settings?.globalRulesHtml,result.settings?.globalRules);const box=$2(\"vendorGlobalRulesResult\");return box&&(box.hidden=!1,box.textContent=\"Global Vendor Rules saved. They will now be included in every Vendor briefing.\"),setNotice2(\"Global Vendor Rules saved for all Orbit shows.\"),result}finally{setLoading(button2,!1)}}function formatVendorBriefingV419(command){const editor=$2(\"vendorEventEmailCustomMessage\");editor&&(editor.focus(),document.execCommand(command,!1,null))}async function adjustVendorBookingTablesV420(group,row,delta){if(!row)throw new Error(\"No editable table booking was found for this vendor.\");const verb=delta>0?\"Add one table to\":\"Remove one table from\",name=group.customer?.businessName||group.customer?.name||\"this vendor\";if(!confirm(verb+\" \"+name+\"? Orbit will adjust the operational booking and Table Planner requirement. The original Shopify order remains unchanged.\"))return;row.type===\"complimentary\"?await api(\"/api/admin/vendors/bookings/complimentary-action\",{method:\"POST\",body:JSON.stringify({adjustmentId:row.adjustmentId,action:\"adjust-tables\",delta})}):await api(\"/api/admin/vendors/bookings/tables\",{method:\"POST\",body:JSON.stringify({shopifyOrderId:row.shopifyOrderId,lineItemId:row.lineItemId,delta})}),await loadVendorWorkspaceV398(null,!0,!0,state.currentVendorPane||\"customers\");const refreshed=vendorEventByKeyV399(state.currentVendorEventKey);refreshed&&(state.currentVendorEvent=refreshed,renderVendorEventDetailV398(refreshed)),setNotice2((delta>0?\"One table added to \":\"One table removed from \")+name+\". Table Planner now uses the updated booking quantity.\")}async function saveVendorEventEmailCustomV414(button2=null,{quiet=!1}={}){const selectedKey=$2(\"vendorBriefingEventSelect\")?.value||\"\",event=state.currentVendorPane===\"briefings\"&&selectedKey?vendorEventByKeyV399(selectedKey):state.currentVendorEvent;if(!event)return!1;const html=vendorRichEditorHtmlV421(\"vendorEventEmailCustomMessage\"),text2=vendorRichEditorTextV421(\"vendorEventEmailCustomMessage\");if(html===String(event.vendorEmailCustomHtml||\"\")&&text2.trim()===String(event.vendorEmailCustomMessage||\"\").trim())return!0;button2&&setLoading(button2,!0);try{return await api(\"/api/admin/vendors/events/config\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,vendorEmailCustomMessage:text2,vendorEmailCustomHtml:html})}),event.vendorEmailCustomMessage=text2,event.vendorEmailCustomHtml=html,quiet||setNotice2(\"Vendor briefing note and formatting saved.\"),!0}finally{button2&&setLoading(button2,!1)}}function setVendorEmailHtmlEditV420(editing){const editor=$2(\"vendorEmailHtmlEditor\"),frame=$2(\"vendorEmailPreviewFrame\"),dialog=$2(\"vendorEmailPreviewDialog\");!editor||!frame||(editor.hidden=!editing,frame.hidden=editing,dialog&&dialog.classList.toggle(\"is-html-editing\",editing),$2(\"vendorEmailEditHtml\")&&($2(\"vendorEmailEditHtml\").hidden=editing),$2(\"vendorEmailSaveHtml\")&&($2(\"vendorEmailSaveHtml\").hidden=!editing),$2(\"vendorEmailCancelHtml\")&&($2(\"vendorEmailCancelHtml\").hidden=!editing))}function editVendorEmailHtmlV420(){const editor=$2(\"vendorEmailHtmlEditor\"),frame=$2(\"vendorEmailPreviewFrame\");!editor||!frame||(editor.value=state.currentVendorEvent?.vendorEmailHtmlOverride||frame.srcdoc||\"\",setVendorEmailHtmlEditV420(!0))}async function saveVendorEmailHtmlV420(button2){const event=state.currentVendorEvent,editor=$2(\"vendorEmailHtmlEditor\");if(!(!event||!editor)){setLoading(button2,!0);try{const html=editor.value.trim();await api(\"/api/admin/vendors/events/config\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,vendorEmailHtmlOverride:html})}),event.vendorEmailHtmlOverride=html||null,setVendorEmailHtmlEditV420(!1),setNotice2(html?\"Custom vendor email HTML saved for this event.\":\"Custom vendor email HTML cleared; Orbit template restored.\"),await previewVendorEventDetailsV398(null)}finally{setLoading(button2,!1)}}}function renderVendorEmailPreviewV429(result,openDialog=!0){const event=state.currentVendorEvent,sample=result?.renderedSample;if(!sample)return;const summary=$2(\"vendorRenderedEmailPreview\");summary&&(summary.hidden=!1,summary.innerHTML=\"<strong>Rendered preview ready</strong><span>Previewing: \"+esc(sample.vendorName||\"vendor\")+\" \\xB7 Tables \"+esc((sample.assignedTables||[]).join(\", \")||\"none\")+\" \\xB7 \"+Number(sample.displayCases||0)+\" display case\"+(Number(sample.displayCases||0)===1?\"\":\"s\")+\"</span>\");const picker=$2(\"vendorEmailPreviewVendor\");if(picker){const selected=sample.customerKey||\"\";picker.innerHTML=(result.vendors||[]).map(v=>\"<option value='\"+esc(v.customerKey)+\"'\"+(v.customerKey===selected?\" selected\":\"\")+\">\"+esc(v.customer?.name||v.customer?.businessName||\"Vendor\")+\" \\xB7 Tables \"+esc((v.assignedTables||[]).join(\", \")||\"none\")+\" \\xB7 \"+Number(v.displayCases||0)+\" case\"+(Number(v.displayCases||0)===1?\"\":\"s\")+\"</option>\").join(\"\")}$2(\"vendorEmailPreviewMeta\")&&($2(\"vendorEmailPreviewMeta\").innerHTML=\"<strong>\"+esc(sample.vendorName||\"Vendor\")+\"</strong><span>To: \"+esc(sample.to||\"No email\")+\"</span><span>Tables: \"+esc((sample.assignedTables||[]).join(\", \")||\"None\")+\" \\xB7 Display cases: \"+Number(sample.displayCases||0)+\"</span><span>Subject: \"+esc(sample.subject||\"\")+\"</span><span>Attachments: \"+esc((result.attachmentNames||[]).join(\" \\xB7 \")||\"None\")+\"</span>\");const frame=$2(\"vendorEmailPreviewFrame\");frame&&(frame.srcdoc=sample.html||\"\"),$2(\"vendorEmailHtmlEditor\")&&($2(\"vendorEmailHtmlEditor\").value=event?.vendorEmailHtmlOverride||sample.html||\"\"),setVendorEmailHtmlEditV420(!1),openDialog&&$2(\"vendorEmailPreviewDialog\")?.showModal()}async function selectVendorEmailPreviewV429(customerKey){const event=state.currentVendorEvent;if(!event||!customerKey)return;const result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/communication-preview?customerKey=\"+encodeURIComponent(customerKey));state.vendorCommunicationPreview=result,renderVendorEmailPreviewV429(result,!1)}async function previewVendorEventDetailsV398(button2){const event=state.currentVendorEvent;if(event){setLoading(button2,!0);try{await saveVendorEventEmailCustomV414(null,{quiet:!0});const result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/communication-preview\");state.vendorCommunicationPreview=result;const target=$2(\"vendorEventCommunicationStatus\");return target.className=\"orbit-info-banner \"+(result.ready?\"success\":\"warning\"),target.innerHTML=\"<strong>\"+(result.ready?\"Ready to send\":\"Needs attention before sending\")+\"</strong><span>\"+Number(result.totalVendors||0)+\" vendors \\xB7 \"+Number(result.missingEmail||0)+\" missing email \\xB7 \"+Number(result.missingAssignments||0)+\" unallocated table(s)</span>\",renderVendorEmailPreviewV429(result,!0),result}finally{setLoading(button2,!1)}}}function vendorBriefingStatusLabelV487(status){return{queued:\"Queued\",running:\"Sending\",completed:\"Completed\",completed_with_failures:\"Completed with failures\",interrupted:\"Interrupted\",needs_review:\"Needs review\"}[String(status||\"\")]||humanStatus(status||\"Unknown\")}function clearVendorBriefingBatchPollV487(){state.vendorBriefingBatchPollTimerV487&&(clearTimeout(state.vendorBriefingBatchPollTimerV487),state.vendorBriefingBatchPollTimerV487=null)}function renderVendorBriefingBatchV487(job){const box=$2(\"vendorBriefingBatchProgressV487\");if(!box)return;if(state.vendorBriefingBatchJobV487=job||null,!job){box.hidden=!0,box.innerHTML=\"\";return}const c=job.counts||{},total=Math.max(0,Number(c.total||0)),sent=Math.max(0,Number(c.sent||0)),failed=Math.max(0,Number(c.failed||0)),pending=Math.max(0,Number(c.pending||0)),pct=total?Math.max(0,Math.min(100,Math.round(sent/total*100))):0,rows=job.recipients||[],failedRows=rows.filter(r=>r.status===\"failed\"),pendingRows=rows.filter(r=>[\"not_attempted\",\"sending\"].includes(r.status)),detailRows=rows.map(r=>\"<tr><td>\"+esc(r.vendorName||\"Vendor\")+\"</td><td>\"+esc(r.email||\"\")+\"</td><td>\"+esc((r.tables||[]).join(\", \")||\"\\u2014\")+\"</td><td><span class='orbit-vendor-batch-status-v487 \"+esc(r.status||\"\")+\"'>\"+esc(humanStatus(r.status||\"not_attempted\"))+\"</span></td><td>\"+(r.error?esc(r.error):\"\")+\"</td></tr>\").join(\"\"),retryable=[\"completed_with_failures\",\"interrupted\"].includes(job.status)&&(failedRows.length||pendingRows.length);box.hidden=!1,box.innerHTML=\"<div class='orbit-vendor-batch-head-v487'><div><strong>Vendor email batch \\xB7 \"+esc(vendorBriefingStatusLabelV487(job.status))+\"</strong><span>\"+sent+\" / \"+total+\" sent\"+(failed?\" \\xB7 \"+failed+\" failed\":\"\")+(pending?\" \\xB7 \"+pending+\" pending\":\"\")+\"</span></div><strong>\"+pct+\"%</strong></div><div class='orbit-vendor-batch-progress-track-v487'><span style='width:\"+pct+\"%'></span></div>\"+(job.lastError?\"<div class='orbit-info-banner \"+(job.status===\"needs_review\"?\"warning\":\"danger\")+\"'><strong>\"+esc(job.status===\"needs_review\"?\"Review required\":\"Batch needs attention\")+\"</strong><span>\"+esc(job.lastError)+\"</span></div>\":\"\")+(retryable?\"<div class='orbit-action-row'><button type='button' class='secondary' data-vendor-briefing-retry-v487='\"+esc(job.id)+\"'>Retry failed / unsent only</button><small>Already-sent vendors are locked and will not be sent again.</small></div>\":\"\")+(job.legacySummary?\"<div class='orbit-info-banner info'><strong>Pre-V487 batch summary</strong><span>This successful batch predates per-recipient job tracking. Orbit still blocks accidental whole-event duplicates from its persisted sent count.</span></div>\":\"<details class='orbit-vendor-batch-detail-v487'><summary>Recipient delivery audit \\xB7 \"+total+\" vendors</summary><div class='orbit-table-wrap'><table><thead><tr><th>Vendor</th><th>Email</th><th>Tables</th><th>Status</th><th>Error</th></tr></thead><tbody>\"+detailRows+\"</tbody></table></div></details>\")}function scheduleVendorBriefingBatchPollV487(job){if(clearVendorBriefingBatchPollV487(),!job||![\"queued\",\"running\"].includes(job.status))return;const eventKey=state.currentVendorEvent?.key||\"\";state.vendorBriefingBatchPollTimerV487=setTimeout(async()=>{try{const result=await api(\"/api/admin/vendors/send-details/batches/\"+encodeURIComponent(job.id),{timeoutMs:15e3,cacheMs:0});if(!state.currentVendorEvent||state.currentVendorEvent.key!==eventKey)return;if(renderVendorBriefingBatchV487(result.job),result.job&&[\"queued\",\"running\"].includes(result.job.status))scheduleVendorBriefingBatchPollV487(result.job);else if(result.job){const c=result.job.counts||{};result.job.status===\"completed\"?setNotice2(\"Vendor batch complete \\xB7 \"+Number(c.sent||0)+\" / \"+Number(c.total||0)+\" sent.\"):setNotice2(\"Vendor batch finished with \"+Number(c.failed||0)+\" failed. Use Retry failed / unsent only.\",!0),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\");const refreshed=vendorEventByKeyV399(eventKey);refreshed&&renderVendorEventDetailV398(refreshed)}}catch(err){setNotice2(\"Vendor batch status check failed: \"+(err.message||err)+\". The server-side job is still persisted; reopen the event to resume tracking.\",!0)}},1500)}async function loadVendorBriefingBatchStatusV487(eventKey){const key=String(eventKey||\"\");if(!key)return null;const result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(key)+\"/send-details/batches/latest\",{timeoutMs:15e3,cacheMs:0});return!state.currentVendorEvent||state.currentVendorEvent.key!==key||(renderVendorBriefingBatchV487(result?.job||null),result?.job&&[\"queued\",\"running\"].includes(result.job.status)&&scheduleVendorBriefingBatchPollV487(result.job)),result?.job||null}async function retryVendorBriefingBatchV487(jobId,button2){if(jobId&&confirm(`Retry only the failed or not-yet-attempted vendors?\n\nOrbit will preserve every recipient already marked Sent and reuse the same provider idempotency keys.`)){setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/send-details/batches/\"+encodeURIComponent(jobId)+\"/retry\",{method:\"POST\",body:\"{}\",timeoutMs:3e4,cacheMs:0});renderVendorBriefingBatchV487(result.job),scheduleVendorBriefingBatchPollV487(result.job),setNotice2(\"Retry started for failed / unsent vendors only.\")}finally{setLoading(button2,!1)}}}async function sendVendorEventDetailsV398(button2){const preview=await previewVendorEventDetailsV398(button2);if(!preview)return;const missingEmail=Number(preview.missingEmail||0),missingAssignments=Number(preview.missingAssignments||0);if(missingEmail>0){setNotice2(\"Vendor details cannot be sent yet. Add the \"+missingEmail+\" missing email address\"+(missingEmail===1?\"\":\"es\")+\" first.\",!0);return}if(!preview.hasTablePlan){setNotice2(\"Vendor details cannot be sent until a floor plan has been saved for the event.\",!0);return}let allowUnallocatedTables=!1;if(missingAssignments>0){const warning=\"There \"+(missingAssignments===1?\"is\":\"are\")+\" \"+missingAssignments+\" unallocated table\"+(missingAssignments===1?\"\":\"s\")+`. Some vendor briefing emails may therefore show incomplete table information.\n\nAre you sure you want to start the batch anyway?`;if(!confirm(warning))return;allowUnallocatedTables=!0}else if(!confirm(\"Start a protected background batch for all \"+preview.totalVendors+` vendors?\n\nYou can close this screen after it starts. Orbit will track every recipient and will not resend to anyone already marked Sent.`))return;setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(state.currentVendorEvent.key)+\"/send-details/batches\",{method:\"POST\",body:JSON.stringify({allowUnallocatedTables}),timeoutMs:3e4,cacheMs:0});renderVendorBriefingBatchV487(result.job),result.requiresResume?setNotice2(\"A partial Vendor batch already exists. Review the delivery audit and use Retry failed / unsent only.\",!0):(setNotice2(result.reused?\"Existing Vendor batch resumed.\":\"Vendor batch started safely in the background.\"),scheduleVendorBriefingBatchPollV487(result.job))}catch(err){if(err?.data?.job&&renderVendorBriefingBatchV487(err.data.job),err?.data?.code===\"VENDOR_BRIEFING_BATCH_ALREADY_COMPLETED\"){setNotice2(\"Duplicate batch blocked: this exact briefing has already been sent to every vendor. Use individual Send info if one vendor needs a resend.\",!0);return}if(err?.data?.code===\"VENDOR_BRIEFING_PARTIAL_SOURCE_CHANGED\"){setNotice2(\"Safe recovery blocked: some vendors were already sent, but the briefing/floor-plan source has changed. Orbit will not risk a duplicate whole-event resend. Review the delivery audit before any manual recovery.\",!0);return}if(err?.data?.code===\"VENDOR_BRIEFING_REPEAT_CONFIRM_REQUIRED\"){const prior=err.data.job?.counts||{};if(!confirm(\"A previous batch already sent \"+Number(prior.sent||0)+\" vendor\"+(Number(prior.sent||0)===1?\"\":\"s\")+`.\n\nThe current briefing source has changed. Start a NEW whole-event batch anyway?\n\nThis will intentionally send the current briefing again to vendors who received the previous completed batch.`)){setNotice2(\"New Vendor batch cancelled. No emails were sent.\");return}const repeat=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(state.currentVendorEvent.key)+\"/send-details/batches\",{method:\"POST\",body:JSON.stringify({allowUnallocatedTables,allowRepeat:!0}),timeoutMs:3e4,cacheMs:0});renderVendorBriefingBatchV487(repeat.job),scheduleVendorBriefingBatchPollV487(repeat.job),setNotice2(\"New Vendor batch started after explicit repeat confirmation.\");return}throw err}finally{setLoading(button2,!1)}}async function sendSingleVendorInfoV456(button2){const event=state.currentVendorEvent,customerKey=button2.dataset.vendorSendInfo;if(!(!event||!customerKey)&&confirm(\"Send the current saved show information to this vendor only?\")){setLoading(button2,!0);try{await saveVendorEventEmailCustomV414(null,{quiet:!0});const preview=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/communication-preview\",{cacheMs:0});if(!preview.hasTablePlan)throw new Error(\"Save the floor plan before sending vendor information.\");const vendor=(preview.vendors||[]).find(v=>String(v.customerKey)===String(customerKey));if(!vendor)throw new Error(\"Vendor is no longer in this event.\");if(!vendor.email)throw new Error(\"This vendor does not have an email address saved.\");const allow=Number(vendor.missingTables||0)>0||!(vendor.assignedTables||[]).length?confirm(\"This vendor has no complete table allocation. Send the briefing anyway?\"):!1;if((Number(vendor.missingTables||0)>0||!(vendor.assignedTables||[]).length)&&!allow)return;const result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/send-details\",{method:\"POST\",body:JSON.stringify({customerKey,allowUnallocatedTables:allow})});if(!Number(result.sent||0)&&Number(result.failed||0))throw new Error(result.results?.find(x=>x.error)?.error||\"Vendor email failed.\");setNotice2(\"Show information sent to \"+(vendor.customer?.businessName||vendor.customer?.name||vendor.email)+\" only.\")}finally{setLoading(button2,!1)}}}async function sendVendorEventTestEmailV415(button2){const event=state.currentVendorEvent;if(!event)return;const input=$2(\"vendorEventTestEmail\"),to=String(input?.value||\"\").trim();if(!/^\\S+@\\S+\\.\\S+$/.test(to))throw new Error(\"Enter the email address you want the test briefing sent to.\");try{localStorage.setItem(\"orbitVendorTestEmail\",to)}catch{}setLoading(button2,!0);try{await saveVendorEventEmailCustomV414(null,{quiet:!0});const result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(event.key)+\"/send-details-test\",{method:\"POST\",body:JSON.stringify({to,customerKey:$2(\"vendorEmailPreviewVendor\")?.value||state.vendorCommunicationPreview?.renderedSample?.customerKey||\"\"})});if(!result.sent&&!result.testMode)throw new Error(result.error||\"The test email was not sent.\");setNotice2((result.testMode?\"Test mode prepared\":\"Test vendor briefing sent\")+\" for \"+result.vendorName+\" to \"+to+\" with \"+Number(result.attachmentCount||0)+\" attachment\"+(Number(result.attachmentCount||0)===1?\"\":\"s\")+\" (Getting Here & Parking + personalised Floor Plan).\")}finally{setLoading(button2,!1)}}async function cancelVendorBookingV398(button2){const adjustmentId=button2.dataset.adjustmentId||\"\",reason=prompt(\"Why is this vendor booking being cancelled?\",\"Vendor unable to attend\");if(reason===null)return;if(adjustmentId){if(!confirm(\"Cancel this manual vendor booking?\"))return;await api(\"/api/admin/vendors/bookings/complimentary-action\",{method:\"POST\",body:JSON.stringify({adjustmentId,action:\"cancel\",reason})}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),setNotice2(\"Manual vendor booking cancelled.\");return}const choice=prompt(`Choose the cancellation outcome:\n1 = CANCEL & ACCOUNT CREDIT (exact Shopify line value, reverse earned points)\n2 = TRANSFER TO ANOTHER SHOW (points retained)\n3 = CANCEL WITHOUT CREDIT (points retained)\n\nIf credit was already issued manually, do not issue it again. Use Reconciliation to link the existing credit.`,\"1\");if(choice===null)return;if(String(choice).trim()===\"2\"){openVendorTransferV385(button2);return}const disposition=String(choice).trim()===\"1\"?\"account_credit\":String(choice).trim()===\"3\"?\"without_credit\":null;if(!disposition)throw new Error(\"Enter 1, 2 or 3 to select the booking outcome.\");if(confirm((disposition===\"account_credit\"?\"Cancel this exact Shopify booking line and issue the full paid amount as NEW account credit? The associated reward will be reversed only if its ledger evidence is unambiguous. DO NOT proceed if credit was already added manually.\":\"Cancel this booking WITHOUT refund or credit? The original Vendor Points will be retained. Only use this when no refund or credit was given.\")+`\n\nThe Shopify order is preserved and this decision cannot be silently changed.`)){setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/bookings/cancel\",{method:\"POST\",body:JSON.stringify({shopifyOrderId:button2.dataset.orderId,lineItemId:button2.dataset.lineId,reason,disposition,refundStatus:\"not_refunded\"}),timeoutMs:25e3,cacheMs:0});await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\");const reconciliation=result.rewardReconciliation||{};setNotice2(disposition===\"account_credit\"?\"Booking cancelled. \"+vendorMoneyV384(result.credit?.originalAmount)+\" Account Credit saved. Points: \"+(reconciliation.status===\"reversed\"?String(reconciliation.pointsReversed)+\" reversed\":reconciliation.status===\"needs_reconciliation\"?\"manual reconciliation required\":reconciliation.status||\"no award\")+\". Shopify order unchanged.\":\"Booking cancelled without refund or credit. Vendor Points retained. Shopify order unchanged.\")}finally{setLoading(button2,!1)}}}async function substituteVendorBookingV398(button2){const attendingName=prompt(\"Business/vendor that will actually attend:\",\"\");if(!attendingName)return;const attendingEmail=prompt(\"Attending vendor email (optional):\",\"\");if(attendingEmail===null)return;const reason=prompt(\"Reason / note (optional):\",\"Table reassigned by original purchaser\");if(reason===null)return;const adjustmentId=button2.dataset.adjustmentId||\"\";setLoading(button2,!0);try{adjustmentId?await api(\"/api/admin/vendors/bookings/complimentary-action\",{method:\"POST\",body:JSON.stringify({adjustmentId,action:\"substitute\",attendingName,attendingEmail,reason})}):await api(\"/api/admin/vendors/bookings/substitute\",{method:\"POST\",body:JSON.stringify({shopifyOrderId:button2.dataset.orderId,lineItemId:button2.dataset.lineId,attendingName,attendingEmail,reason})}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),setNotice2(adjustmentId?\"Complimentary attending vendor changed.\":\"Attending vendor changed. The original purchaser/order remains in the audit history.\")}finally{setLoading(button2,!1)}}async function editVendorComplimentaryEmailV425(button2){const adjustmentId=button2.dataset.adjustmentId||\"\",current=button2.dataset.currentEmail||\"\",email=prompt(\"Complimentary vendor email address:\",current);if(email!==null){if(!String(email).trim())throw new Error(\"Enter an email address.\");setLoading(button2,!0);try{await api(\"/api/admin/vendors/bookings/complimentary-action\",{method:\"POST\",body:JSON.stringify({adjustmentId,action:\"update-email\",email:String(email).trim()})}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),setNotice2(\"Manual vendor email saved.\")}finally{setLoading(button2,!1)}}}async function saveVendorReconciliationV398(id,button2){const row=(state.vendorReconciliation||[]).find(x=>x.id===id),card=button2.closest(\"[data-reconcile-id]\"),select=card?.querySelector(\"[data-reconcile-event]\"),option=select?.selectedOptions?.[0];if(!row||!select?.value)throw new Error(\"Choose the correct event first.\");setLoading(button2,!0);try{await api(\"/api/admin/vendors/reconciliation\",{method:\"POST\",body:JSON.stringify({shopifyOrderId:row.shopifyOrderId,lineItemId:row.lineItemId,eventKey:select.value,eventLabel:option?.dataset?.label||option?.textContent,eventDate:option?.dataset?.date||null})}),await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),setNotice2(\"Order line reconciled to the event.\")}finally{setLoading(button2,!1)}}function resetVendorVenueDialogV398(v={}){$2(\"vendorVenueId\").value=v.id||\"\",$2(\"vendorVenueName\").value=v.name||\"\",$2(\"vendorVenuePostcode\").value=v.postcode||\"\",$2(\"vendorVenueAddress\").value=v.address||\"\",setVendorRichEditorV421(\"vendorVenueEntrance\",v.vendorEntranceHtml,v.vendorEntrance),setVendorRichEditorV421(\"vendorVenueDirections\",v.directionsHtml,v.directions),setVendorRichEditorV421(\"vendorVenueParking\",v.parkingNotesHtml,v.parkingNotes),$2(\"vendorVenueSetupTime\").value=v.defaultSetupTime||\"\",$2(\"vendorVenueHireCost\").value=Number(v.defaultHireCost||0)||\"\",setVendorRichEditorV421(\"vendorVenueInstructions\",v.vendorInstructionsHtml,v.vendorInstructions),setVendorRichEditorV421(\"vendorVenueRules\",v.rulesHtml,v.rules),$2(\"vendorVenueDialogTitle\").textContent=v.id?\"Edit \"+v.name:\"Add venue\",$2(\"vendorVenueResult\").hidden=!0;const source=$2(\"vendorVenueImportSource\");if(source){const imported=v.source===\"eventbrite\";if(source.hidden=!imported,imported){const details=[Number((v.eventbriteEventIds||[]).length)+\" Eventbrite event\"+(Number((v.eventbriteEventIds||[]).length)===1?\"\":\"s\")+\" linked\",v.eventbriteAccessNotes?\"Imported access notes available\":\"\",v.manualEditedAt?\"Manual venue edits protected\":\"Eventbrite data will continue filling this record until you edit it\"].filter(Boolean);source.innerHTML=\"<strong>Imported from Eventbrite</strong><span>\"+esc(details.join(\" \\xB7 \"))+\"</span>\"+(v.eventbriteAccessNotes?\"<small>\"+esc(v.eventbriteAccessNotes)+\"</small>\":\"\")}}const deleteVenueButton=$2(\"deleteVendorVenueV527\");deleteVenueButton&&(deleteVenueButton.hidden=!v.id),renderVendorVenueFloorPlansV401(v.id||\"\"),renderVendorVenueHistoryV456(v.id||\"\")}function renderVendorVenueHistoryV456(venueId){const target=$2(\"vendorVenueHistoryV456\");if(!target)return;if(!venueId){target.innerHTML=\"<p class='orbit-muted'>Save the venue first to build its event history.</p>\";return}const rows=(state.vendorWorkspace?.allEvents||[]).filter(e=>String(e.venueId||e.venue?.id||\"\")===String(venueId)).sort((a,b)=>String(b.eventDate||\"\").localeCompare(String(a.eventDate||\"\")));if(!rows.length){target.innerHTML=\"<p class='orbit-muted'>No Orbit events are currently linked to this venue.</p>\";return}target.innerHTML=\"<div class='orbit-table-wrap'><table><thead><tr><th>Event</th><th>Date</th><th>Vendors</th><th>Income</th><th>Costs</th><th>Profit / loss</th></tr></thead><tbody>\"+rows.map(e=>{const f=e.finance||{};return\"<tr><td><strong>\"+esc(e.displayName||e.label||\"Orbit event\")+\"</strong></td><td>\"+esc(vendorDateV385(e.eventDate))+(e.eventEndDate?\" \\u2013 \"+esc(vendorDateV385(e.eventEndDate)):\"\")+\"</td><td>\"+Number(e.customers||0)+\"</td><td>\"+esc(vendorMoneyV384(f.totalIncome||e.sales||0))+\"</td><td>\"+esc(vendorMoneyV384(f.expenses?.total||0))+\"</td><td><strong>\"+esc(vendorMoneyV384(f.profit||0))+\"</strong></td></tr>\"}).join(\"\")+\"</tbody></table></div>\"}function renderVendorVenueFloorPlansV401(venueId){const target=$2(\"vendorVenueFloorPlans\");if(!target)return;if(!venueId){target.innerHTML=\"<p class='orbit-muted'>Save the venue first, then add its floor plans.</p>\";return}const plans=(state.vendorFloorPlans||[]).filter(x=>x.venueId===venueId);target.innerHTML=plans.length?\"<div class='orbit-vendor-floor-plan-list'>\"+plans.map(p=>\"<div class='orbit-vendor-floor-plan-card'><div><strong>\"+esc(p.name)+\"</strong><small>\"+esc(p.roomName||\"Room / area not named\")+\" \\xB7 \"+Number((p.tables||[]).length)+\" table positions\"+(p.sourceMimeType===\"application/pdf\"?\" \\xB7 PDF page \"+Number(p.pageNumber||1):\"\")+\"</small></div><button type='button' class='secondary' data-vendor-floor-plan-edit='\"+esc(p.id)+\"'>Edit</button><button type='button' class='secondary' data-vendor-floor-plan-delete='\"+esc(p.id)+\"'>Remove</button></div>\").join(\"\")+\"</div>\":\"<p class='orbit-muted'>No floor plans saved for this venue yet.</p>\"}async function openVendorVenueV398(id=null){const v=(state.vendorVenues||[]).find(x=>x.id===id)||{};if(resetVendorVenueDialogV398(v),$2(\"vendorVenueDialog\")?.showModal(),v.id)try{await loadVendorFloorPlansV401(),renderVendorVenueFloorPlansV401(v.id),renderVendorVenueHistoryV456(v.id)}catch{}}async function saveVendorVenueV398(button2){setLoading(button2,!0);try{const payload={id:$2(\"vendorVenueId\").value,name:$2(\"vendorVenueName\").value,postcode:$2(\"vendorVenuePostcode\").value,address:$2(\"vendorVenueAddress\").value,vendorEntrance:vendorRichEditorTextV421(\"vendorVenueEntrance\"),vendorEntranceHtml:vendorRichEditorHtmlV421(\"vendorVenueEntrance\"),directions:vendorRichEditorTextV421(\"vendorVenueDirections\"),directionsHtml:vendorRichEditorHtmlV421(\"vendorVenueDirections\"),parkingNotes:vendorRichEditorTextV421(\"vendorVenueParking\"),parkingNotesHtml:vendorRichEditorHtmlV421(\"vendorVenueParking\"),defaultSetupTime:$2(\"vendorVenueSetupTime\").value,defaultHireCost:Number($2(\"vendorVenueHireCost\").value||0),vendorInstructions:vendorRichEditorTextV421(\"vendorVenueInstructions\"),vendorInstructionsHtml:vendorRichEditorHtmlV421(\"vendorVenueInstructions\"),rules:vendorRichEditorTextV421(\"vendorVenueRules\"),rulesHtml:vendorRichEditorHtmlV421(\"vendorVenueRules\")},result=await api(\"/api/admin/vendors/venues\",{method:\"POST\",body:JSON.stringify(payload)});return $2(\"vendorVenueId\").value=result.venue?.id||payload.id,$2(\"vendorVenueResult\").hidden=!1,$2(\"vendorVenueResult\").textContent=\"Venue saved. You can now add or manage its floor plans below.\",await loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"customers\"),renderVendorVenueFloorPlansV401($2(\"vendorVenueId\").value),result}finally{setLoading(button2,!1)}}function floorPlanDraftV401(){return state.vendorFloorPlanDraft||(state.vendorFloorPlanDraft={tables:[],rotation:0,flipX:!1,flipY:!1,pageNumber:1})}function vendorFloorPlanEditorZoomV412(){const z=Number(state.vendorFloorPlanEditorZoom||1);return Math.max(.5,Math.min(3,z))}function vendorFloorPlanTableTemplateV413(){const d=floorPlanDraftV401(),saved=d.tableTemplate||{};return{widthPct:Math.max(.4,Math.min(20,Number(saved.widthPct||4.5))),heightPct:Math.max(.4,Math.min(20,Number(saved.heightPct||2.5))),angleDeg:Math.max(-180,Math.min(180,Number(saved.angleDeg||0)))}}function saveVendorFloorPlanTableTemplateV413(){const d=floorPlanDraftV401(),t=selectedVendorFloorTableV411();if(!t){setNotice2(\"Select a table first, set its size, then lock that size.\",!0);return}d.tableTemplate={widthPct:Number(t.widthPct||4.5),heightPct:Number(t.heightPct||2.5),angleDeg:Number(t.angleDeg||0)};const label=$2(\"vendorFloorPlanTemplateStatus\");label&&(label.textContent=\"Locked size: \"+Number(d.tableTemplate.widthPct).toFixed(2)+\"% \\xD7 \"+Number(d.tableTemplate.heightPct).toFixed(2)+\"% \\xB7 \"+Number(d.tableTemplate.angleDeg||0)+\"\\xB0\"),setNotice2(\"Table size locked for this floor plan. New table positions will use it.\")}function setVendorFloorPlanEditorZoomV412(value){state.vendorFloorPlanEditorZoom=Math.max(.5,Math.min(3,Number(value||1)));const label=$2(\"vendorFloorPlanZoomLabel\");label&&(label.textContent=Math.round(state.vendorFloorPlanEditorZoom*100)+\"%\"),renderVendorFloorPlanPreviewV401()}async function loadOrbitPdfJsV401(){return window.orbitPdfJs?window.orbitPdfJs:(window.orbitPdfJsPromise||(window.orbitPdfJsPromise=import(\"https://cdnjs.cloudflare.com/ajax/libs/pdf.js/4.10.38/pdf.min.mjs\").then(lib=>(lib.GlobalWorkerOptions.workerSrc=\"https://cdnjs.cloudflare.com/ajax/libs/pdf.js/4.10.38/pdf.worker.min.mjs\",window.orbitPdfJs=lib,lib)).catch(error=>{throw window.orbitPdfJsPromise=null,new Error(\"Orbit could not load the PDF processing engine. Check the internet connection and retry, or upload an image floor plan instead. \"+(error?.message||error))})),window.orbitPdfJsPromise)}function tableLabelSortV401(a,b){return Number(String(a.label).replace(/\\D/g,\"\"))-Number(String(b.label).replace(/\\D/g,\"\"))||String(a.label).localeCompare(String(b.label))}async function processVendorFloorPlanFileV401(file,pageNumber=1){const sourceDataUrl=await fileToDataUrlV398(file);if(file.type===\"application/pdf\"||/\\.pdf$/i.test(file.name)){const pdfjs=await loadOrbitPdfJsV401(),buffer=await file.arrayBuffer(),pdf=await pdfjs.getDocument({data:new Uint8Array(buffer)}).promise,pageNo=Math.max(1,Math.min(Number(pageNumber||1),pdf.numPages)),page=await pdf.getPage(pageNo),base=page.getViewport({scale:1}),scale=Math.max(1,Math.min(2.5,1800/Math.max(base.width,base.height))),viewport=page.getViewport({scale}),canvas=document.createElement(\"canvas\");canvas.width=Math.round(viewport.width),canvas.height=Math.round(viewport.height),await page.render({canvasContext:canvas.getContext(\"2d\"),viewport}).promise;const text2=await page.getTextContent(),found=new Map;for(const item of text2.items||[]){const label=String(item.str||\"\").trim();if(!/^\\d{1,3}$/.test(label))continue;const tx=pdfjs.Util.transform(viewport.transform,item.transform),fontH=Math.max(8,Math.hypot(tx[2],tx[3])),textW=Math.max(fontH*.8,Number(item.width||0)*scale),angle=Math.atan2(tx[1],tx[0]),orientation=Math.abs(Math.sin(angle))>Math.abs(Math.cos(angle))?\"vertical\":\"horizontal\",rawW=orientation===\"vertical\"?fontH:textW,rawH=orientation===\"vertical\"?textW:fontH,x=Math.max(0,Math.min(100,(tx[4]+rawW/2)/viewport.width*100)),y=Math.max(0,Math.min(100,(tx[5]-rawH/2)/viewport.height*100)),textWidthPct=rawW/viewport.width*100,textHeightPct=rawH/viewport.height*100,widthPct=Math.max(1.5,Math.min(7.5,textWidthPct*(orientation===\"vertical\"?2.2:1.8))),heightPct=Math.max(1.5,Math.min(7.5,textHeightPct*(orientation===\"vertical\"?1.8:2.2)));found.has(label)||found.set(label,{id:\"table-\"+String(Number(label)||label),label,x,y,orientation,widthPct,heightPct})}const detectedTables=inferVendorPdfTableGeometryV410([...found.values()].sort(tableLabelSortV401),viewport.width,viewport.height).tables;return{sourceDataUrl,sourceMimeType:\"application/pdf\",sourceFileName:file.name,pageNumber:pageNo,totalPages:pdf.numPages,backgroundDataUrl:canvas.toDataURL(\"image/jpeg\",.9),width:canvas.width,height:canvas.height,tables:detectedTables,detectedCount:found.size}}const dims=await imageDimensionsV401(sourceDataUrl);return{sourceDataUrl:null,sourceMimeType:file.type||\"image/*\",sourceFileName:file.name,sourceBytes:Number(file.size||0),pageNumber:1,totalPages:1,backgroundDataUrl:sourceDataUrl,width:dims.width,height:dims.height,tables:[],detectedCount:0}}function ensureVendorAlignmentControlsV774(){installVendorPlannerV774Style();const toolbar=$2(\"vendorPlannerOrientationControls\");if(toolbar&&!$2(\"vendorPlannerAlignV774\")){const button2=document.createElement(\"button\");button2.type=\"button\",button2.className=\"secondary orbit-v774-align-button\",button2.id=\"vendorPlannerAlignV774\",button2.textContent=\"Align table numbers\",button2.title=\"Open the reusable venue map and preview automatically aligned table numbers\",toolbar.appendChild(button2),button2.addEventListener(\"click\",()=>openPlannerAlignV774().catch(err=>setNotice2(err.message||err,!0)))}const add=$2(\"vendorFloorPlanAddTable\");if(add&&!$2(\"vendorFloorAlignPreviewV774\")){add.insertAdjacentHTML(\"beforebegin\",\"<input id='vendorFloorAlignScopeV774' type='text' aria-label='Optional table numbers to align' placeholder='All or 101-112' title='Optional: enter table numbers or ranges, e.g. 101-112, 130; blank means all'> <button type='button' class='secondary orbit-v774-align-button' id='vendorFloorAlignPreviewV774'>Preview auto-align</button><button type='button' class='secondary orbit-v775-row-button' id='vendorFloorTwoPointV775' title='Enter a table range, then click the first and last printed tables to position the whole row'>Align row: 2 clicks</button><button type='button' id='vendorFloorApplyAlignV774' class='orbit-v774-align-apply' hidden>Apply preview</button><button type='button' class='secondary' id='vendorFloorDiscardAlignV774' hidden>Discard preview</button><button type='button' class='secondary' id='vendorFloorUndoAlignV774' disabled>Undo alignment</button>\");const status=document.createElement(\"div\");status.id=\"vendorFloorAlignStatusV774\",status.hidden=!0,status.setAttribute(\"role\",\"status\"),status.setAttribute(\"aria-live\",\"polite\"),$2(\"vendorFloorPlanDetectionStatus\")?.insertAdjacentElement(\"afterend\",status),$2(\"vendorFloorAlignPreviewV774\").addEventListener(\"click\",()=>previewVendorFloorAlignmentV774().catch(err=>vendorAlignmentStatusV774(err.message||err,\"error\"))),$2(\"vendorFloorTwoPointV775\").addEventListener(\"click\",()=>{try{startVendorRowPickV775()}catch(err){vendorAlignmentStatusV774(err.message||err,\"error\")}}),$2(\"vendorFloorPlanPreview\")?.addEventListener(\"click\",e=>{state.vendorRowPickV775&&pickVendorRowPointV775(e).catch(err=>vendorAlignmentStatusV774(err.message||err,\"error\"))},!0),$2(\"vendorFloorApplyAlignV774\").addEventListener(\"click\",()=>applyVendorFloorAlignmentV774().catch(err=>vendorAlignmentStatusV774(err.message||err,\"error\"))),$2(\"vendorFloorDiscardAlignV774\").addEventListener(\"click\",discardVendorFloorAlignmentV774),$2(\"vendorFloorUndoAlignV774\").addEventListener(\"click\",()=>undoVendorFloorAlignmentV774().catch(err=>vendorAlignmentStatusV774(err.message||err,\"error\")))}vendorPolishFloorEditorV776()}function installVendorPlannerV774Style(){if(document.getElementById(\"orbit-v774-plan-alignment-style\"))return;const style=document.createElement(\"style\");style.id=\"orbit-v774-plan-alignment-style\",style.textContent=\"#vendorFloorAlignScopeV774{width:145px!important;min-width:110px!important;max-width:160px!important;padding:7px!important;border:1px solid #aabed0!important;border-radius:7px!important;color:#142f47!important;background:#fff!important;font-size:12px!important;}#vendorPlannerAlignV774,#vendorFloorAlignPreviewV774{background:#123e66!important;color:white!important;-webkit-text-fill-color:white!important;border:1px solid #123e66!important;border-radius:7px!important;font-size:12px!important;font-weight:800!important;padding:7px 11px!important;white-space:nowrap!important;}#vendorFloorApplyAlignV774{background:#16704c!important;color:white!important;-webkit-text-fill-color:white!important;font-weight:800!important;border-radius:7px!important;}#vendorFloorAlignStatusV774{margin:8px 0 10px!important;padding:12px!important;font-weight:700!important;line-height:1.5!important;border-radius:9px!important;border:1px solid #bfd3e4!important;color:#163954!important;background:#edf7ff!important;}#vendorFloorAlignStatusV774.success{border-color:#a1ccb6!important;color:#155138!important;background:#eaf8f0!important;}#vendorFloorAlignStatusV774.error{border-color:#e5b4b4!important;color:#7d2020!important;background:#fff2f2!important;}#vendorFloorPlanPreview.orbit-v774-alignment-active .orbit-vendor-table-marker:not(.orbit-v774-alignment-ghost){opacity:.42!important;}#vendorFloorPlanPreview .orbit-v774-alignment-ghost{pointer-events:none!important;opacity:1!important;z-index:20!important;border:2px solid #6d28d9!important;outline:2px solid #fff!important;box-shadow:0 0 0 3px #a78bfa!important;background:rgba(109,40,217,.25)!important;}#vendorFloorPlanPreview .orbit-v774-alignment-ghost strong{color:#fff!important;-webkit-text-fill-color:#fff!important;background:#6d28d9!important;font-weight:900!important;}\",style.textContent+=\"#vendorFloorTwoPointV775{background:#fff!important;color:#13446b!important;-webkit-text-fill-color:#13446b!important;border:1px solid #6b9fc1!important;border-radius:7px!important;font-size:12px!important;font-weight:850!important;padding:7px 10px!important;white-space:nowrap!important;}#vendorFloorTwoPointV775[aria-pressed=true]{background:#8b5cf6!important;color:#fff!important;-webkit-text-fill-color:#fff!important;}#vendorFloorPlanPreview.orbit-v775-picking{cursor:crosshair!important;}#vendorFloorPlanPreview.orbit-v775-picking .orbit-vendor-table-marker{pointer-events:none!important;}\",document.head.appendChild(style)}function vendorAlignmentCyanV774(data,i){const r=data[i],g=data[i+1],b=data[i+2];return data[i+3]>180&&r<218&&g>110&&b>130&&g-r>11&&b-r>18&&b>=g-28}function vendorImageSnapCandidateV774(pixels,w,h,table2){const vertical=String(table2.orientation||\"\")===\"vertical\"||Math.abs(Number(table2.angleDeg||0))%180>45&&Math.abs(Number(table2.angleDeg||0))%180<135,tx=Number(table2.x||0)/100*w,ty=Number(table2.y||0)/100*h,axis=vertical?tx:ty,axisSize=vertical?w:h,otherSize=vertical?h:w,cross=vertical?ty:tx,halfCross=Math.max(3,Math.min(otherSize*.02,otherSize*Number(vertical?table2.heightPct||2:table2.widthPct||2)/100*.39)),search=Math.round(axisSize*(vertical?.055:.09)),lo=Math.max(1,Math.round(axis)-search),hi=Math.min(axisSize-2,Math.round(axis)+search),stepCross=Math.max(1,Math.floor(halfCross/6)),threshold=.29,bands=[];let band=null;for(let a=lo;a<=hi+1;a++){let hits=0,total=0;if(a<=hi)for(let b=cross-halfCross;b<=cross+halfCross;b+=stepCross){const x=Math.round(vertical?a:b),y=Math.round(vertical?b:a);x<0||y<0||x>=w||y>=h||(total++,vendorAlignmentCyanV774(pixels,(y*w+x)*4)&&hits++)}const density2=total?hits/total:0;density2>=threshold?band?(band.end=a,band.peak=Math.max(band.peak,density2),band.total+=density2,band.n++):band={start:a,end:a,peak:density2,total:density2,n:1}:band&&(bands.push(band),band=null)}const viable=bands.filter(b=>b.n>=Math.max(3,axisSize*.005)&&b.n<=axisSize*.072&&b.peak>=.45);if(!viable.length)return null;viable.sort((a,b)=>Math.abs((a.start+a.end)/2-axis)-Math.abs((b.start+b.end)/2-axis)||b.peak-a.peak);const winner=viable[0],center=(winner.start+winner.end)/2,shiftPct=Math.abs(center-axis)/axisSize*100;if(shiftPct<.35||shiftPct>(vertical?5.5:9)||viable.length>1&&Math.abs((viable[1].start+viable[1].end)/2-axis)-Math.abs(center-axis)<Math.max(3,axisSize*.006))return null;const density=winner.total/winner.n;if(density<.42)return null;const pct=Math.max(0,Math.min(100,center/axisSize*100));return{x:vertical?pct:Number(table2.x),y:vertical?Number(table2.y):pct,source:\"image\",confidence:Number(Math.min(.92,density).toFixed(2))}}function vendorImageEvidenceV775(pixels,w,h,table2,point){const x=Math.round(Number(point.x)/100*w),y=Math.round(Number(point.y)/100*h),vertical=String(table2.orientation||\"\")===\"vertical\",tw=Math.max(3,Math.min(w*.045,w*Math.max(.8,Number(table2.widthPct||2.3))/100*.36)),th=Math.max(3,Math.min(h*.045,h*Math.max(.8,Number(table2.heightPct||2.35))/100*.36));let hits=0,total=0;for(let ry=-2;ry<=2;ry++)for(let rx=-2;rx<=2;rx++){const px=Math.round(x+rx*tw/2),py=Math.round(y+ry*th/2);px<0||py<0||px>=w||py>=h||(total++,vendorAlignmentCyanV774(pixels,(py*w+px)*4)&&hits++)}return total?hits/total:0}function vendorVerifiedImageCandidateV775(pixels,w,h,table2,pdfCandidate){const image=vendorImageSnapCandidateV774(pixels,w,h,table2),original={x:Number(table2.x),y:Number(table2.y)},originalEvidence=vendorImageEvidenceV775(pixels,w,h,table2,original),credible=p=>p&&Math.hypot(Number(p.x)-original.x,Number(p.y)-original.y)<=6.25&&vendorImageEvidenceV775(pixels,w,h,table2,p)>=.48&&vendorImageEvidenceV775(pixels,w,h,table2,p)>originalEvidence+.16;return credible(image)?{...image,confidence:Math.max(.7,Number(image.confidence||.7))}:credible(pdfCandidate)?{...pdfCandidate,confidence:.85}:null}function vendorRowInterpolateV775(tables,scope,start,end){const row=(tables||[]).filter(t=>scope?.has(String(t.label||\"\").trim())).sort((a,b)=>Number(a.label)-Number(b.label));if(row.length<2||row.length>80)throw new Error(\"Select a row of 2\\u201380 numbered tables, e.g. 101-112.\");if(row.length!==scope.size)throw new Error(\"Some selected table numbers are not on this Venue map. Check the range.\");const n0=Number(row[0].label),n1=Number(row[row.length-1].label);if(!Number.isInteger(n0)||!Number.isInteger(n1)||n0===n1)throw new Error(\"Row calibration needs distinct numeric table labels.\");const moves=[];for(const t of row){const factor=(Number(t.label)-n0)/(n1-n0),x=start.x+(end.x-start.x)*factor,y=start.y+(end.y-start.y)*factor;if(!Number.isFinite(x+y)||x<.5||x>99.5||y<.5||y>99.5)throw new Error(\"Clicked alignment point is outside the usable floor plan.\");if(Math.hypot(x-Number(t.x),y-Number(t.y))>12)throw new Error(\"Proposed alignment is too far from the saved row. Check the first and last table clicks.\");moves.push({id:String(t.id),label:String(t.label),x:Number(x.toFixed(4)),y:Number(y.toFixed(4)),fromX:Number(t.x),fromY:Number(t.y),source:\"two-point row calibration\",confidence:1})}if(Math.hypot(moves[0].x-moves[0].fromX,moves[0].y-moves[0].fromY)>9||Math.hypot(moves[moves.length-1].x-moves[moves.length-1].fromX,moves[moves.length-1].y-moves[moves.length-1].fromY)>9)throw new Error(\"Alignment points do not match this row. Click the printed first table, then the printed last table.\");return moves}function vendorRowPickControlsV775(){const button2=$2(\"vendorFloorTwoPointV775\"),picking=state.vendorRowPickV775;button2&&(button2.textContent=picking?\"Cancel row picks\":\"Align row \\xB7 2 clicks\",button2.setAttribute(\"aria-pressed\",picking?\"true\":\"false\")),$2(\"vendorFloorPlanPreview\")?.classList.toggle(\"orbit-v775-picking\",!!picking)}function cancelVendorRowPickV775(silent=!1){state.vendorRowPickV775&&(state.vendorRowPickV775=null,vendorRowPickControlsV775(),silent||vendorAlignmentStatusV774(\"Row calibration cancelled. No positions were changed.\"))}function startVendorRowPickV775(){if(state.vendorRowPickV775){cancelVendorRowPickV775();return}const draft=floorPlanDraftV401(),scope=vendorAlignmentScopeV774($2(\"vendorFloorAlignScopeV774\")?.value);if(!draft.backgroundDataUrl||!draft.tables?.length)throw new Error(\"Open the Venue floor plan first.\");if(!scope||scope.size<2||scope.size>80)throw new Error(\"Enter a row of table numbers first, for example 101-112.\");const row=(draft.tables||[]).filter(t=>scope.has(String(t.label||\"\").trim())).sort((a,b)=>Number(a.label)-Number(b.label));if(row.length!==scope.size)throw new Error(\"The selected range includes missing table numbers.\");cancelVendorSinglePickV776(!0),state.vendorFloorPlanAddMode=!1,$2(\"vendorFloorPlanAddTable\")?.classList.remove(\"active\"),state.vendorRowPickV775={id:String(draft.id||\"\"),scope,startLabel:String(row[0].label),endLabel:String(row[row.length-1].label),start:null},vendorRowPickControlsV775(),vendorAlignmentStatusV774(\"Row calibration: CLICK THE CENTRE of printed table \"+row[0].label+\" in the floor-plan artwork, then printed table \"+row[row.length-1].label+\". Nothing will save until you approve the preview.\")}async function pickVendorRowPointV775(e){const picking=state.vendorRowPickV775;if(!picking)return;e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation?.();const draft=floorPlanDraftV401(),canvas=$2(\"vendorFloorPlanPreview\");if(String(draft.id||\"\")!==picking.id){cancelVendorRowPickV775(!0);return}const rect=canvas.getBoundingClientRect(),point={x:(e.clientX-rect.left)/rect.width*100,y:(e.clientY-rect.top)/rect.height*100},base=inverseVendorPointV401(point.x,point.y,draft);if(!Number.isFinite(base.x+base.y)||base.x<0||base.x>100||base.y<0||base.y>100){vendorAlignmentStatusV774(\"Click inside the floor-plan image.\",\"error\");return}if(!picking.start){picking.start=base,vendorAlignmentStatusV774(\"First anchor set for table \"+picking.startLabel+\". Now click the CENTRE of printed table \"+picking.endLabel+\".\");return}let moves;try{moves=vendorRowInterpolateV775(draft.tables,picking.scope,picking.start,base)}catch(err){cancelVendorRowPickV775(!0),vendorAlignmentStatusV774(String(err.message||err)+\" No changes were made.\",\"error\");return}state.vendorRowPickV775=null,vendorRowPickControlsV775();const total=vendorMergeAlignmentPreviewV776(draft,moves,\"two-point row calibration\");vendorAlignmentStatusV774(\"PREVIEW ONLY: \"+moves.length+\" row positions updated between \"+picking.startLabel+\" and \"+picking.endLabel+\" (\"+total+\" total proposals). Compare the purple positions with the printed rectangles BEFORE applying or saving.\",\"info\"),await renderVendorFloorPlanPreviewV401()}function vendorAlignmentReviewV776(pixels,w,h,table2,pdfCandidate){const proposed=vendorVerifiedImageCandidateV775(pixels,w,h,table2,pdfCandidate);return proposed?{status:\"proposed\",proposed}:vendorImageEvidenceV775(pixels,w,h,table2,{x:Number(table2.x),y:Number(table2.y)})>=.5?{status:\"already\",reason:\"Marker appears centered on blue table artwork\"}:pdfCandidate&&vendorImageEvidenceV775(pixels,w,h,table2,pdfCandidate)<.48?{status:\"review\",reason:\"PDF text position does not match visible table artwork\"}:{status:\"review\",reason:\"No unambiguous table footprint for this orientation or position\"}}function vendorMergeAlignmentPreviewV776(draft,moves,source){const id=String(draft.id||\"\"),existing=state.vendorAlignPreviewV774;if(existing&&String(existing.id)!==id)throw new Error(\"Floor plan changed. Reopen the editor before aligning.\");const valid=new Map((draft.tables||[]).map(t=>[String(t.id),t])),merged=new Map((existing?.moves||[]).map(m=>[String(m.id),m]));for(const move of moves){const table2=valid.get(String(move.id));if(!table2||String(table2.label)!==String(move.label))throw new Error(\"Table identity changed. No alignment was applied.\");if(!Number.isFinite(Number(move.x)+Number(move.y))||move.x<.5||move.y<.5||move.x>99.5||move.y>99.5)throw new Error(\"Table alignment is outside the floor plan.\");if(Math.hypot(Number(move.x)-Number(table2.x),Number(move.y)-Number(table2.y))>12)throw new Error(\"Table \"+move.label+\" is too far from its saved position.\");merged.set(String(move.id),{...move,id:String(move.id),label:String(table2.label),fromX:Number(table2.x),fromY:Number(table2.y)})}return state.vendorAlignPreviewV774={...existing||{},id,moves:[...merged.values()],calibrated:!0},vendorAlignmentButtonsV774(),merged.size}function vendorAlignmentCoverageV776(result){const box=$2(\"vendorFloorAlignCoverageV776\");if(!box)return;if(box.replaceChildren(),!result){box.hidden=!0,state.vendorAlignCoverageV776=null;return}state.vendorAlignCoverageV776=result,box.hidden=!1;const summary=document.createElement(\"strong\");if(summary.className=\"orbit-v776-coverage-title\",summary.textContent=\"Checked \"+result.checked+\" \\xB7 \"+result.proposed+\" proposals \\xB7 \"+result.already+\" already aligned \\xB7 \"+result.needs.length+\" need review\",box.appendChild(summary),result.needs.length){const caption=document.createElement(\"span\");caption.className=\"orbit-v776-coverage-caption\",caption.textContent=\"Click a missed table number, then click its printed rectangle on the map. Existing purple proposals stay in place.\",box.appendChild(caption);const list=document.createElement(\"div\");list.className=\"orbit-v776-coverage-list\";for(const item of result.needs){const pill=document.createElement(item.missing?\"span\":\"button\");item.missing||(pill.type=\"button\"),pill.className=\"orbit-v776-review-pill\",item.missing||(pill.dataset.v776PickLabel=String(item.label)),pill.textContent=String(item.label),pill.title=(item.missing?\"Table missing from Venue map: \":\"Place table \"+item.label+\": \")+item.reason,item.missing||pill.setAttribute(\"aria-label\",\"Place missing table \"+item.label+\" manually\"),list.appendChild(pill)}box.appendChild(list)}else{const done=document.createElement(\"span\");done.className=\"orbit-v776-coverage-caption\",done.textContent=\"All checked tables are either confidently aligned already or have proposals. Review purple positions before applying.\",box.appendChild(done)}}function vendorSinglePickControlsV776(){const b=$2(\"vendorFloorOnePointV776\"),picker=state.vendorSinglePickV776;b&&(b.textContent=picker?\"Cancel one-click\":\"Place one \\xB7 click\",b.setAttribute(\"aria-pressed\",picker?\"true\":\"false\"));const canvas=$2(\"vendorFloorPlanPreview\");canvas&&canvas.classList.toggle(\"orbit-v776-one-picking\",!!picker)}function cancelVendorSinglePickV776(silent=!1){state.vendorSinglePickV776&&(state.vendorSinglePickV776=null,vendorSinglePickControlsV776(),silent||vendorAlignmentStatusV774(\"Single-table placement cancelled. No positions were changed.\"))}function startVendorSinglePickV776(label){if(state.vendorSinglePickV776&&label===void 0){cancelVendorSinglePickV776();return}const draft=floorPlanDraftV401();if(!draft.backgroundDataUrl||!draft.tables?.length)throw new Error(\"Open a saved venue floor plan first.\");const scope=label!==void 0?new Set([String(label)]):vendorAlignmentScopeV774($2(\"vendorFloorAlignScopeV774\")?.value);if(!scope||scope.size!==1)throw new Error(\"Enter exactly ONE existing table number (for example 151), or click a missed table number below.\");const name=[...scope][0],matches=draft.tables.filter(t=>String(t.label||\"\").trim()===name);if(matches.length!==1)throw new Error(\"Table \"+name+\" must exist exactly once on this Venue floor plan.\");cancelVendorRowPickV775(!0),state.vendorFloorPlanAddMode=!1,$2(\"vendorFloorPlanAddTable\")?.classList.remove(\"active\"),state.vendorSinglePickV776={id:String(draft.id||\"\"),tableId:String(matches[0].id),label:name};const field=$2(\"vendorFloorAlignScopeV774\");field&&(field.value=name),vendorSinglePickControlsV776(),vendorAlignmentStatusV774(\"Click the CENTRE of the printed blue rectangle for table \"+name+\". It will be added to the existing purple preview (not saved yet).\",\"info\")}async function pickVendorSinglePointV776(e){const pick=state.vendorSinglePickV776;if(!pick)return;e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation?.();const draft=floorPlanDraftV401(),canvas=$2(\"vendorFloorPlanPreview\");if(String(draft.id||\"\")!==pick.id){cancelVendorSinglePickV776(!0);return}const rect=canvas.getBoundingClientRect();if(rect.width<=0||rect.height<=0)throw new Error(\"Floor plan image is not ready.\");const point=inverseVendorPointV401((e.clientX-rect.left)/rect.width*100,(e.clientY-rect.top)/rect.height*100,draft),table2=(draft.tables||[]).find(t=>String(t.id)===pick.tableId&&String(t.label)===pick.label);if(!table2)throw cancelVendorSinglePickV776(!0),new Error(\"Table \"+pick.label+\" is no longer on this map.\");if(!Number.isFinite(point.x+point.y)||point.x<.5||point.x>99.5||point.y<.5||point.y>99.5){vendorAlignmentStatusV774(\"Click inside the actual map image, on table \"+pick.label+\".\",\"error\");return}if(Math.hypot(point.x-Number(table2.x),point.y-Number(table2.y))>12){vendorAlignmentStatusV774(\"That click is too far from the existing table \"+pick.label+\". Check the number or zoom in. Nothing changed.\",\"error\");return}const existing=new Map((state.vendorAlignPreviewV774?.moves||[]).map(m=>[String(m.id),m])),conflicting=(draft.tables||[]).find(t=>String(t.id)!==pick.tableId&&Math.hypot(point.x-Number(existing.get(String(t.id))?.x??t.x),point.y-Number(existing.get(String(t.id))?.y??t.y))<.3);if(conflicting){vendorAlignmentStatusV774(\"Click appears to overlap table \"+conflicting.label+\". Choose the centre of printed table \"+pick.label+\".\",\"error\");return}const move={id:pick.tableId,label:pick.label,x:Number(point.x.toFixed(4)),y:Number(point.y.toFixed(4)),source:\"manual one-click\",confidence:1},total=vendorMergeAlignmentPreviewV776(draft,[move],\"manual one-click\");cancelVendorSinglePickV776(!0);const coverage=state.vendorAlignCoverageV776;if(coverage){const needs=coverage.needs.filter(item=>String(item.label)!==pick.label);vendorAlignmentCoverageV776({...coverage,needs,proposed:total,already:coverage.already})}vendorAlignmentStatusV774(\"PREVIEW ONLY: table \"+pick.label+\" added. \"+total+\" proposed table position\"+(total===1?\"\":\"s\")+\" in this preview. Inspect all purple markers, then Apply preview and Save floor plan.\",\"info\"),await renderVendorFloorPlanPreviewV401()}function vendorPolishFloorEditorV776(){installVendorPlannerV776Style();const add=$2(\"vendorFloorPlanAddTable\"),toolbar=add?.closest(\".orbit-vendor-map-toolbar\");if(!toolbar||toolbar.classList.contains(\"orbit-v776-grouped\"))return;const one=document.createElement(\"button\");one.type=\"button\",one.id=\"vendorFloorOnePointV776\",one.className=\"secondary\",one.textContent=\"Place one \\xB7 click\",one.title=\"Select one table number, then click its printed table centre. Adds to current preview without discarding other corrections.\",one.addEventListener(\"click\",()=>{try{startVendorSinglePickV776()}catch(err){vendorAlignmentStatusV774(err.message||err,\"error\")}}),toolbar.appendChild(one),$2(\"vendorFloorPlanPreview\")?.addEventListener(\"click\",e=>{state.vendorSinglePickV776&&pickVendorSinglePointV776(e).catch(err=>vendorAlignmentStatusV774(err.message||err,\"error\"))},!0);const status=$2(\"vendorFloorAlignStatusV774\");if(status){const box=document.createElement(\"section\");box.id=\"vendorFloorAlignCoverageV776\",box.className=\"orbit-v776-coverage\",box.hidden=!0,box.setAttribute(\"aria-label\",\"Auto-alignment results\"),status.insertAdjacentElement(\"afterend\",box),box.addEventListener(\"click\",e=>{const target=e.target.closest?.(\"[data-v776-pick-label]\");if(target)try{startVendorSinglePickV776(target.dataset.v776PickLabel)}catch(err){vendorAlignmentStatusV774(err.message||err,\"error\")}})}const groups=[[\"Map\",['[data-floor-plan-transform=\"rotate-left\"]','[data-floor-plan-transform=\"rotate-right\"]','[data-floor-plan-transform=\"flip-x\"]','[data-floor-plan-transform=\"flip-y\"]','[data-floor-plan-transform=\"reset\"]',\"#vendorFloorPlanTrimV694\",\"#vendorFloorPlanUndoTrimV694\"]],[\"Align\",[\"#vendorFloorAlignScopeV774\",\"#vendorFloorAlignPreviewV774\",\"#vendorFloorTwoPointV775\",\"#vendorFloorOnePointV776\"]],[\"Review\",[\"#vendorFloorApplyAlignV774\",\"#vendorFloorDiscardAlignV774\",\"#vendorFloorUndoAlignV774\"]],[\"Tables & view\",[\"#vendorFloorPlanAddTable\",\".orbit-vendor-floor-plan-zoom\"]]],used=new Set,elements=[];for(const[title,selectors]of groups){const group=document.createElement(\"div\");group.className=\"orbit-v776-tool-group\";const labelEl=document.createElement(\"span\");labelEl.className=\"orbit-v776-group-title\",labelEl.textContent=title;const actions=document.createElement(\"div\");actions.className=\"orbit-v776-group-actions\";for(const selector of selectors){const el=toolbar.querySelector(selector);!el||used.has(el)||(used.add(el),actions.appendChild(el))}if(title===\"Map\"){const buttonText=[\"\\u21B6 Left\",\"\\u21B7 Right\",\"\\u2194 Flip H\",\"\\u2195 Flip V\",\"Reset\"];[...actions.querySelectorAll(\"[data-floor-plan-transform]\")].forEach((el,i)=>{el.title=el.textContent,el.setAttribute(\"aria-label\",el.textContent),el.textContent=buttonText[i]});const trim=$2(\"vendorFloorPlanTrimV694\");trim&&(trim.textContent=\"Trim\",trim.title=\"Trim white margins from the current draft\",trim.setAttribute(\"aria-label\",\"Trim white space\"))}if(title===\"Align\"){const input=$2(\"vendorFloorAlignScopeV774\");input&&(input.placeholder=\"101-165 or 151\",input.title=\"Select a range for Auto/Align row, or one table for Place one\");const auto=$2(\"vendorFloorAlignPreviewV774\");auto&&(auto.textContent=\"Auto preview\",auto.title=\"Preview only high-confidence image-matched corrections\");const row=$2(\"vendorFloorTwoPointV775\");row&&(row.textContent=\"Align row \\xB7 2 clicks\")}if(title===\"Review\"){const undo=$2(\"vendorFloorUndoAlignV774\");undo&&(undo.textContent=\"Undo applied\",undo.title=\"Undo alignment already applied in this editor draft (before saving)\")}group.append(labelEl,actions),elements.push(group)}const leftovers=[...toolbar.children].filter(el=>!used.has(el));if(leftovers.length){const group=document.createElement(\"div\");group.className=\"orbit-v776-tool-group\";const label=document.createElement(\"span\");label.className=\"orbit-v776-group-title\",label.textContent=\"Other\";const controls=document.createElement(\"div\");controls.className=\"orbit-v776-group-actions\",leftovers.forEach(el=>controls.appendChild(el)),group.append(label,controls),elements.push(group)}toolbar.replaceChildren(...elements),toolbar.classList.add(\"orbit-v776-grouped\"),vendorSinglePickControlsV776(),vendorRowPickControlsV775()}function installVendorPlannerV776Style(){if(document.getElementById(\"orbit-v776-floor-editor-style\"))return;const style=document.createElement(\"style\");style.id=\"orbit-v776-floor-editor-style\",style.textContent=`\n      .orbit-vendor-floor-plan-dialog .orbit-vendor-map-toolbar.orbit-v776-grouped{display:flex!important;flex-wrap:wrap!important;align-items:stretch!important;gap:8px!important;overflow:visible!important;min-height:0!important;margin:0 0 8px!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-tool-group{display:flex;flex-direction:column;gap:5px;flex:0 1 auto;min-width:0;padding:7px 8px;border:1px solid #c7d7e5;border-radius:9px;background:#fff;box-sizing:border-box;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-title{font:800 10px/1.2 system-ui,Arial,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:#50677b!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions{display:flex;flex-wrap:wrap;gap:5px;align-items:center;min-width:0;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions>button:not([hidden]){display:inline-flex!important;justify-content:center!important;align-items:center!important;flex:0 0 auto!important;min-width:0!important;max-width:none!important;width:auto!important;height:34px!important;min-height:34px!important;margin:0!important;padding:6px 9px!important;font:750 12px/1.2 system-ui,Arial,sans-serif!important;white-space:nowrap!important;border:1px solid #b8cbdc!important;border-radius:7px!important;background:#f5f9fd!important;color:#183c57!important;-webkit-text-fill-color:#183c57!important;box-shadow:none!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions>button[hidden]{display:none!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions>button:disabled{opacity:.48!important;cursor:not-allowed!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions>button:not([hidden]):focus-visible{outline:3px solid #2563eb!important;outline-offset:2px!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions #vendorFloorAlignPreviewV774:not([hidden]),.orbit-vendor-floor-plan-dialog .orbit-v776-group-actions #vendorFloorTwoPointV775[aria-pressed=true],.orbit-vendor-floor-plan-dialog .orbit-v776-group-actions #vendorFloorOnePointV776[aria-pressed=true]{color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#164d78!important;background:#164d78!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions #vendorFloorApplyAlignV774:not([hidden]){color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#0b6b50!important;background:#087457!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions #vendorFloorDiscardAlignV774:not([hidden]){border-color:#b97675!important;color:#852f32!important;-webkit-text-fill-color:#852f32!important;background:#fff9f8!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions #vendorFloorAlignScopeV774{height:34px!important;width:135px!important;max-width:155px!important;min-width:100px!important;margin:0!important;box-sizing:border-box!important;font:600 12px/1.2 system-ui,Arial,sans-serif!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions>.orbit-vendor-floor-plan-zoom{margin-left:0!important;display:inline-flex!important;align-items:center!important;gap:4px!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-group-actions>.orbit-vendor-floor-plan-zoom>button{width:auto!important;min-width:30px!important;height:34px!important;padding:5px 8px!important;border:1px solid #b8cbdc!important;border-radius:7px!important;color:#183c57!important;-webkit-text-fill-color:#183c57!important;background:#f5f9fd!important;}\n      .orbit-vendor-floor-plan-dialog #vendorFloorTableInspector:not([hidden]){display:flex!important;flex-wrap:wrap!important;align-items:end!important;column-gap:9px!important;row-gap:8px!important;padding:10px!important;background:#e9f5fc!important;}\n      .orbit-vendor-floor-plan-dialog #vendorFloorTableInspector[hidden]{display:none!important;}\n      .orbit-vendor-floor-plan-dialog #vendorFloorTableInspector>strong{flex:0 1 125px!important;align-self:center!important;font-size:13px!important;}\n      .orbit-vendor-floor-plan-dialog #vendorFloorTableInspector>span:not(#vendorFloorPlanTemplateStatus){flex:1 1 240px!important;font-size:11px!important;align-self:center!important;line-height:1.35!important;}\n      .orbit-vendor-floor-plan-dialog #vendorFloorTableInspector>label{flex:1 1 115px!important;min-width:95px!important;max-width:165px!important;font-size:10px!important;}\n      .orbit-vendor-floor-plan-dialog #vendorFloorTableInspector>label input{width:100%!important;min-width:0!important;height:34px!important;padding:5px 8px!important;box-sizing:border-box!important;}\n      .orbit-vendor-floor-plan-dialog #vendorFloorTableInspector>button{width:auto!important;height:auto!important;min-height:34px!important;min-width:0!important;max-width:none!important;white-space:nowrap!important;padding:7px 9px!important;font:700 12px/1.2 system-ui,Arial,sans-serif!important;}\n      .orbit-vendor-floor-plan-dialog #vendorFloorPlanTemplateStatus{flex:1 1 180px!important;align-self:center!important;font-size:11px!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-coverage:not([hidden]){display:flex;flex-wrap:wrap;gap:7px;align-items:center;margin:6px 0 10px;padding:9px 11px;border:1px solid #d8c3f6;border-radius:9px;background:#faf7ff;color:#372b52;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-coverage[hidden]{display:none!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-coverage-title{font-size:12px!important;color:#38265d!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-coverage-caption{font-size:11px!important;color:#665675!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-coverage-list{width:100%;display:flex;gap:5px;flex-wrap:wrap;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-review-pill{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:34px!important;min-height:30px!important;width:auto!important;padding:5px 7px!important;background:#fff!important;color:#592e9a!important;-webkit-text-fill-color:#592e9a!important;border:1px solid #ad89de!important;border-radius:6px!important;font-weight:850!important;font-size:12px!important;}\n      .orbit-vendor-floor-plan-dialog .orbit-v776-review-pill:hover{background:#f0e7ff!important;}\n      #vendorFloorPlanPreview.orbit-v776-one-picking{cursor:crosshair!important;}\n      #vendorFloorPlanPreview.orbit-v776-one-picking .orbit-vendor-table-marker{pointer-events:none!important;}\n      @media(max-width:680px){.orbit-vendor-floor-plan-dialog .orbit-v776-tool-group{flex:1 1 100%;}.orbit-vendor-floor-plan-dialog .orbit-v776-group-actions>button:not([hidden]){min-height:38px!important;height:38px!important;}}\n    `,document.head.appendChild(style)}function vendorPdfTextPositionsV774(items,viewport,pdfjs){const found=new Map;for(const item of items||[]){const content=String(item.str||\"\").trim();if(!/^\\d{1,3}(?:\\s+\\d{1,3})*$/.test(content))continue;const parts=content.split(/\\s+/),tx=pdfjs.Util.transform(viewport.transform,item.transform||[1,0,0,1,0,0]),angle=Math.atan2(tx[1],tx[0]),fontH=Math.max(5,Math.hypot(tx[2],tx[3])),textWidth=Math.max(fontH*.65*content.length,Number(item.width||0)*(viewport.scale||1));let before=0;for(const label of parts){const offset=(before+label.length/2)/Math.max(1,content.length)*textWidth,x=tx[4]+Math.cos(angle)*offset+Math.sin(angle)*fontH*.45,y=tx[5]+Math.sin(angle)*offset-Math.cos(angle)*fontH*.45,px=x/viewport.width*100,py=y/viewport.height*100;if(px>=0&&px<=100&&py>=0&&py<=100){const list=found.get(label)||[];list.push({x:px,y:py}),found.set(label,list)}before+=label.length+1}}return found}function vendorPdfCandidateV774(found,table2){const positions=found.get(String(table2.label||\"\").trim())||[];if(!positions.length)return null;const vertical=String(table2.orientation||\"\")===\"vertical\",candidates=positions.map(p2=>({...p2,dx:Math.abs(p2.x-Number(table2.x)),dy:Math.abs(p2.y-Number(table2.y))})).filter(p2=>p2.dx<=(vertical?6:3.5)&&p2.dy<=(vertical?4:9)).sort((a,b)=>a.dx*2+a.dy-(b.dx*2+b.dy));if(!candidates.length||candidates.length>1&&Math.abs(candidates[0].dx*2+candidates[0].dy-(candidates[1].dx*2+candidates[1].dy))<1)return null;const p=candidates[0];return Math.hypot(p.dx,p.dy)<.35?null:{x:p.x,y:p.y,source:\"PDF text\",confidence:.98}}async function vendorAlignmentPdfTargetsV774(draft){if(draft.sourceMimeType!==\"application/pdf\"||!draft.sourceDataUrl||!/^data:application\\/pdf;base64,/.test(draft.sourceDataUrl)||draft.trimMeta)return null;try{const pdfjs=await loadOrbitPdfJsV401(),encoded=draft.sourceDataUrl.split(\",\")[1],binary=atob(encoded),bytes=new Uint8Array(binary.length);for(let i=0;i<binary.length;i++)bytes[i]=binary.charCodeAt(i);const document2=await pdfjs.getDocument({data:bytes}).promise,page=await document2.getPage(Math.max(1,Number(draft.pageNumber||1))),base=page.getViewport({scale:1}),scale=Number(draft.width||0)/base.width||1,viewport=page.getViewport({scale});return vendorPdfTextPositionsV774((await page.getTextContent()).items,viewport,pdfjs)}catch(err){return console.warn(\"V774 PDF text alignment unavailable; image fallback retained\",err.message),null}}function vendorAlignmentStatusV774(message,kind=\"info\"){const banner=$2(\"vendorFloorAlignStatusV774\");banner&&(banner.hidden=!1,banner.className=\"orbit-info-banner \"+(kind===\"success\"?\"success\":kind===\"error\"?\"error\":\"info\"),banner.textContent=message)}function vendorAlignmentButtonsV774(){const preview=state.vendorAlignPreviewV774?.moves?.length>0;$2(\"vendorFloorApplyAlignV774\")&&($2(\"vendorFloorApplyAlignV774\").hidden=!preview),$2(\"vendorFloorDiscardAlignV774\")&&($2(\"vendorFloorDiscardAlignV774\").hidden=!preview),$2(\"vendorFloorUndoAlignV774\")&&($2(\"vendorFloorUndoAlignV774\").disabled=!state.vendorAlignUndoV774)}function renderVendorAlignmentGhostsV774(canvas,draft){const preview=state.vendorAlignPreviewV774;if(!preview||preview.id!==String(draft.id||\"\"))return;const byId=new Map((draft.tables||[]).map(t=>[String(t.id),t]));for(const move of preview.moves){const original=byId.get(String(move.id));if(!original)continue;const ghost=document.createElement(\"span\");ghost.className=\"orbit-vendor-table-marker detected orbit-v774-alignment-ghost\",ghost.title=\"Proposed table \"+original.label+\" \\xB7 \"+move.source,applyVendorTableGeometryV404(ghost,{...original,x:move.x,y:move.y},draft),ghost.innerHTML=\"<strong>\"+esc(original.label)+\"</strong>\",canvas.appendChild(ghost)}canvas.classList.add(\"orbit-v774-alignment-active\")}function vendorAlignmentScopeV774(raw){const text2=String(raw||\"\").trim();if(!text2)return null;const labels=new Set;for(const segment of text2.split(\",\")){const token=segment.trim(),match=token.match(/^(\\d{1,3})(?:\\s*-\\s*(\\d{1,3}))?$/);if(!match)throw new Error(\"Enter individual table numbers or ranges, e.g. 101-112, 130. Leave blank for all.\");const from=Number(match[1]),to=match[2]?Number(match[2]):from;if(to<from||to-from>500)throw new Error(\"Table number range is invalid or too long.\");for(let n=from;n<=to;n++)labels.add(String(n))}return labels}async function previewVendorFloorAlignmentV774(){const draft=floorPlanDraftV401(),button2=$2(\"vendorFloorAlignPreviewV774\");if(!draft.backgroundDataUrl||(draft.tables||[]).length===0)throw new Error(\"Open a saved venue floor plan with table positions first.\");const scope=vendorAlignmentScopeV774($2(\"vendorFloorAlignScopeV774\")?.value);if(state.vendorRowPickV775)throw new Error(\"Complete or cancel the two-click row calibration first.\");const combineWithPrior=!!(scope&&state.vendorAlignPreviewV774?.id===String(draft.id||\"\"));state.vendorAlignPreviewV774&&!combineWithPrior&&discardVendorFloorAlignmentV774(),button2&&(button2.disabled=!0),vendorAlignmentStatusV774(\"Analyzing saved PDF numbers and the underlying table artwork\\u2026\");try{const found=await vendorAlignmentPdfTargetsV774(draft),{img,width,height}=await imageDimensionsV401(draft.backgroundDataUrl),sample=document.createElement(\"canvas\"),scale=Math.min(1,1400/Math.max(width,height));sample.width=Math.max(1,Math.round(width*scale)),sample.height=Math.max(1,Math.round(height*scale));const ctx=sample.getContext(\"2d\",{willReadFrequently:!0});if(!ctx)throw new Error(\"Canvas analysis is unavailable in this browser.\");ctx.drawImage(img,0,0,sample.width,sample.height);const pixels=ctx.getImageData(0,0,sample.width,sample.height).data,moves=[],needs=[];let pdfCount=0,pixelCount=0,already=0,checked=0;const foundLabels=new Set;for(const table2 of draft.tables){if(scope&&!scope.has(String(table2.label||\"\").trim()))continue;checked++,foundLabels.add(String(table2.label||\"\").trim());const pdfMatch=found?vendorPdfCandidateV774(found,table2):null,review=vendorAlignmentReviewV776(pixels,sample.width,sample.height,table2,pdfMatch);if(review.status===\"already\"){already++;continue}if(review.status===\"review\"){needs.push({label:String(table2.label),reason:review.reason});continue}const proposed=review.proposed,dx=Math.abs(Number(proposed.x)-Number(table2.x)),dy=Math.abs(Number(proposed.y)-Number(table2.y));if(dx>9||dy>9||!Number.isFinite(dx+dy)){needs.push({label:String(table2.label),reason:\"Proposed movement exceeds the automatic safety limit\"});continue}moves.push({id:String(table2.id),label:String(table2.label),x:Number(proposed.x.toFixed(4)),y:Number(proposed.y.toFixed(4)),fromX:Number(table2.x),fromY:Number(table2.y),source:proposed.source,confidence:proposed.confidence}),proposed.source===\"PDF text\"?pdfCount++:pixelCount++}if(scope)for(const label of scope)foundLabels.has(label)||needs.push({label,reason:\"This table number does not exist on the selected floor plan\",missing:!0});const total=moves.length&&combineWithPrior?vendorMergeAlignmentPreviewV776(draft,moves,\"scoped auto alignment\"):moves.length;if(vendorAlignmentCoverageV776({checked,proposed:total||combineWithPrior&&state.vendorAlignPreviewV774?.moves?.length||0,already,needs}),!moves.length){combineWithPrior||(state.vendorAlignPreviewV774=null),vendorAlignmentButtonsV774(),vendorAlignmentStatusV774(\"No new automatic corrections. \"+already+\" already aligned; \"+needs.length+\" need review. Click a missed number below to place it in one click. Earlier purple proposals are preserved when checking a specific range. Nothing was saved.\",\"info\");return}combineWithPrior||(state.vendorAlignPreviewV774={id:String(draft.id||\"\"),moves,pdfCount,pixelCount,skipped:needs.length}),vendorAlignmentStatusV774(\"PREVIEW ONLY: \"+total+\" proposed corrections (\"+moves.length+\" in the current scope); \"+already+\" already aligned; \"+needs.length+\" need review. Use the missed-number buttons to add corrections WITHOUT losing purple proposals.\",\"info\"),vendorAlignmentButtonsV774(),await renderVendorFloorPlanPreviewV401()}finally{button2&&(button2.disabled=!1)}}function discardVendorFloorAlignmentV774(){cancelVendorSinglePickV776(!0),cancelVendorRowPickV775(!0),vendorAlignmentCoverageV776(null),state.vendorAlignPreviewV774=null,vendorAlignmentButtonsV774(),vendorAlignmentStatusV774(\"Alignment preview discarded. No table positions were changed.\"),renderVendorFloorPlanPreviewV401()}async function applyVendorFloorAlignmentV774(){const draft=floorPlanDraftV401(),preview=state.vendorAlignPreviewV774;if(!preview||preview.id!==String(draft.id||\"\")||!preview.moves.length||!confirm(\"Apply \"+preview.moves.length+` alignment corrections to this editor draft?\n\nTable numbers and IDs will not change. This will NOT reach live shows until you explicitly press Save floor plan.`))return;const byId=new Map((draft.tables||[]).map(t=>[String(t.id),t])),backup=preview.moves.map(m=>({id:m.id,x:byId.get(m.id)?.x,y:byId.get(m.id)?.y,manualGeometry:byId.get(m.id)?.manualGeometry,geometryVersion:byId.get(m.id)?.geometryVersion}));for(const move of preview.moves){const table2=byId.get(move.id);table2&&(table2.x=move.x,table2.y=move.y,table2.manualGeometry=!0,table2.geometryVersion=774)}state.vendorAlignUndoV774={id:String(draft.id||\"\"),backup},state.vendorAlignPreviewV774=null,vendorAlignmentButtonsV774(),vendorAlignmentStatusV774(backup.length+\" table positions adjusted in the draft. Review the map; use Undo alignment if needed. Press Save floor plan to update the Venue master and linked event previews.\",\"success\"),await renderVendorFloorPlanPreviewV401()}async function undoVendorFloorAlignmentV774(){const draft=floorPlanDraftV401(),undo=state.vendorAlignUndoV774;if(!undo||undo.id!==String(draft.id||\"\"))return;const byId=new Map((draft.tables||[]).map(t=>[String(t.id),t]));for(const prior of undo.backup){const table2=byId.get(prior.id);table2&&(table2.x=prior.x,table2.y=prior.y,table2.manualGeometry=prior.manualGeometry,table2.geometryVersion=prior.geometryVersion)}state.vendorAlignUndoV774=null,vendorAlignmentButtonsV774(),vendorAlignmentStatusV774(\"Alignment reverted in the editor draft. No saved positions were changed.\"),await renderVendorFloorPlanPreviewV401()}async function openPlannerAlignV774(){const room=activeVendorPlannerRoomV401();if(!room?.venuePlanId||!room?.venueId)throw new Error(\"Select a saved venue map for this event first.\");const venue=$2(\"vendorVenueId\");if(!venue)throw new Error(\"Venue editor is unavailable.\");venue.value=room.venueId,await openVendorFloorPlanEditorV401(room.venuePlanId),vendorAlignmentStatusV774(\"This is the reusable Venue master for \"+String(room.name||\"this room\")+\". Preview fixes before applying; saving updates the linked shows but preserves vendor assignments.\"),$2(\"vendorFloorAlignPreviewV774\")?.focus()}function selectedVendorFloorTableV411(){return(floorPlanDraftV401().tables||[]).find(x=>x.id===state.vendorFloorPlanSelectedTableId)||null}function syncVendorFloorTableInspectorV411(){const box=$2(\"vendorFloorTableInspector\"),t=selectedVendorFloorTableV411();box&&(box.hidden=!t,t&&($2(\"vendorFloorTableInspectorTitle\").textContent=\"Table \"+t.label,$2(\"vendorFloorTableX\").value=Number(t.x||0).toFixed(3),$2(\"vendorFloorTableY\").value=Number(t.y||0).toFixed(3),$2(\"vendorFloorTableWidth\").value=Number(t.widthPct||0).toFixed(3),$2(\"vendorFloorTableHeight\").value=Number(t.heightPct||0).toFixed(3),$2(\"vendorFloorTableAngle\").value=Number(t.angleDeg||0).toFixed(1)))}function updateSelectedVendorFloorTableV411(field,value){const t=selectedVendorFloorTableV411();if(!t)return;const n=Number(value);Number.isFinite(n)&&(field===\"x\"||field===\"y\"?t[field]=Math.max(0,Math.min(100,n)):field===\"widthPct\"||field===\"heightPct\"?t[field]=Math.max(.4,Math.min(20,n)):field===\"angleDeg\"&&(t[field]=Math.max(-180,Math.min(180,n))),t.manualGeometry=!0,t.geometryVersion=412,renderVendorFloorPlanPreviewV401())}function nudgeSelectedVendorFloorTableV411(dxPx,dyPx){const canvas=$2(\"vendorFloorPlanPreview\"),t=selectedVendorFloorTableV411();if(!canvas||!t)return;const rect=canvas.getBoundingClientRect(),display=transformVendorPointV401(t.x,t.y,floorPlanDraftV401()),next={x:display.x+dxPx/rect.width*100,y:display.y+dyPx/rect.height*100},base=inverseVendorPointV401(next.x,next.y,floorPlanDraftV401());t.x=Math.max(0,Math.min(100,base.x)),t.y=Math.max(0,Math.min(100,base.y)),t.manualGeometry=!0,t.geometryVersion=412,renderVendorFloorPlanPreviewV401()}async function renderVendorFloorPlanPreviewV401(){installVendorPlannerV773Style();const canvas=$2(\"vendorFloorPlanPreview\"),draft=floorPlanDraftV401();if(!canvas)return;if(!draft.backgroundDataUrl){canvas.innerHTML=\"<div class='orbit-vendor-plan-empty'>Floor plan preview</div>\",canvas.style.backgroundImage=\"none\",syncVendorFloorTableInspectorV411();return}(draft.sourceMimeType===\"application/pdf\"||draft.tables?.some(t=>t.geometryVersion))&&(draft.tables=inferVendorPdfTableGeometryV410(draft.tables||[],draft.width||0,draft.height||0).tables);const bg=await orientedVendorBackgroundV401(draft).catch(()=>draft.backgroundDataUrl),zoom=vendorFloorPlanEditorZoomV412();canvas.innerHTML=\"\",canvas.classList.remove(\"orbit-v774-alignment-active\"),canvas.classList.toggle(\"orbit-v775-picking\",!!state.vendorRowPickV775),canvas.classList.toggle(\"orbit-v776-one-picking\",!!state.vendorSinglePickV776),canvas.style.backgroundImage=\"url(\"+JSON.stringify(bg)+\")\",canvas.style.aspectRatio=draft._displayWidth&&draft._displayHeight?draft._displayWidth+\" / \"+draft._displayHeight:\"4 / 3\",canvas.style.transform=\"scale(\"+zoom+\")\",canvas.style.transformOrigin=\"top left\",canvas.style.width=100/zoom+\"%\",canvas.style.minHeight=\"0\",canvas.style.backgroundSize=\"100% 100%\",canvas.style.backgroundPosition=\"center\";const label=$2(\"vendorFloorPlanZoomLabel\");label&&(label.textContent=Math.round(zoom*100)+\"%\");for(const table2 of draft.tables||[]){const el=document.createElement(\"button\");el.type=\"button\",el.className=\"orbit-vendor-table-marker detected\"+(state.vendorFloorPlanSelectedTableId===table2.id?\" selected\":\"\"),el.dataset.floorTableId=table2.id,applyVendorTableGeometryV404(el,table2,draft),el.innerHTML=\"<strong>\"+esc(table2.label)+\"</strong>\",el.title=\"Click to edit \\xB7 drag precisely \\xB7 double-click to remove\",el.addEventListener(\"click\",e=>{e.stopPropagation(),state.vendorFloorPlanSelectedTableId!==table2.id&&(state.vendorFloorPlanSelectedTableId=table2.id,syncVendorFloorTableInspectorV411(),canvas.querySelectorAll(\".orbit-vendor-table-marker.selected\").forEach(x=>x.classList.remove(\"selected\")),el.classList.add(\"selected\"))}),el.addEventListener(\"pointerdown\",e=>{if(e.button!==0||state.vendorAlignPreviewV774)return;e.preventDefault(),e.stopPropagation(),state.vendorFloorPlanSelectedTableId=table2.id,syncVendorFloorTableInspectorV411(),canvas.querySelectorAll(\".orbit-vendor-table-marker.selected\").forEach(x=>x.classList.remove(\"selected\")),el.classList.add(\"selected\");const pointerId=e.pointerId,rect=canvas.getBoundingClientRect(),startPointer={x:e.clientX,y:e.clientY},startDisplay=transformVendorPointV401(table2.x,table2.y,draft);el.setPointerCapture?.(pointerId);const move=ev=>{const dx=(ev.clientX-startPointer.x)/rect.width*100,dy=(ev.clientY-startPointer.y)/rect.height*100,next={x:startDisplay.x+dx,y:startDisplay.y+dy},base=inverseVendorPointV401(next.x,next.y,draft);table2.x=Math.max(0,Math.min(100,base.x)),table2.y=Math.max(0,Math.min(100,base.y)),table2.manualGeometry=!0,table2.geometryVersion=412,applyVendorTableGeometryV404(el,table2,draft),syncVendorFloorTableInspectorV411()},up=()=>{el.removeEventListener(\"pointermove\",move),el.removeEventListener(\"pointerup\",up)};el.addEventListener(\"pointermove\",move),el.addEventListener(\"pointerup\",up,{once:!0})}),el.addEventListener(\"dblclick\",e=>{e.stopPropagation(),draft.tables=draft.tables.filter(x=>x.id!==table2.id),state.vendorFloorPlanSelectedTableId===table2.id&&(state.vendorFloorPlanSelectedTableId=null),renderVendorFloorPlanPreviewV401(),updateVendorFloorPlanDetectionV401()}),canvas.appendChild(el)}renderVendorAlignmentGhostsV774(canvas,draft),canvas.onclick=e=>{if(state.vendorAlignPreviewV774||!state.vendorFloorPlanAddMode)return;const rect=canvas.getBoundingClientRect(),display={x:(e.clientX-rect.left)/rect.width*100,y:(e.clientY-rect.top)/rect.height*100},base=inverseVendorPointV401(display.x,display.y,draft),tableLabel=prompt(\"Table number / label:\",String((draft.tables||[]).length+1));if(tableLabel){const template=vendorFloorPlanTableTemplateV413(),t={id:\"table-\"+Date.now().toString(36),label:String(tableLabel).trim(),x:base.x,y:base.y,orientation:\"horizontal\",widthPct:template.widthPct,heightPct:template.heightPct,angleDeg:template.angleDeg,manualGeometry:!0,geometryVersion:413};draft.tables.push(t),draft.tables.sort(tableLabelSortV401),state.vendorFloorPlanSelectedTableId=t.id,state.vendorFloorPlanAddMode=!1,$2(\"vendorFloorPlanAddTable\")?.classList.remove(\"active\"),renderVendorFloorPlanPreviewV401(),updateVendorFloorPlanDetectionV401()}},syncVendorFloorTableInspectorV411()}function updateVendorFloorPlanDetectionV401(){const target=$2(\"vendorFloorPlanDetectionStatus\"),draft=floorPlanDraftV401();if(!target)return;const count=(draft.tables||[]).length;target.className=\"orbit-info-banner \"+(count?\"success\":\"info\"),target.innerHTML=\"<strong>\"+(count?count+\" table positions ready\":\"No table positions detected yet\")+\"</strong><span>\"+(draft.sourceMimeType===\"application/pdf\"?\"PDF page \"+Number(draft.pageNumber||1)+(draft.totalPages>1?\" of \"+draft.totalPages:\"\")+\" \\xB7 drag a number to correct its position, double-click to remove, or add a missing table manually.\":\"Image plan \\xB7 add table positions manually by clicking Add table position, then clicking the map.\")+\"</span>\"}function vendorFloorPlanTrimSnapshotV694(draft){return{backgroundDataUrl:draft.backgroundDataUrl,width:Number(draft.width||0),height:Number(draft.height||0),tables:JSON.parse(JSON.stringify(draft.tables||[])),tableTemplate:draft.tableTemplate?{...draft.tableTemplate}:null,trimMeta:draft.trimMeta?{...draft.trimMeta}:null}}function vendorFloorPlanTrimTableBoundsV694(draft,width,height){const rows=Array.isArray(draft.tables)?draft.tables:[];if(!rows.length)return null;let left=width,top=height,right=0,bottom=0;for(const table2 of rows){const x=Number(table2.x||0)/100*width,y=Number(table2.y||0)/100*height,w=Math.max(1,Number(table2.widthPct||0)/100*width),h=Math.max(1,Number(table2.heightPct||0)/100*height);left=Math.min(left,x-w/2),top=Math.min(top,y-h/2),right=Math.max(right,x+w/2),bottom=Math.max(bottom,y+h/2)}return{left:Math.max(0,left),top:Math.max(0,top),right:Math.min(width,right),bottom:Math.min(height,bottom)}}function vendorFloorPlanRemapForCropV694(draft,bounds,width,height){const cropW=bounds.right-bounds.left,cropH=bounds.bottom-bounds.top;if(cropW<=0||cropH<=0)throw new Error(\"The floor plan crop area is invalid.\");const remap=table2=>({...table2,x:Math.max(0,Math.min(100,(Number(table2.x||0)/100*width-bounds.left)/cropW*100)),y:Math.max(0,Math.min(100,(Number(table2.y||0)/100*height-bounds.top)/cropH*100)),widthPct:Math.max(.4,Math.min(20,Number(table2.widthPct||0)*width/cropW)),heightPct:Math.max(.4,Math.min(20,Number(table2.heightPct||0)*height/cropH)),manualGeometry:!0,geometryVersion:694});return draft.tables=(draft.tables||[]).map(remap),draft.tableTemplate&&(draft.tableTemplate={...draft.tableTemplate,widthPct:Math.max(.4,Math.min(20,Number(draft.tableTemplate.widthPct||4.5)*width/cropW)),heightPct:Math.max(.4,Math.min(20,Number(draft.tableTemplate.heightPct||2.5)*height/cropH))}),{cropW,cropH}}async function trimVendorFloorPlanWhitespaceV694(button2){const draft=floorPlanDraftV401();if(!draft.backgroundDataUrl)throw new Error(\"Upload or open a floor plan before trimming it.\");setLoading(button2,!0);try{const{img,width,height}=await imageDimensionsV401(draft.backgroundDataUrl),scan=document.createElement(\"canvas\");scan.width=width,scan.height=height;const ctx=scan.getContext(\"2d\",{willReadFrequently:!0});ctx.drawImage(img,0,0,width,height);const pixels=ctx.getImageData(0,0,width,height).data;let left=width,top=height,right=-1,bottom=-1;const threshold=246;for(let y=0;y<height;y++)for(let x=0;x<width;x++){const i=(y*width+x)*4;if(pixels[i+3]<20)continue;const r=pixels[i],g=pixels[i+1],b=pixels[i+2];r>=threshold&&g>=threshold&&b>=threshold||(x<left&&(left=x),x>right&&(right=x),y<top&&(top=y),y>bottom&&(bottom=y))}if(right<left||bottom<top){setNotice2(\"No non-white floor plan content was found to trim.\",!0);return}const tableBounds=vendorFloorPlanTrimTableBoundsV694(draft,width,height);tableBounds&&(left=Math.min(left,Math.floor(tableBounds.left)),top=Math.min(top,Math.floor(tableBounds.top)),right=Math.max(right,Math.ceil(tableBounds.right)),bottom=Math.max(bottom,Math.ceil(tableBounds.bottom)));const padding=Math.max(10,Math.round(Math.min(width,height)*.012));left=Math.max(0,left-padding),top=Math.max(0,top-padding),right=Math.min(width-1,right+padding),bottom=Math.min(height-1,bottom+padding);const cropW=right-left+1,cropH=bottom-top+1;if((1-cropW*cropH/(width*height))*100<2){setNotice2(\"This floor plan is already tightly framed; no meaningful outer white space was removed.\");return}if(!confirm(`Trim the empty outer white space from this floor plan?\n\nOrbit will preserve every table position by recalculating its coordinates. This changes only the editor draft until you press Save floor plan.`))return;state.vendorFloorPlanTrimBackupV694=vendorFloorPlanTrimSnapshotV694(draft),!draft.sourceDataUrl&&/^image\\//i.test(String(draft.sourceMimeType||\"\"))&&(draft.sourceDataUrl=draft.backgroundDataUrl);const crop=document.createElement(\"canvas\");crop.width=cropW,crop.height=cropH,crop.getContext(\"2d\").drawImage(img,left,top,cropW,cropH,0,0,cropW,cropH);const remapped=vendorFloorPlanRemapForCropV694(draft,{left,top,right:right+1,bottom:bottom+1},width,height);draft.backgroundDataUrl=crop.toDataURL(\"image/png\"),draft.width=remapped.cropW,draft.height=remapped.cropH,draft._orientedKey=null,draft._orientedDataUrl=null,draft.trimMeta={trimmedAt:new Date().toISOString(),sourceWidth:width,sourceHeight:height,left,top,right,bottom,width:cropW,height:cropH};const undo=$2(\"vendorFloorPlanUndoTrimV694\");undo&&(undo.disabled=!1),await renderVendorFloorPlanPreviewV401(),updateVendorFloorPlanDetectionV401(),setNotice2(\"White space trimmed from the draft. Table positions were preserved. Press Save floor plan to keep it, or Undo trim to revert.\")}finally{setLoading(button2,!1)}}async function undoVendorFloorPlanTrimV694(){const draft=floorPlanDraftV401(),backup=state.vendorFloorPlanTrimBackupV694;if(!backup){setNotice2(\"There is no unsaved trim to undo.\");return}Object.assign(draft,backup,{_orientedKey:null,_orientedDataUrl:null}),state.vendorFloorPlanTrimBackupV694=null;const undo=$2(\"vendorFloorPlanUndoTrimV694\");undo&&(undo.disabled=!0),await renderVendorFloorPlanPreviewV401(),updateVendorFloorPlanDetectionV401(),setNotice2(\"Unsaved floor plan trim undone.\")}async function openVendorFloorPlanEditorV401(id=null){ensureVendorAlignmentControlsV774(),cancelVendorSinglePickV776(!0),cancelVendorRowPickV775(!0),vendorAlignmentCoverageV776(null),state.vendorAlignPreviewV774=null,state.vendorAlignUndoV774=null,vendorAlignmentButtonsV774();const status=$2(\"vendorFloorAlignStatusV774\");status&&(status.hidden=!0);const venueId=$2(\"vendorVenueId\")?.value;if(!venueId)throw new Error(\"Save the venue before adding floor plans.\");state.vendorFloorPlanAddMode=!1,state.vendorFloorPlanTrimBackupV694=null;const undoTrim=$2(\"vendorFloorPlanUndoTrimV694\");undoTrim&&(undoTrim.disabled=!0);let draft={id:\"\",venueId,name:\"\",roomName:\"\",pageNumber:1,tables:[],rotation:0,flipX:!1,flipY:!1};id&&(draft={...(await api(\"/api/admin/vendors/venue-floor-plans/\"+encodeURIComponent(id))).floorPlan}),state.vendorFloorPlanDraft=draft,state.vendorFloorPlanEditorZoom=1;const templateStatus=$2(\"vendorFloorPlanTemplateStatus\");templateStatus&&(templateStatus.textContent=draft.tableTemplate?\"Locked size: \"+Number(draft.tableTemplate.widthPct).toFixed(2)+\"% \\xD7 \"+Number(draft.tableTemplate.heightPct).toFixed(2)+\"% \\xB7 \"+Number(draft.tableTemplate.angleDeg||0)+\"\\xB0\":\"No table size locked yet.\"),$2(\"vendorFloorPlanId\").value=draft.id||\"\",$2(\"vendorFloorPlanVenueId\").value=venueId,$2(\"vendorFloorPlanName\").value=draft.name||\"\",$2(\"vendorFloorPlanRoom\").value=draft.roomName||\"\",$2(\"vendorFloorPlanPage\").value=Number(draft.pageNumber||1),$2(\"vendorFloorPlanFile\").value=\"\",$2(\"vendorFloorPlanDialogTitle\").textContent=id?\"Edit \"+(draft.name||\"floor plan\"):\"Add floor plan\",$2(\"vendorFloorPlanResult\").hidden=!0,$2(\"vendorFloorPlanDialog\")?.showModal(),await renderVendorFloorPlanPreviewV401(),updateVendorFloorPlanDetectionV401()}async function vendorFloorPlanFileChangedV401(file){if(!file)return;state.vendorFloorPlanTrimBackupV694=null;const undoTrim=$2(\"vendorFloorPlanUndoTrimV694\");undoTrim&&(undoTrim.disabled=!0);const status=$2(\"vendorFloorPlanDetectionStatus\");status&&(status.className=\"orbit-info-banner info\",status.innerHTML=\"<strong>Processing \"+esc(file.name)+\"\\u2026</strong><span>Rendering the map and looking for numbered table positions.</span>\");const imported=await processVendorFloorPlanFileV401(file,Number($2(\"vendorFloorPlanPage\")?.value||1)),draft=floorPlanDraftV401();Object.assign(draft,imported,{rotation:0,flipX:!1,flipY:!1,_orientedKey:null}),$2(\"vendorFloorPlanName\").value||($2(\"vendorFloorPlanName\").value=file.name.replace(/\\.pdf$/i,\"\").replace(/\\.[a-z0-9]+$/i,\"\")),await renderVendorFloorPlanPreviewV401(),updateVendorFloorPlanDetectionV401()}function transformFloorPlanDraftV401(action){const d=floorPlanDraftV401();action===\"rotate-left\"?d.rotation=(Number(d.rotation||0)+270)%360:action===\"rotate-right\"?d.rotation=(Number(d.rotation||0)+90)%360:action===\"flip-x\"?d.flipX=!d.flipX:action===\"flip-y\"?d.flipY=!d.flipY:action===\"reset\"&&(d.rotation=0,d.flipX=!1,d.flipY=!1),d._orientedKey=null,renderVendorFloorPlanPreviewV401()}async function saveVendorFloorPlanV401(button2){if(state.vendorSinglePickV776||state.vendorRowPickV775)throw new Error(\"Finish or cancel the alignment clicks before saving.\");if(state.vendorAlignPreviewV774?.moves?.length)throw new Error(\"Apply or discard the alignment preview before saving.\");const draft=floorPlanDraftV401(),venueId=$2(\"vendorFloorPlanVenueId\").value,name=$2(\"vendorFloorPlanName\").value.trim();if(!draft.backgroundDataUrl)throw new Error(\"Upload a PDF or image floor plan first.\");if(!name)throw new Error(\"Give this floor plan a name.\");setLoading(button2,!0);try{const payload={id:$2(\"vendorFloorPlanId\").value,venueId,name,roomName:$2(\"vendorFloorPlanRoom\").value,pageNumber:Number(draft.pageNumber||1),sourceFileName:draft.sourceFileName,sourceMimeType:draft.sourceMimeType,sourceDataUrl:draft.sourceDataUrl,backgroundDataUrl:draft.backgroundDataUrl,width:draft.width,height:draft.height,rotation:Number(draft.rotation||0),flipX:!!draft.flipX,flipY:!!draft.flipY,tableTemplate:draft.tableTemplate||null,tables:draft.tables||[],detectedCount:Number(draft.detectedCount||draft.tables?.length||0),trimMeta:draft.trimMeta||null},result=await api(\"/api/admin/vendors/venue-floor-plans\",{method:\"POST\",body:JSON.stringify(payload),timeoutMs:45e3});if($2(\"vendorFloorPlanResult\").hidden=!1,$2(\"vendorFloorPlanResult\").textContent=\"Floor plan saved with \"+Number(result.floorPlan?.tables?.length||0)+\" table positions.\",await loadVendorFloorPlansV401(),populateVendorFloorPlanSelectV401(),renderVendorVenueFloorPlansV401(venueId),state.vendorAlignUndoV774=null,state.vendorAlignPreviewV774=null,vendorAlignmentCoverageV776(null),vendorAlignmentButtonsV774(),payload.id&&state.currentVendorEvent?.key&&(state.vendorTablePlan?.rooms||[]).some(room=>room.venuePlanId===payload.id))try{const fresh=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(state.currentVendorEvent.key)+\"/table-plan\",{cacheMs:0});fresh.tablePlan&&(state.vendorTablePlan=fresh.tablePlan,await renderVendorTablePlanV398())}catch(err){setNotice2(\"Venue map saved. Reload Table Plan to view the updated positions: \"+(err.message||err),!0)}return setTimeout(()=>$2(\"vendorFloorPlanDialog\")?.close(),500),result}finally{setLoading(button2,!1)}}async function deleteVendorFloorPlanV401(id){confirm(\"Remove this saved venue floor plan? Existing event allocations already copied into events are preserved.\")&&(await api(\"/api/admin/vendors/venue-floor-plans/\"+encodeURIComponent(id),{method:\"DELETE\"}),await loadVendorFloorPlansV401(),populateVendorFloorPlanSelectV401(),renderVendorVenueFloorPlansV401($2(\"vendorVenueId\")?.value||\"\"),setNotice2(\"Venue floor plan removed.\"))}let vendorActionBusyV639=!1;function vendorRequestIdV639(){return globalThis.crypto?.randomUUID?.()||\"v639-\"+Date.now()+\"-\"+Math.random().toString(36).slice(2)}function vendorSavedActionV639(key,value){try{const k=\"orbit-v639-admin-action:\"+key;if(arguments.length===1)return JSON.parse(sessionStorage.getItem(k)||\"null\");if(value===null)return sessionStorage.removeItem(k),!0;const encoded=JSON.stringify(value);return sessionStorage.setItem(k,encoded),sessionStorage.getItem(k)===encoded}catch{return arguments.length===1?null:!1}}function vendorManagedButtonsV639(b){const id=b.vendorClubBookingId||b.id;return id?'<div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-vendor-booking-action-v639=\"cancel\" data-booking-id=\"'+esc(id)+'\">Cancel / return</button><button type=\"button\" class=\"secondary\" data-vendor-booking-action-v639=\"transfer\" data-booking-id=\"'+esc(id)+'\">Transfer</button><button type=\"button\" class=\"secondary\" data-vendor-booking-action-v639=\"details\" data-booking-id=\"'+esc(id)+'\">History &amp; status</button></div>':\"\"}function vendorCreditPanelV639(key,balance,rows,clubData){const reserved=(rows||[]).reduce((n,r)=>n+Number(r.reservedAmount||0),0),history2=clubData?.creditHistory||[];return'<section class=\"orbit-vendor-credit-panel-v493\"><p class=\"orbit-kicker\">Vendor Account Credit</p><h4>'+esc(vendorMoneyV384(balance))+' available</h4><p class=\"orbit-muted\">'+(reserved>0?esc(vendorMoneyV384(reserved))+\" is reserved for pending checkout. \":\"\")+'Credit can pay for Vendor Club tables. Admin adjustments are audited; adding credit does not take a payment or change table stock.</p><div class=\"orbit-action-row\"><button type=\"button\" data-vendor-credit-action-v639=\"add\" data-customer-key=\"'+esc(key)+'\">Add Account Credit</button><button type=\"button\" class=\"secondary\" data-vendor-credit-action-v639=\"deduct\" data-customer-key=\"'+esc(key)+'\">Deduct Account Credit</button><button type=\"button\" class=\"secondary\" data-vendor-credit-action-v639=\"history\" data-customer-key=\"'+esc(key)+'\">Credit history &amp; adjustments</button></div><details class=\"orbit-vendor-credit-history-v639\"><summary>Booking credit activity ('+history2.length+\")</summary>\"+(history2.length?'<div class=\"orbit-table-wrap\"><table><thead><tr><th>When</th><th>Amount</th><th>Activity</th></tr></thead><tbody>'+history2.slice(0,100).map(x=>\"<tr><td>\"+esc(prettyDate(x.createdAt))+\"</td><td>\"+esc(vendorMoneyV384(x.amount))+\"</td><td>\"+esc(x.reason||x.activity)+\"</td></tr>\").join(\"\")+\"</tbody></table></div>\":\"<p>No credit activity yet.</p>\")+\"</details></section>\"}function vendorActionDialogV639(title){if(vendorActionBusyV639)return null;const old=$2(\"vendorActionDialogV639\");old&&(old.close(),old.remove());const d=document.createElement(\"dialog\");return d.id=\"vendorActionDialogV639\",d.className=\"orbit-vendor-action-dialog-v639\",d.setAttribute(\"aria-labelledby\",\"vendorActionTitleV639\"),d.innerHTML='<div class=\"orbit-vendor-action-header-v639\"><div><p class=\"orbit-kicker\">Vendor booking management</p><h2 id=\"vendorActionTitleV639\" tabindex=\"-1\">'+esc(title)+'</h2></div><button type=\"button\" class=\"secondary\" data-close-v639 aria-label=\"Close booking management\">\\xD7</button></div><div id=\"vendorActionBodyV639\"><p role=\"status\">Loading the current account\\u2026</p></div><div id=\"vendorActionStatusV639\" class=\"orbit-vendor-action-status-v639\" role=\"status\" aria-live=\"polite\" hidden></div>',document.body.appendChild(d),d.querySelector(\"[data-close-v639]\").addEventListener(\"click\",()=>{vendorActionBusyV639||d.close()}),d.addEventListener(\"cancel\",e=>{vendorActionBusyV639&&e.preventDefault()}),d.showModal(),d}function vendorActionStatusV639(message,kind=\"info\"){const box=$2(\"vendorActionStatusV639\");box&&(box.hidden=!1,box.dataset.kind=kind,box.textContent=message,box.scrollIntoView({block:\"nearest\",behavior:\"instant\"}))}function vendorActionBusyStateV639(busy){vendorActionBusyV639=busy;const d=$2(\"vendorActionDialogV639\");d&&(d.setAttribute(\"aria-busy\",busy?\"true\":\"false\"),d.querySelectorAll(\"button,input,textarea,select\").forEach(e=>{busy?(e.dataset.wasDisabledV639=e.disabled?\"1\":\"0\",e.disabled=!0):e.dataset.wasDisabledV639!=null&&(e.disabled=e.dataset.wasDisabledV639===\"1\",delete e.dataset.wasDisabledV639)}))}async function vendorRefreshAfterActionV639(key){try{key&&state.currentVendorCustomerKey===key&&await viewVendorCustomerV398(key)}catch{}}async function openVendorCreditV639(key,direction=\"add\"){const d=vendorActionDialogV639(direction===\"history\"?\"Account Credit history\":direction===\"deduct\"?\"Deduct Account Credit\":\"Add Account Credit\");if(d)try{const snapshot=await api(\"/api/admin/vendors/club/vendors/\"+encodeURIComponent(key)+\"/account-credit\",{cacheMs:0});if(!d.isConnected)return;const savedKey=\"credit:\"+key;let saved=vendorSavedActionV639(savedKey);saved&&direction!==\"history\"&&(direction=saved.direction);const ledger=snapshot.ledger||[],box=$2(\"vendorActionBodyV639\");if(box.innerHTML='<div class=\"orbit-vendor-action-summary-v639\"><span><small>Available</small><strong>'+esc(vendorMoneyV384(snapshot.availableBalance))+\"</strong></span><span><small>Reserved for checkout</small><strong>\"+esc(vendorMoneyV384(snapshot.reservedBalance))+\"</strong></span></div>\"+(direction===\"history\"?'<p>This immutable journal records manual adjustments and booking-credit returns. Booking usage remains visible in the account activity.</p><div class=\"orbit-table-wrap\"><table><thead><tr><th>When</th><th>Change</th><th>Available after</th><th>Reason / reference / operator</th></tr></thead><tbody>'+ledger.map(x=>\"<tr><td>\"+esc(prettyDate(x.createdAt))+\"</td><td>\"+esc(vendorMoneyV384(x.deltaAmount))+\"</td><td>\"+esc(vendorMoneyV384(x.availableAfter))+\"</td><td>\"+esc(x.reason)+\"<small>\"+esc(x.reference||\"\")+\" \\xB7 \"+esc(x.actorId||\"System\")+\"</small></td></tr>\").join(\"\")+\"</tbody></table></div>\":'<p><strong>This changes real spendable Account Credit.</strong> It is not a bank payment, a cash refund or a table booking. Reserved credit cannot be deducted.</p><form id=\"vendorCreditFormV639\"><label>Amount in \\xA3<input id=\"vendorCreditAmountV639\" name=\"amount\" type=\"text\" inputmode=\"decimal\" required maxlength=\"10\" placeholder=\"30.00\"></label><label>Reason (required)<textarea id=\"vendorCreditReasonV639\" name=\"reason\" required maxlength=\"1000\" rows=\"3\"></textarea></label><label>Reference (optional)<input id=\"vendorCreditReferenceV639\" name=\"reference\" maxlength=\"250\" placeholder=\"For example: approved test credit\"></label><label class=\"orbit-vendor-confirm-v639\"><input type=\"checkbox\" id=\"vendorCreditConfirmV639\" required> I confirm this '+(direction===\"deduct\"?\"deduction from\":\"addition to\")+' the vendor\\u2019s real Account Credit.</label><button type=\"submit\" id=\"vendorCreditSaveV639\">'+(saved?\"Check / retry original adjustment\":direction===\"deduct\"?\"Confirm credit deduction\":\"Confirm credit addition\")+\"</button></form>\"),direction===\"history\"){ledger.length||box.insertAdjacentHTML(\"beforeend\",\"<p>No manual adjustments or booking returns yet.</p>\");return}if(saved){$2(\"vendorCreditAmountV639\").value=saved.amount,$2(\"vendorCreditReasonV639\").value=saved.reason,$2(\"vendorCreditReferenceV639\").value=saved.reference||\"\";for(const id of[\"vendorCreditAmountV639\",\"vendorCreditReasonV639\",\"vendorCreditReferenceV639\"])$2(id).readOnly=!0;vendorActionStatusV639(\"An earlier adjustment has a saved request. Checking it will recover that exact change, not create a second one.\")}$2(\"vendorCreditFormV639\").addEventListener(\"submit\",async e=>{if(e.preventDefault(),vendorActionBusyV639||!e.target.reportValidity())return;const payload=saved||{direction,amount:$2(\"vendorCreditAmountV639\").value.trim(),reason:$2(\"vendorCreditReasonV639\").value.trim(),reference:$2(\"vendorCreditReferenceV639\").value.trim(),requestId:vendorRequestIdV639(),confirmed:!0};if(payload.confirmed=!0,!vendorSavedActionV639(savedKey,payload)){vendorActionStatusV639(\"Enable browser session storage before changing real funds or bookings. No request was sent.\",\"error\");return}saved=payload,vendorActionBusyStateV639(!0),vendorActionStatusV639(\"Saving the confirmed adjustment\\u2026\");try{const r=await api(\"/api/admin/vendors/club/vendors/\"+encodeURIComponent(key)+\"/account-credit/adjust\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0});vendorSavedActionV639(savedKey,null),box.innerHTML='<div class=\"orbit-vendor-action-success-v639\"><h3>Account Credit updated</h3><p>'+esc(r.message)+\"</p><p><strong>\"+esc(vendorMoneyV384(r.entry.availableAfter))+\" available after this adjustment</strong></p><p>Reference: \"+esc(r.entry.requestId)+'</p><button type=\"button\" data-credit-done-v639>Done</button></div>',box.querySelector(\"[data-credit-done-v639]\").onclick=()=>d.close(),vendorActionStatusV639(\"Saved once with the operator, reason and reference.\",\"success\"),await vendorRefreshAfterActionV639(key)}catch(error){const terminal=error.data?.terminal===!0;if(terminal){vendorSavedActionV639(savedKey,null),saved=null;for(const id of[\"vendorCreditAmountV639\",\"vendorCreditReasonV639\",\"vendorCreditReferenceV639\"])$2(id).readOnly=!1}else{for(const id of[\"vendorCreditAmountV639\",\"vendorCreditReasonV639\",\"vendorCreditReferenceV639\"])$2(id).readOnly=!0;$2(\"vendorCreditSaveV639\").textContent=\"Check / retry original adjustment\"}vendorActionStatusV639((error.message||\"The adjustment could not be confirmed.\")+(terminal?\"\":\" The original request is saved. Close and reopen this control to check it; do not create another adjustment.\"),\"error\")}finally{vendorActionBusyStateV639(!1)}})}catch(error){vendorActionStatusV639(error.message,\"error\")}}async function openVendorBookingV639(bookingId,action=\"details\"){const d=vendorActionDialogV639(action===\"transfer\"?\"Transfer Vendor Club booking\":action===\"cancel\"?\"Cancel booking / return funds\":\"Booking history & status\");if(d)try{const detail=await api(\"/api/admin/vendors/club/bookings/\"+encodeURIComponent(bookingId)+(action===\"transfer\"?\"?destinations=1\":\"\"),{cacheMs:0});if(!d.isConnected)return;const b=detail.booking,key=b.canonicalVendorId,box=$2(\"vendorActionBodyV639\"),unit=b.funding===\"points\"?\" Vendor Points\":\" Account Credit\",funds=b.funding===\"points\"?String(b.fundedValue)+\" points\":vendorMoneyV384(b.fundedValue),savedKey=\"booking:\"+bookingId,summary='<div class=\"orbit-vendor-action-booking-v639\"><strong>'+esc(b.eventName)+\"</strong><span>\"+esc(prettyDate(b.eventDate))+\"</span><span>\"+b.quantity+\" table\"+(b.quantity===1?\"\":\"s\")+\" \\xB7 \"+esc(funds)+\"</span><small>Booking reference: \"+esc(b.id)+\"</small></div>\";box.innerHTML=summary;const pendingOp=(detail.operations||[]).find(o=>o.retryable);if(b.operationId||pendingOp){const op=b.operationId||pendingOp.id;box.insertAdjacentHTML(\"beforeend\",'<p>A saved transfer is still being reconciled. Do not cancel or start another transfer until it has finished.</p><button type=\"button\" id=\"vendorResumeTransferV639\">Check original transfer</button>'),$2(\"vendorResumeTransferV639\").onclick=async()=>{if(!vendorActionBusyV639){vendorActionBusyStateV639(!0);try{const r=await api(\"/api/admin/vendors/club/booking-operations/\"+encodeURIComponent(op)+\"/resume\",{method:\"POST\",body:\"{}\",cacheMs:0});vendorActionStatusV639(r.message,r.completed?\"success\":\"info\"),(r.completed||r.operation?.status===\"aborted\")&&(vendorSavedActionV639(savedKey,null),box.querySelector(\"#vendorResumeTransferV639\")?.remove(),await vendorRefreshAfterActionV639(key))}catch(error){vendorActionStatusV639(error.message,\"error\")}finally{vendorActionBusyStateV639(!1)}}};return}if(action===\"details\"){box.insertAdjacentHTML(\"beforeend\",\"<p><strong>Status: \"+(b.active?\"Active\":b.stockRestored?\"Cancelled; stock returned\":\"Cancelled; stock return pending\")+\"</strong></p><p>Available: \"+Number(detail.pointsBalance)+\" points \\xB7 \"+esc(vendorMoneyV384(detail.credit.availableBalance))+\" Account Credit</p><h3>Transfer history</h3>\"+((b.transferHistory||[]).length?\"<ul>\"+b.transferHistory.map(x=>\"<li>\"+esc(x.fromEventName)+\" \\u2192 \"+esc(x.toEventName)+\"<br>\"+esc(prettyDate(x.at))+\" \\xB7 \"+esc(x.reason)+\" \\xB7 \"+esc(x.actorId)+\"</li>\").join(\"\")+\"</ul>\":\"<p>No transfers recorded.</p>\")+'<div class=\"orbit-action-row\"><button type=\"button\" data-open-cancel-v639>Cancel / return</button></div>'),box.querySelector(\"[data-open-cancel-v639]\").onclick=()=>openVendorBookingV639(bookingId,\"cancel\");return}if(action===\"transfer\"&&!b.active){vendorActionStatusV639(\"Cancelled bookings cannot be transferred.\",\"error\");return}let saved=vendorSavedActionV639(savedKey);if(saved&&saved.action!==action){vendorActionStatusV639(\"A different action is saved for this booking. Reopen its \"+saved.action+\" control to check the original request.\",\"error\");return}let quote=null;box.insertAdjacentHTML(\"beforeend\",'<form id=\"vendorBookingFormV639\">'+(action===\"transfer\"?'<label>Destination show<select id=\"vendorTransferTargetV639\" required><option value=\"\">Choose the destination</option>'+(detail.destinations||[]).map(e=>'<option value=\"'+esc(e.eventKey)+'\">'+esc(e.eventName)+\" \\xB7 \"+esc(prettyDate(e.eventDate))+\"</option>\").join(\"\")+'</select></label><button type=\"button\" class=\"secondary\" id=\"vendorTransferPreviewV639\">Preview stock &amp; funding difference</button><div id=\"vendorTransferQuoteV639\" hidden></div>':\"<p>This cancels the booking and returns its Shopify table stock. Choose separately whether its \"+esc(unit.trim())+' should be returned.</p><label class=\"orbit-vendor-confirm-v639\"><input id=\"vendorReturnFundsV639\" type=\"checkbox\" checked> Return '+esc(funds)+\" to this vendor</label>\")+'<label>Reason (required)<textarea id=\"vendorBookingReasonV639\" required maxlength=\"1000\" rows=\"3\"></textarea></label><label class=\"orbit-vendor-confirm-v639\"><input id=\"vendorBookingConfirmV639\" type=\"checkbox\" required> I approve this change to the real booking, stock and the funding shown above.</label><button id=\"vendorBookingSaveV639\" type=\"submit\" '+(action===\"transfer\"?\"disabled\":\"\")+\">\"+(action===\"transfer\"?\"Confirm transfer\":\"Confirm cancellation\")+\"</button></form>\");async function preview(){if(!vendorActionBusyV639){vendorActionBusyStateV639(!0);try{quote=(await api(\"/api/admin/vendors/club/bookings/\"+encodeURIComponent(bookingId)+\"/transfer-preview\",{method:\"POST\",body:JSON.stringify({targetEventKey:$2(\"vendorTransferTargetV639\").value}),cacheMs:0})).quote;const q=$2(\"vendorTransferQuoteV639\");q.hidden=!1;const diff=Number(quote.difference),label=b.funding===\"points\"?Math.abs(diff)+\" points\":vendorMoneyV384(Math.abs(diff));q.innerHTML=\"<strong>\"+esc(quote.eventName)+\"</strong><p>\"+Number(quote.quantity)+\" table\"+(quote.quantity===1?\"\":\"s\")+\" \\xB7 \"+(b.funding===\"points\"?Number(quote.total)+\" points\":esc(vendorMoneyV384(quote.total)))+\"</p><p>\"+esc(diff>0?label+\" extra will be deducted from the available balance.\":diff<0?label+\" will be returned to the same funding balance.\":\"No points or credit difference.\")+\"</p><p>The destination stock is checked again before the move. The original booking remains protected until the destination is reserved.</p>\",$2(\"vendorBookingSaveV639\").dataset.wasDisabledV639=\"0\",vendorActionStatusV639(\"Review the destination and funding, then confirm.\")}catch(error){quote=null,vendorActionStatusV639(error.message,\"error\")}finally{vendorActionBusyStateV639(!1)}}}action===\"transfer\"&&($2(\"vendorTransferPreviewV639\").onclick=preview,$2(\"vendorTransferTargetV639\").onchange=()=>{quote=null,$2(\"vendorTransferQuoteV639\").hidden=!0,$2(\"vendorBookingConfirmV639\").checked=!1,$2(\"vendorBookingSaveV639\").disabled=!0}),saved&&($2(\"vendorBookingReasonV639\").value=saved.reason,$2(\"vendorBookingReasonV639\").readOnly=!0,action===\"cancel\"?($2(\"vendorReturnFundsV639\").checked=saved.returnValue,$2(\"vendorReturnFundsV639\").disabled=!0):($2(\"vendorTransferTargetV639\").value=saved.targetEventKey,$2(\"vendorTransferTargetV639\").disabled=!0,$2(\"vendorTransferPreviewV639\").disabled=!0,quote={quoteFingerprint:saved.quoteFingerprint},$2(\"vendorBookingSaveV639\").disabled=!1),$2(\"vendorBookingSaveV639\").textContent=\"Check / retry original \"+action,vendorActionStatusV639(\"An earlier request is saved. This checks the same change without duplicating it.\")),$2(\"vendorBookingFormV639\").addEventListener(\"submit\",async e=>{if(e.preventDefault(),vendorActionBusyV639||!e.target.reportValidity()||action===\"transfer\"&&!quote)return;const payload=saved||{action,requestId:vendorRequestIdV639(),reason:$2(\"vendorBookingReasonV639\").value.trim(),confirmed:!0,...action===\"cancel\"?{returnValue:$2(\"vendorReturnFundsV639\").checked}:{targetEventKey:$2(\"vendorTransferTargetV639\").value,quoteFingerprint:quote.quoteFingerprint}};if(payload.confirmed=!0,!vendorSavedActionV639(savedKey,payload)){vendorActionStatusV639(\"Enable browser session storage before changing real funds or bookings. No request was sent.\",\"error\");return}saved=payload,vendorActionBusyStateV639(!0),vendorActionStatusV639(action===\"transfer\"?\"Reserving the destination and reconciling the original booking\\u2026\":\"Cancelling the booking and verifying the stock return\\u2026\");try{const r=await api(\"/api/admin/vendors/club/bookings/\"+encodeURIComponent(bookingId)+\"/\"+action,{method:\"POST\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:9e4});r.completed?(vendorSavedActionV639(savedKey,null),box.innerHTML=summary+'<div class=\"orbit-vendor-action-success-v639\"><h3>'+(action===\"transfer\"?\"Booking transferred\":\"Booking cancelled\")+\"</h3><p>\"+esc(r.message)+\"</p>\"+(action===\"cancel\"?\"<p>\"+(payload.returnValue?\"Return of \"+esc(funds)+\" recorded once.\":\"No points or Account Credit returned.\")+\"</p>\":\"\")+'<button type=\"button\" data-booking-done-v639>Done</button></div>',box.querySelector(\"[data-booking-done-v639]\").onclick=()=>d.close(),vendorActionStatusV639(\"Complete. The booking and stock are reconciled.\",\"success\"),await vendorRefreshAfterActionV639(key)):(vendorActionStatusV639(r.message||\"The original change is still being verified.\",\"info\"),$2(\"vendorBookingSaveV639\").textContent=\"Check original \"+action)}catch(error){error.data?.terminal===!0&&(vendorSavedActionV639(savedKey,null),saved=null),vendorActionStatusV639(error.message+(error.data?.terminal===!0?\"\":\" The request is saved; check the original change rather than starting another.\"),\"error\"),$2(\"vendorBookingSaveV639\").textContent=error.data?.terminal===!0?\"Review and try again\":\"Check original \"+action}finally{vendorActionBusyStateV639(!1)}})}catch(error){vendorActionStatusV639(error.message,\"error\")}}document.addEventListener(\"click\",event=>{const credit=event.target.closest(\"[data-vendor-credit-action-v639]\"),booking=event.target.closest(\"[data-vendor-booking-action-v639]\");credit&&(event.preventDefault(),openVendorCreditV639(credit.dataset.customerKey,credit.dataset.vendorCreditActionV639)),booking&&(event.preventDefault(),openVendorBookingV639(booking.dataset.bookingId,booking.dataset.vendorBookingActionV639))});async function viewVendorCustomerV398(key){const dialog=$2(\"vendorCustomerDetailDialog\"),title=$2(\"vendorCustomerDetailTitle\"),body=$2(\"vendorCustomerDetailBody\");if(!(!dialog||!body)){title.textContent=\"Loading vendor\\u2026\",body.innerHTML=\"<p class='orbit-muted'>Loading complete customer history\\u2026</p>\",dialog.open||dialog.showModal();try{const[data,clubData]=await Promise.all([api(\"/api/admin/vendors/customers/\"+encodeURIComponent(key),{cacheMs:0}),api(\"/api/admin/vendors/club/vendors/\"+encodeURIComponent(key),{cacheMs:0}).catch(()=>null)]),c=data.customer||{},bookings=data.bookings||[],comms=data.communications||[],notes=data.notes||[],accountCredits=data.accountCredits||[],accountCreditBalance=Number(data.accountCreditBalance||0);title.textContent=c.name||\"Unknown vendor\",state.currentVendorCustomerKey=key,state.currentVendorCustomerProfile={...c},state.currentVendorClubData=clubData;const aliasEmails=[...new Set([...c.emails||[],c.email].filter(Boolean))],bookingRows=bookings.map(b=>\"<tr><td>\"+esc(b.event?.label||\"\\u2014\")+\"</td><td>\"+esc(b.orderName||b.type||\"\\u2014\")+\"</td><td>\"+esc(vendorLineLabel(b))+\"</td><td>\"+Number(b.quantity||b.displayCases||b.lineQuantity||0)+\"</td><td>\"+esc(vendorMoneyV384(b.sales))+\"</td><td>\"+vendorBookingActionButtonsV398(b)+\"</td></tr>\").join(\"\"),commRows=comms.map(x=>{const resend=x.type===\"vendor_event_details\"&&x.meta?.vendorEventKey?\"<button type='button' class='secondary' data-vendor-resend-details='\"+esc(x.meta.vendorEventKey)+\"' data-customer-key='\"+esc(key)+\"'>Resend</button>\":\"\";return\"<tr><td>\"+esc(prettyDate(x.createdAt))+\"</td><td>\"+esc(x.subject||x.type||\"Email\")+\"</td><td>\"+esc(x.to||\"\")+\"</td><td><span class='orbit-status-pill \"+(x.status===\"sent\"?\"active\":\"waiting\")+\"'>\"+esc(x.status||\"\")+\"</span></td><td>\"+resend+\"</td></tr>\"}).join(\"\"),creditPanel=vendorCreditPanelV639(key,accountCreditBalance,accountCredits,clubData);body.innerHTML=\"<div class='orbit-vendor-customer-hero orbit-vendor-customer-hero-v417'><div class='orbit-vendor-customer-profile'><div class='orbit-vendor-customer-avatar'>\"+esc(String(c.name||c.businessName||\"V\").trim().charAt(0).toUpperCase()||\"V\")+\"</div><div class='orbit-vendor-customer-identity'><span class='orbit-vendor-customer-eyebrow'>Vendor profile</span><strong class='orbit-vendor-customer-name'>\"+esc(c.businessName||c.name||\"Unknown vendor\")+\"</strong>\"+(c.businessName&&c.name?\"<span class='orbit-vendor-business-name'>Booking name: \"+esc(c.name)+\"</span>\":\"<span class='orbit-vendor-business-name orbit-muted'>No business identifier \\xB7 showing booking name</span>\")+\"<div class='orbit-vendor-customer-contact'>\"+(c.email?\"<span>\"+esc(c.email)+\"</span>\":\"<span>No email</span>\")+(c.phone?\"<span>\"+esc(c.phone)+\"</span>\":\"\")+(c.instagram?\"<span>\"+esc(c.instagram)+\"</span>\":\"\")+(c.website?\"<span>\"+esc(c.website)+\"</span>\":\"\")+(aliasEmails.length>1?\"<span>\"+aliasEmails.length+\" known emails</span>\":\"\")+\"</div><div class='orbit-vendor-customer-actions'><button type='button' class='secondary' data-vendor-edit-business='\"+esc(c.businessName||\"\")+\"'>Edit business</button><button type='button' class='secondary' data-vendor-copy='\"+esc(c.name||\"\")+\"' data-copy-label='Vendor name'>Copy name</button>\"+(c.email?\"<button type='button' class='secondary' data-vendor-copy='\"+esc(c.email)+\"' data-copy-label='Email'>Copy email</button>\":\"\")+\"<button type='button' class='secondary orbit-danger-button' data-vendor-customer-delete='\"+esc(key)+\"'>Delete customer</button></div></div></div><div class='orbit-vendor-customer-stats'><span><strong>\"+Number(c.orders||0)+\"</strong><small>Orders</small></span><span><strong>\"+Number(c.events||0)+\"</strong><small>Shows</small></span><span><strong>\"+Number(c.tables||0)+\"</strong><small>Tables</small></span><span><strong>\"+Number(c.displayCases||0)+\"</strong><small>Cases</small></span><span class='wide'><strong>\"+esc(vendorMoneyV384(c.spend))+\"</strong><small>Lifetime spend</small></span></div></div>\"+vendorClubCustomerPanelV620(clubData,c)+creditPanel+\"<h4>Orders &amp; bookings</h4><div class='orbit-table-wrap'><table><thead><tr><th>Event</th><th>Order</th><th>Type</th><th>Qty</th><th>Spend</th><th>Action</th></tr></thead><tbody>\"+(bookingRows||\"<tr><td colspan='6'>No bookings found.</td></tr>\")+\"</tbody></table></div><h4>Notes</h4><div id='vendorCustomerNotesList' class='orbit-vendor-notes'>\"+(notes.map(n=>\"<div class='orbit-vendor-note-row'><strong>\"+esc(prettyDate(n.createdAt))+\"</strong><span>\"+esc(n.text)+\"</span><div class='orbit-action-row'><button type='button' class='secondary' data-vendor-note-edit='\"+esc(n.id)+\"' data-note-text='\"+esc(n.text)+\"'>Edit</button><button type='button' class='secondary' data-vendor-note-delete='\"+esc(n.id)+\"'>Delete</button></div></div>\").join(\"\")||\"<p class='orbit-muted'>No notes yet.</p>\")+\"</div><div class='orbit-action-row'><input id='vendorCustomerNewNote' placeholder='Add an internal note\\u2026'><button type='button' id='saveVendorCustomerNote'>Add note</button></div><h4>Communications</h4><div class='orbit-table-wrap'><table><thead><tr><th>When</th><th>Email</th><th>To</th><th>Status</th><th></th></tr></thead><tbody>\"+(commRows||\"<tr><td colspan='5'>No Orbit emails recorded for this customer yet.</td></tr>\")+\"</tbody></table></div>\"}catch(error){body.innerHTML=\"<div class='orbit-info-banner warning'><strong>Customer could not be loaded</strong><span>\"+esc(error.message||String(error))+\"</span></div>\"}}}async function adjustVendorCreditFromCustomerV493(button2,clear=!1){const id=button2.dataset.vendorCreditDeduct||button2.dataset.vendorCreditClear||\"\",customerKey=state.currentVendorCustomerKey;if(!id||!customerKey)return;let bookingValue=null;if(!clear){const remaining=Number(button2.dataset.creditRemaining||0),raw=prompt(\"What is the GBP value of the replacement booking? Orbit will use up to \"+vendorMoneyV384(remaining)+\" credit and tell you any difference to invoice.\",remaining>0?remaining.toFixed(2):\"\");if(raw===null)return;if(bookingValue=Number(raw),!Number.isFinite(bookingValue)||bookingValue<=0)throw new Error(\"Enter a positive GBP booking value.\")}const label=clear?\"Clear the full remaining Vendor Account Credit?\":\"Apply this credit against a \"+vendorMoneyV384(bookingValue)+\" replacement booking?\";if(confirm(label+\" This only updates Orbit's credit ledger and does not move money.\")){setLoading(button2,!0);try{const requestId=globalThis.crypto?.randomUUID?.()||\"customer-credit-\"+Date.now()+\"-\"+Math.random().toString(36).slice(2),result=await api(\"/api/admin/vendors/account-credits/\"+encodeURIComponent(id)+\"/adjust\",{method:\"POST\",body:JSON.stringify({bookingValue,clearRemaining:clear,reason:\"Credit used against manually assigned Vendor tables\",requestId}),timeoutMs:15e3,cacheMs:0});setNotice2(result.message||\"Vendor Account Credit updated.\"),await viewVendorCustomerV398(customerKey)}finally{setLoading(button2,!1)}}}async function resendVendorDetailsV398(button2){const eventKey=button2.dataset.vendorResendDetails,customerKey=button2.dataset.customerKey;if(!(!eventKey||!customerKey)&&confirm(\"Resend the latest setup details to this vendor?\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/vendors/events/\"+encodeURIComponent(eventKey)+\"/send-details\",{method:\"POST\",body:JSON.stringify({customerKey,override:!1})});setNotice2(result.sent?\"Vendor details resent.\":\"Vendor details could not be sent.\"),await viewVendorCustomerV398(customerKey)}finally{setLoading(button2,!1)}}}async function saveVendorCustomerNoteV398(button2){const text2=$2(\"vendorCustomerNewNote\")?.value?.trim();if(!(!state.currentVendorCustomerKey||!text2)){setLoading(button2,!0);try{await api(\"/api/admin/vendors/customers/\"+encodeURIComponent(state.currentVendorCustomerKey)+\"/notes\",{method:\"POST\",body:JSON.stringify({text:text2})}),await viewVendorCustomerV398(state.currentVendorCustomerKey),setNotice2(\"Vendor note added.\")}finally{setLoading(button2,!1)}}}function openVendorCustomerProfileV434(){const c=state.currentVendorCustomerProfile||{};if(!state.currentVendorCustomerKey)return;$2(\"vendorProfileBookingName\").value=c.name||\"\",$2(\"vendorProfileBusinessIdentifier\").value=c.businessName||\"\",$2(\"vendorProfileEmail\").value=c.email||\"\",$2(\"vendorProfilePhone\").value=c.phone||\"\",$2(\"vendorProfileInstagram\").value=c.instagram||\"\",$2(\"vendorProfileSocialMedia\").value=c.socialMedia||\"\",$2(\"vendorProfileWebsite\").value=c.website||\"\";const result=$2(\"vendorCustomerProfileResult\");result&&(result.hidden=!0,result.textContent=\"\"),$2(\"vendorCustomerProfileDialog\")?.showModal()}async function deleteVendorCustomerV527(key,button2){if(key){setLoading(button2,!0);try{const preview=await api(\"/api/admin/vendors/customers/\"+encodeURIComponent(key)+\"/delete-preview\",{cacheMs:0}),c=preview.customer||{},summary=[Number(preview.orders||0)+\" Shopify order(s)\",Number(preview.events||0)+\" show(s)\",Number(preview.tables||0)+\" table(s)\"].join(\" \\xB7 \"),typed=prompt(\"Remove \"+(c.businessName||c.name||\"this vendor\")+` from the Vendor CRM?\n\n`+summary+`\n\nShopify orders, bookings and financial history will NOT be deleted.\n\nType DELETE CUSTOMER to confirm:`,\"\");if(typed===null)return;if(typed.trim()!==\"DELETE CUSTOMER\")throw new Error(\"Customer deletion cancelled because the confirmation text did not match.\");await api(\"/api/admin/vendors/customers/\"+encodeURIComponent(key),{method:\"DELETE\",body:JSON.stringify({confirmation:\"DELETE CUSTOMER\",reason:\"Removed from Vendor CRM by operator\"}),cacheMs:0}),$2(\"vendorCustomerDetailDialog\")?.close(),await loadVendorWorkspaceV398(null,!0,!0,\"customers\"),setNotice2(\"Vendor customer removed from the CRM. Shopify source history was preserved.\")}finally{setLoading(button2,!1)}}}async function deleteVendorVenueV527(button2){const id=$2(\"vendorVenueId\")?.value;if(id){setLoading(button2,!0);try{const preview=await api(\"/api/admin/vendors/venues/\"+encodeURIComponent(id)+\"/delete-preview\",{cacheMs:0}),refs=preview.references||{};if(!preview.canDelete)throw new Error(\"This venue is still linked to \"+Number(refs.events||0)+\" event(s) and \"+Number(refs.floorPlans||0)+\" floor plan(s). Remove or reassign those links first.\");const typed=prompt(\"Delete \"+(preview.venue?.name||\"this venue\")+` from Orbit?\n\nHistorical Eventbrite data is preserved and the venue will not be recreated automatically.\n\nType DELETE VENUE to confirm:`,\"\");if(typed===null)return;if(typed.trim()!==\"DELETE VENUE\")throw new Error(\"Venue deletion cancelled because the confirmation text did not match.\");await api(\"/api/admin/vendors/venues/\"+encodeURIComponent(id),{method:\"DELETE\",body:JSON.stringify({confirmation:\"DELETE VENUE\",reason:\"Deleted from Venue master by operator\"}),cacheMs:0}),$2(\"vendorVenueDialog\")?.close(),await loadVendorWorkspaceV398(null,!0,!0,\"venues\"),setNotice2(\"Venue removed safely. Historical source data was preserved.\")}finally{setLoading(button2,!1)}}}async function saveVendorCustomerProfileV434(button2){if(state.currentVendorCustomerKey){setLoading(button2,!0);try{const payload={bookingName:$2(\"vendorProfileBookingName\").value.trim(),businessIdentifier:$2(\"vendorProfileBusinessIdentifier\").value.trim(),email:$2(\"vendorProfileEmail\").value.trim(),phone:$2(\"vendorProfilePhone\").value.trim(),instagram:$2(\"vendorProfileInstagram\").value.trim(),socialMedia:$2(\"vendorProfileSocialMedia\").value.trim(),website:$2(\"vendorProfileWebsite\").value.trim()};await api(\"/api/admin/vendors/customers/\"+encodeURIComponent(state.currentVendorCustomerKey)+\"/profile\",{method:\"POST\",body:JSON.stringify(payload)});const result=$2(\"vendorCustomerProfileResult\");result&&(result.hidden=!1,result.textContent=\"Vendor profile saved.\"),await loadVendorWorkspaceV398(null,!0,!0,state.currentVendorPane||\"customers\"),await viewVendorCustomerV398(state.currentVendorCustomerKey),$2(\"vendorCustomerProfileDialog\")?.close(),setNotice2(\"Vendor profile saved without changing Shopify history or the customer key.\")}finally{setLoading(button2,!1)}}}async function editVendorBusinessIdentifierV412(){openVendorCustomerProfileV434()}async function fetchPerformanceData(period){const selected=period||$2(\"performancePeriod\")?.value||\"this_month\",data=await Promise.race([api(\"/api/admin/v6001/card-shows/performance?period=\"+encodeURIComponent(selected)),new Promise((_,reject)=>setTimeout(()=>reject(new Error(\"Performance data timed out\")),15e3))]);return state.performance=data,data}function renderAttributionTable(data){const target=$2(\"attributionTable\");if(!target)return;const rows=data?.rows||[];target.innerHTML=table([\"Source\",\"Visits\",\"Memberships\",\"Tickets\",\"Revenue\"],rows.map(row=>\"<tr><td><strong>\"+esc(row.source||\"Direct\")+\"</strong></td><td>\"+esc(row.visits||0)+\"</td><td>\"+esc(row.signups||0)+\"</td><td>\"+esc(row.tickets||0)+\"</td><td>\"+esc(performanceMoney(row.revenue))+\"</td></tr>\"),\"No attribution records were found for this period.\")}async function loadAttribution(button2){const token=siteReadV544(\"attribution\");clearSiteTargetsV544([\"attributionTable\"]);try{siteLoadingV544(button2,token,!0);const period=$2(\"performancePeriod\")?.value||\"last_30_days\",data=await api(\"/api/admin/v6001/card-shows/attribution?period=\"+encodeURIComponent(period),{cacheMs:0,timeoutMs:25e3});if(!token.current())return;renderSiteAttributionV544(\"attributionTable\",data)}catch(error){siteReadFailureV544(token,\"attributionTable\",error)}finally{siteLoadingV544(button2,token,!1)}}function activityCategory(item){const structured=[item.type,item.source,item.category,item.event_type].filter(Boolean).join(\" \").toLowerCase(),text2=[structured,item.title,item.message].join(\" \").toLowerCase();return/payment|charge|billing|recharge|paid|refund/.test(text2)?\"payments\":/member[_\\s-]?ticket|event|attendance|scan|check.?in|ticket[_\\s-]?(issued|deleted|claimed|order|purchase)|card show/.test(text2)?\"events\":/support[_\\s-]?(ticket|message|thread|case|conversation)|helpdesk|customer[_\\s-]?service|member[_\\s-]?message|customer[_\\s-]?message/.test(structured+\" \"+String(item.title||\"\").toLowerCase())?\"support\":/pack|parcel|ship|dispatch|label|fulfil/.test(text2)?\"fulfilment\":\"membership\"}function renderBusinessActivity(filter){const target=$2(\"businessActivityFeed\");if(!target)return;const selected=filter||state.businessActivityFilter||\"all\";state.businessActivityFilter=selected,document.querySelectorAll(\"[data-activity-filter]\").forEach(button2=>{const active=button2.dataset.activityFilter===selected;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-pressed\",active?\"true\":\"false\"),button2.setAttribute(\"aria-selected\",active?\"true\":\"false\"),button2.style.setProperty(\"color\",active?\"#fff\":\"#24364b\",\"important\"),button2.style.setProperty(\"-webkit-text-fill-color\",active?\"#fff\":\"#24364b\",\"important\")});const rows=(state.performance?.activity||[]).filter(item=>selected===\"all\"||activityCategory(item)===selected);target.innerHTML=rows.length?rows.map(item=>{const identity=[item.member_number,item.memberNumber,item.email,item.subscription_id,item.subscriptionId].filter(Boolean).join(\" \\xB7 \"),meta=item.metadata&&typeof item.metadata==\"object\"?item.metadata:{},usefulMeta=[];return meta.deliverySyncStatus&&usefulMeta.push(\"Recharge sync: \"+meta.deliverySyncStatus),meta.monthKey&&usefulMeta.push(\"Cycle: \"+meta.monthKey),meta.packId&&usefulMeta.push(\"Pack: \"+meta.packId),\"<article class='orbit-activity-item'><div><strong>\"+esc(item.title||item.type||\"Orbit activity\")+\"</strong><span>\"+esc(item.message||item.source||\"Recorded by Orbit\")+\"</span>\"+(identity?\"<small>\"+esc(identity)+\"</small>\":\"\")+(usefulMeta.length?\"<small>\"+esc(usefulMeta.join(\" \\xB7 \"))+\"</small>\":\"\")+\"</div><time>\"+esc(performanceDate(item.created_at||item.createdAt))+\"</time></article>\"}).join(\"\"):\"<div class='orbit-empty-state'><strong>No activity in this view</strong><span>There is no recent activity in this category.</span></div>\"}async function loadBusinessActivity(button2){try{setLoading(button2,!0),await fetchPerformanceData(\"last_30_days\"),renderBusinessActivity(state.businessActivityFilter||\"all\")}finally{setLoading(button2,!1)}}function reportMetric(label,value,note){return\"<article class='orbit-report-metric'><span>\"+esc(label)+\"</span><strong>\"+esc(value)+\"</strong>\"+(note?\"<small>\"+esc(note)+\"</small>\":\"\")+\"</article>\"}async function openBusinessReport(kind,button2){const target=$2(\"reportResult\");if(target)try{setLoading(button2,!0),target.innerHTML=\"<div class='orbit-empty-state'><strong>Loading report\\u2026</strong><span>Reading live Orbit records.</span></div>\";const data=await fetchPerformanceData($2(\"reportsPeriod\")?.value||state.performancePeriod||\"this_month\"),membership=data.membership||{},tickets=data.tickets||{},forecast=data.forecast||{},operations=data.operations||{},periodLabel=performancePeriodLabelV346(data),reportsPeriod=document.getElementById(\"reportsPeriod\");reportsPeriod&&(reportsPeriod.value=data.period||state.performancePeriod||reportsPeriod.value);const reportsPeriodControl=reportsPeriod?.closest(\"label\")||null;reportsPeriodControl&&(reportsPeriodControl.hidden=kind===\"attendance\");let title=\"Business report\",metrics=[],detail=\"\";if(kind===\"membership\")title=\"Membership growth\",metrics=[reportMetric(\"Signups in period\",membership.total||0,periodLabel),reportMetric(\"All-time operational members\",membership.allTimeOperational||0,\"Current non-archived operational member records\"),reportMetric(\"\\xA31 route\",membership.onePound||0,performanceMoney(membership.onePoundCash)+\" received in period\"),reportMetric(\"Immediate upgrades\",membership.upgrades||0,performanceMoney(membership.upgradeCash)+\" received in period\"),reportMetric(\"Next rebill members\",forecast.total||0)];else if(kind===\"revenue\")title=\"Revenue\",metrics=[reportMetric(\"Tracked revenue\",performanceMoney(data.revenue)),reportMetric(\"Membership cash\",performanceMoney(membership.cash)),reportMetric(\"Ticket revenue\",performanceMoney(tickets.revenue)),reportMetric(\"Safer rebill forecast\",performanceMoney(forecast.safer),forecast.assumption||\"\")];else if(kind===\"tickets\"){title=\"Ticket sales\",metrics=[reportMetric(\"Orders\",tickets.orders||0),reportMetric(\"Tickets\",tickets.tickets||0),reportMetric(\"Revenue\",performanceMoney(tickets.revenue))];const ticketEventRows=Array.isArray(tickets.events)?tickets.events:[],eventTicketTotal=ticketEventRows.reduce((sum,row)=>sum+Number(row.quantity||0),0),reportedTickets=Number(tickets.tickets||0),reconciledEventRows=ticketEventRows.length===1&&eventTicketTotal!==reportedTickets?[{...ticketEventRows[0],quantity:reportedTickets}]:ticketEventRows;detail=\"<p class='orbit-report-context-v377'><strong>Tickets by event</strong><span>These event totals use the same selected reporting period as the figures above.</span></p>\"+table([\"Event\",\"Tickets\"],reconciledEventRows.map(row=>\"<tr><td><strong>\"+esc(row.name)+\"</strong></td><td>\"+esc(row.quantity||0)+\"</td></tr>\"),\"No ticket sales were found for this period.\")}else if(kind===\"referrals\"){title=\"Referral performance\";const attribution=await api(\"/api/admin/v6001/card-shows/attribution?period=last_30_days\");metrics=[reportMetric(\"Tracked records\",attribution.totalRecords||0),reportMetric(\"Sources\",(attribution.rows||[]).length)],detail=table([\"Source\",\"Visits\",\"Memberships\",\"Tickets\",\"Revenue\"],(attribution.rows||[]).map(row=>\"<tr><td><strong>\"+esc(row.source||\"Direct\")+\"</strong></td><td>\"+esc(row.visits||0)+\"</td><td>\"+esc(row.signups||0)+\"</td><td>\"+esc(row.tickets||0)+\"</td><td>\"+esc(performanceMoney(row.revenue))+\"</td></tr>\"),\"No referral or campaign records were found.\")}else if(kind===\"shipping\"){title=\"Shipping operations\";const parcelRows=Array.isArray(operations.openParcelRecords)?operations.openParcelRecords:[];metrics=[reportMetric(\"Current open parcel records\",operations.pendingParcels||0,\"Current operational-member fulfilment records; this count is not filtered by the report period\")],detail=\"<div class='orbit-info-banner info'><strong>Current shipping queue</strong><span>This is a live queue count, not a selected-period statistic. Only parcel records belonging to current operational members are included.</span></div>\"+table([\"Cycle\",\"Member\",\"Status\"],parcelRows.map(row=>\"<tr><td>\"+esc(row.monthKey||\"\\u2014\")+\"</td><td><strong>\"+esc(row.member||\"\\u2014\")+\"</strong></td><td>\"+esc(row.status||\"\\u2014\")+\"</td></tr>\"),\"No current open parcel records.\")}else if(kind===\"attendance\"){title=\"Event attendance\";const historical=((await api(\"/api/admin/attendance/events?limit=250&scope=all\",{cacheMs:15e3})).events||[]).filter(isPastAttendanceEventV367).sort((a,b)=>new Date(attendanceEventDateV367(b)||0)-new Date(attendanceEventDateV367(a)||0)),totalClaimed=historical.reduce((sum,event)=>sum+Number(event.attendance?.claimed||0),0),totalCheckedIn=historical.reduce((sum,event)=>sum+Number(event.attendance?.checkedIn||0),0);metrics=[reportMetric(\"Past events\",historical.length,\"Completed shows\"),reportMetric(\"Expected admissions\",totalClaimed,\"Historical member/event claims\"),reportMetric(\"Checked in\",totalCheckedIn,\"Recorded door scans\")],detail=attendanceHistoryTableV367(historical)+\"<div id='reportAttendanceDetailV367' class='orbit-past-event-detail' hidden></div>\"}const reportContext=kind===\"attendance\"?\"<p><strong>All completed events</strong><br>Historical attendance is not limited by the reporting-period selector.</p>\":\"<p><strong>Period: \"+esc(periodLabel)+\"</strong><br>\"+esc(data.status===\"partial\"?\"Some data sources were unavailable; available figures are shown.\":\"Figures below use this exact reporting window.\")+\"</p>\";target.innerHTML=\"<div class='orbit-report-heading'><div><p class='orbit-kicker'>Live report</p><h3>\"+esc(title)+\"</h3>\"+reportContext+\"</div></div><div class='orbit-report-metrics'>\"+metrics.join(\"\")+\"</div>\"+detail,kind===\"attendance\"&&target.querySelectorAll(\"[data-report-attendance-event]\").forEach(function(reportButton){reportButton.addEventListener(\"click\",async function(){const detailTarget=$2(\"reportAttendanceDetailV367\");setLoading(reportButton,!0);try{const full=await api(\"/api/admin/attendance/events/\"+encodeURIComponent(reportButton.dataset.reportAttendanceEvent),{cacheMs:0});if(detailTarget){const renderHistoricalDetail=async function(payload){detailTarget.innerHTML=attendanceDetailMarkup(payload);const eventId=payload?.event?.eventbriteEventId||reportButton.dataset.reportAttendanceEvent;wireHistoricalAddOnRecoveryV480(detailTarget,eventId,async()=>{const refreshed=await api(\"/api/admin/attendance/events/\"+encodeURIComponent(reportButton.dataset.reportAttendanceEvent),{cacheMs:0});await renderHistoricalDetail(refreshed)}),wireDoorCorrectionsV489(detailTarget,eventId,async()=>{const refreshed=await api(\"/api/admin/attendance/events/\"+encodeURIComponent(reportButton.dataset.reportAttendanceEvent),{cacheMs:0});await renderHistoricalDetail(refreshed)})};await renderHistoricalDetail(full),detailTarget.hidden=!1,detailTarget.scrollIntoView({behavior:\"smooth\",block:\"start\"})}setNotice2(\"Historical event attendance loaded.\")}catch(error){setNotice2(error.message||String(error),!0)}finally{setLoading(reportButton,!1)}})}),document.querySelectorAll(\"[data-report-kind]\").forEach(item=>item.classList.toggle(\"active\",item.dataset.reportKind===kind))}catch(err){target.innerHTML=\"<div class='orbit-empty-state orbit-error-state'><strong>Report could not load</strong><span>\"+esc(err.message||err)+\"</span></div>\"}finally{setLoading(button2,!1)}}async function loadPerformanceOverview(button2){const token=siteReadV544(\"overview\"),notice=$2(\"performanceNotice\");showPerformanceSiteV544(),clearSiteTargetsV544([\"perfSignups\",\"perfOnePound\",\"perfOnePoundCash\",\"perfUpgrades\",\"perfUpgradeCash\",\"perfTickets\",\"perfTicketRevenue\",\"perfRevenue\",\"forecastGross\",\"forecastMembers\",\"forecastConfirmed\",\"forecastPending\",\"forecastRisk\",\"forecastExcluded\",\"forecastSafe\",\"forecastPerMember\"],\"\\u2014\");const loadingButton=button2&&String(button2.tagName||\"\").toUpperCase()===\"BUTTON\"?button2:null,selectedPeriod=$2(\"performancePeriod\")?.value||state.performancePeriod||\"this_month\";state.performancePeriod=selectedPeriod,notice&&(notice.innerHTML=\"<strong>Loading business performance\\u2026</strong><span>Reading the selected product records.</span>\");try{siteLoadingV544(loadingButton,token,!0);const data=await api(\"/api/admin/v6001/card-shows/performance?period=\"+encodeURIComponent(selectedPeriod),{cacheMs:0,timeoutMs:25e3});if(!token.current())return;const membership=data.membership||{},tickets=data.tickets||{},forecast=data.forecast||{};text(\"perfSignups\",membership.total||0),text(\"perfOnePound\",membership.onePound||0),text(\"perfOnePoundCash\",performanceMoney(membership.onePoundCash)+\" estimated signup receipts\"),text(\"perfUpgrades\",membership.upgrades||0),text(\"perfUpgradeCash\",performanceMoney(membership.upgradeCash)+\" estimated signup receipts\"),text(\"perfTickets\",tickets.tickets||0),text(\"perfTicketRevenue\",performanceMoney(tickets.revenue)+\" revenue\"),text(\"perfRevenue\",data.revenue==null?\"\\u2014\":performanceMoney(data.revenue));const forecastDate=forecast.date?new Date(forecast.date):null;text(\"forecastTitle\",forecastDate&&!Number.isNaN(forecastDate.getTime())?\"Money due \"+forecastDate.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"long\"}):\"Next first-of-month billing\"),text(\"forecastGross\",performanceMoney(forecast.gross)),text(\"forecastMembers\",(forecast.total||0)+\" member payments expected\"),text(\"forecastConfirmed\",forecast.confirmed||0),text(\"forecastPending\",forecast.pending||0),text(\"forecastRisk\",forecast.atRisk||0),text(\"forecastExcluded\",forecast.excluded||0),text(\"forecastSafe\",performanceMoney(forecast.safer)),text(\"forecastPerMember\",forecast.total?performanceMoney(forecast.safer/forecast.total)+\" per expected paid member\":\"No expected payments\");const confidence=$2(\"forecastConfidence\");if(confidence&&(confidence.textContent=data.status===\"partial\"?\"Partial data\":\"Live forecast\",confidence.className=\"orbit-status-pill \"+(data.status===\"partial\"?\"waiting\":\"success\")),data.membership||clearSiteTargetsV544([\"perfSignups\",\"perfOnePound\",\"perfOnePoundCash\",\"perfUpgrades\",\"perfUpgradeCash\",\"forecastGross\",\"forecastMembers\",\"forecastConfirmed\",\"forecastPending\",\"forecastRisk\",\"forecastExcluded\",\"forecastSafe\",\"forecastPerMember\"],\"\\u2014\"),data.tickets||clearSiteTargetsV544([\"perfTickets\",\"perfTicketRevenue\"],\"\\u2014\"),await loadAttribution(null),!token.current())return;notice&&(notice.innerHTML=\"<strong>\"+esc(performanceDomainV544())+\" \\xB7 \"+esc(performancePeriodLabelV346(data))+\"</strong><span>\"+esc(data.scope?.operationalBasis||\"\")+\" \"+esc(data.scope?.revenueBasis||\"\")+(data.status===\"partial\"?\" Some records are unavailable.\":\"\")+(data.coverage?.possiblyCapped?\" Record limit reached; totals may be incomplete.\":\"\")+\"</span>\")}catch(err){token.current()&&notice&&(notice.innerHTML=\"<strong>Performance could not be loaded</strong><span>\"+esc(err.message)+\". Use Refresh to try again.</span>\")}finally{siteLoadingV544(loadingButton,token,!1)}}document.addEventListener(\"click\",async function(event){const button2=event.target.closest(\"[data-toggle-ticket-discount]\");if(!button2)return;const code=button2.dataset.toggleTicketDiscount,enabled=button2.dataset.enabled===\"true\";try{setLoading(button2,!0),await api(\"/api/admin/ticket-discount-codes/\"+encodeURIComponent(code)+\"/enabled\",{method:\"POST\",body:JSON.stringify({enabled}),cacheMs:0}),await loadTicketDiscountCodes(),setNotice2(\"Ticket discount code \"+(enabled?\"reactivated: \":\"disabled: \")+code)}catch(err){setNotice2(err.message||String(err),!0)}finally{setLoading(button2,!1)}});const scV679={pane:\"overview\",overview:null,products:[],inventory:[],collections:[],pages:[],menus:[],themes:[],drafts:[],files:[],prepared:[],eventLayoutsV684:null,referenceProducts:[],cursors:{},loaded:{},requests:{},audit:[],dialogVersion:0,draftOperations:{},draftWatchers:{},draftListRequest:0,batch:null},scLabelsV679={overview:\"Overview\",products:\"Products\",inventory:\"Inventory\",collections:\"Collections\",drafts:\"Drafts & Approvals\",theme:\"Website & Theme\",pages:\"Pages & Navigation\",files:\"Files & Media\",integrations:\"Integrations\",history:\"History & Diagnostics\"},scPresentationV681={photos:[],selectedPhotos:new Set,photoCursor:null,photoMore:!1,artworkRows:[],artworkReviews:[],artworkBusy:!1};async function scPhotoLibraryV681(more=!1){if(!more){const data2=await scRequestV679(\"presentation-library\");scPresentationV681.photos=[],scPresentationV681.selectedPhotos=new Set((data2.album?.photos||[]).map(x=>x.id)),scPresentationV681.photoCursor=null}const data=await scRequestV679(\"files?limit=25\"+(more&&scPresentationV681.photoCursor?\"&after=\"+encodeURIComponent(scPresentationV681.photoCursor):\"\"));scPresentationV681.photos=scMergeV679(scPresentationV681.photos,(data.nodes||[]).filter(x=>x.image?.url&&x.fileStatus===\"READY\"),!0),scPresentationV681.photoCursor=data.pageInfo?.endCursor,scPresentationV681.photoMore=!!data.pageInfo?.hasNextPage,scModalV679(\"Your original Orbit event photos\",`<p>Choose up to four of <strong>your own crowd photographs from previous Orbit shows</strong>. The images below come only from the connected Card Show Shopify Files. Banners, stock photos and generated images must not be selected.</p><p>Selected photos are captioned as previous Orbit events, never as photographs of a future venue.</p><div class=\"sc-own-photo-grid\">${scPresentationV681.photos.map(f=>`<label><input type=\"checkbox\" data-sc-own-photo=\"${esc(f.id)}\" ${scPresentationV681.selectedPhotos.has(f.id)?\"checked\":\"\"}><img loading=\"lazy\" src=\"${esc(scSafeUrlV679(f.image.url))}\" alt=\"${esc(f.alt||\"Shopify image\")}\"/><span>${esc(f.alt||f.id.split(\"/\").pop())}</span></label>`).join(\"\")||\"<p>No ready images on this page.</p>\"}</div>${scPresentationV681.photoMore?scButtonV679(\"photos-more\",\"Load more Shopify images\"):\"\"}<p><strong id=\"scPhotoCountV681\">${scPresentationV681.selectedPhotos.size} selected</strong></p><label class=\"sc-checkbox-row\"><input id=\"scOwnPhotoConfirmV681\" type=\"checkbox\"><span>I confirm the selected images are my own original Orbit crowd photos.</span></label><p class=\"sc-note\">Save changes the shared photo selection in Orbit only. Use Update design & artwork on the private drafts to apply it. It never rewrites live product descriptions.</p>`,scButtonV679(\"photos-save\",\"Save original-photo selection\",\"\",!0)),$2(\"scDialogV679\").querySelectorAll(\"[data-sc-own-photo]\").forEach(el=>el.addEventListener(\"change\",()=>{if(el.checked&&scPresentationV681.selectedPhotos.size>=4){el.checked=!1,scNoticeV679(\"Select no more than four photographs.\",!0);return}el.checked?scPresentationV681.selectedPhotos.add(el.dataset.scOwnPhoto):scPresentationV681.selectedPhotos.delete(el.dataset.scOwnPhoto),$2(\"scPhotoCountV681\").textContent=scPresentationV681.selectedPhotos.size+\" selected\"}))}async function scSavePhotosV681(b){await scBusyV679(b,async()=>{await scRequestV679(\"presentation-library/photos\",\"POST\",{photoIds:[...scPresentationV681.selectedPhotos],confirmOwnPhotos:$2(\"scOwnPhotoConfirmV681\").checked}),delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),scNoticeV679(\"Original-photo selection saved. Update your private draft designs to include the gallery. No live product was edited.\")})}async function scVenueV681(id){const d=scV679.drafts.find(x=>x._id===id),r=await scRequestV679(\"drafts/\"+encodeURIComponent(id)+\"/venue\"),v=r.venue||{};scV679.venueDraftV681=id,scModalV679(\"Venue details & map\",`<h3>${esc(d?.title||\"Event\")}</h3><p>Use the <strong>exact event building and address</strong>. A university name alone is not a verified location. Leave this blank rather than guessing a pin.</p><label>Confirmed street address and postcode<textarea id=\"scVenueAddressV681\" maxlength=\"350\" rows=\"3\">${esc(v.address||\"\")}</textarea></label><label>Google Maps embed URL (optional)<textarea id=\"scVenueMapV681\" rows=\"3\" placeholder=\"In Google Maps: open the actual venue \\u2192 Share \\u2192 Embed a map \\u2192 Copy HTML\">${esc(v.mapsEmbedUrl||\"\")}</textarea></label><p class=\"sc-note\">The safe map address is extracted from the embed code. The page shows a directions link and a click-to-load map; it does not contact Google before the visitor opens it.</p><label class=\"sc-checkbox-row\"><input type=\"checkbox\" id=\"scVenueConfirmV681\"><span>I checked the building, address and map pin against the booked venue.</span></label><p>Saving does not change Shopify. Apply this with <strong>Update design & artwork</strong> on the private draft, then review its new preview.</p>`,scButtonV679(\"venue-save\",\"Save venue details\",\"\",!0))}async function scSaveVenueV681(b){await scBusyV679(b,async()=>{await scRequestV679(\"drafts/\"+encodeURIComponent(scV679.venueDraftV681)+\"/venue\",\"POST\",{address:$2(\"scVenueAddressV681\").value,mapsEmbedUrl:$2(\"scVenueMapV681\").value,confirmExactVenue:$2(\"scVenueConfirmV681\").checked}),delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),await scDraftsV679(),scNoticeV679(\"Venue saved. Apply the design update to include it; any earlier content approval has been cleared.\")})}function scGuessArtworkEventV681(p){const known=scV679.drafts.find(d=>d.shopifyProductId===p.id)?.plan?.eventPresentation;if(known)return{...known};const venue=String(p.title||\"\").split(/\\s+-\\s+(?:Reserve|Book)/i)[0],match=String(p.title||\"\").match(/\\b(\\d{1,2})(?:st|nd|rd|th)?\\s+(January|February|March|April|May|June|July|August|September|October|November|December)\\s+(20\\d{2})\\b/i),month=match?[\"january\",\"february\",\"march\",\"april\",\"may\",\"june\",\"july\",\"august\",\"september\",\"october\",\"november\",\"december\"].indexOf(match[2].toLowerCase())+1:0;return{city:\"\",venue,date:match?`${match[3]}-${String(month).padStart(2,\"0\")}-${match[1].padStart(2,\"0\")}`:\"\",autoArtwork:!0}}async function scArtworkManagerV681(more=!1){if(more){scRememberArtworkFieldsV681();const data=await scRequestV679(\"products?limit=25&after=\"+encodeURIComponent(scPresentationV681.productCursor||\"\")),known=new Set(scPresentationV681.artworkRows.map(x=>x.p.id));for(const p of data.products||data.nodes||[])known.has(p.id)||scPresentationV681.artworkRows.push({p,event:scGuessArtworkEventV681(p)});scPresentationV681.productCursor=data.pageInfo?.endCursor,scPresentationV681.productMore=!!data.pageInfo?.hasNextPage}else{scPresentationV681.artworkReviews=[];const data=await scRequestV679(\"products?limit=25\");scPresentationV681.artworkRows=(data.products||data.nodes||[]).map(p=>({p,event:scGuessArtworkEventV681(p)})),scPresentationV681.productCursor=data.pageInfo?.endCursor,scPresentationV681.productMore=!!data.pageInfo?.hasNextPage}scModalV679(\"Refresh existing event artwork\",`<p>Give selected event products the same original-logo design. <strong>This updates the featured image only</strong> and keeps every existing gallery photo, variant, price and stock quantity.</p><div class=\"sc-callout sc-warning\">For already-live events, applying artwork changes the visible product image immediately. Preview and approve the selection first. No product is published and no announcement is sent.</div><p>Dates and venue names read from titles are suggestions only. Confirm every field. Select up to 20 events per batch.</p><div class=\"sc-artwork-event-list\">${scPresentationV681.artworkRows.map((r,i)=>`<article data-sc-art-row=\"${i}\"><label class=\"sc-checkbox-row\"><input data-art-select type=\"checkbox\" ${r.selected?\"checked\":\"\"}><strong>${esc(r.p.title)}</strong></label><small>${esc(r.p.status||\"\")} \\xB7 ${esc(r.p.id.split(\"/\").pop())}</small><div class=\"sc-form-grid\"><label>Town or city<input data-art-city value=\"${esc(r.event.city)}\" placeholder=\"Confirm location\"></label><label>Venue<input data-art-venue value=\"${esc(r.event.venue)}\"></label><label>Date<input data-art-date type=\"date\" value=\"${esc(r.event.date)}\"></label></div></article>`).join(\"\")}</div>${scPresentationV681.productMore?scButtonV679(\"artwork-manager-more\",\"Load more existing products\"):\"\"}<label class=\"sc-checkbox-row\"><input id=\"scArtworkFactsV681\" type=\"checkbox\"><span>I checked the town, venue and date for every selected event.</span></label>`,scButtonV679(\"artwork-review\",\"Generate artwork previews\",\"\",!0))}function scRememberArtworkFieldsV681(){document.querySelectorAll(\"[data-sc-art-row]\").forEach(el=>{const r=scPresentationV681.artworkRows[Number(el.dataset.scArtRow)];r&&(r.selected=el.querySelector(\"[data-art-select]\").checked,r.event={city:el.querySelector(\"[data-art-city]\").value,venue:el.querySelector(\"[data-art-venue]\").value,date:el.querySelector(\"[data-art-date]\").value,autoArtwork:!0})})}async function scArtworkReviewV681(b){await scBusyV679(b,async()=>{scRememberArtworkFieldsV681();const rows=scPresentationV681.artworkRows.filter(x=>x.selected);if(!rows.length||rows.length>20)throw Error(\"Select between one and twenty events.\");if(!$2(\"scArtworkFactsV681\").checked)throw Error(\"Confirm the event details before generating previews.\");scPresentationV681.artworkReviews=[];for(const r of rows){const x=await scRequestV679(\"artwork/prepare\",\"POST\",{productId:r.p.id,event:r.event,confirmEventDetails:!0});scPresentationV681.artworkReviews.push(x)}delete $2(\"scDialogV679\").dataset.busy,scArtworkApprovalV681()})}function scArtworkApprovalV681(){scModalV679(\"Approve the new event artwork\",`<p>These images are prepared, <strong>not yet applied</strong>. Review the dates and venue text. Original logos remain unchanged; the background symbol is an opacity-only copy.</p><div class=\"sc-artwork-review-grid\">${scPresentationV681.artworkReviews.map(r=>`<article><img src=\"${esc(r.dataUrl||r.operation.artwork?.url||\"\")}\" alt=\"${esc(r.operation.title)}\"><strong>${esc(r.operation.title)}</strong><p>${esc(r.operation.originalStatus)} \\xB7 ${esc(r.operation.status)}</p><p data-art-result=\"${esc(r.operation.id)}\" role=\"status\">${esc(r.operation.lastError||\"Ready for your approval\")}</p></article>`).join(\"\")}</div><label>Type UPDATE EVENT ARTWORK<input id=\"scArtworkApplyConfirmV681\" autocomplete=\"off\"></label><p class=\"sc-note\">Existing live images will change. Products, descriptions, prices, stock, bookings and customer messages do not change.</p>`,scButtonV679(\"artwork-apply\",\"Apply approved images\",\"\",!0))}async function scArtworkApplyV681(b){await scBusyV679(b,async()=>{if($2(\"scArtworkApplyConfirmV681\").value.trim()!==\"UPDATE EVENT ARTWORK\")throw Error(\"Type UPDATE EVENT ARTWORK to approve the visible image changes.\");for(const row of scPresentationV681.artworkReviews){const el=[...document.querySelectorAll(\"[data-art-result]\")].find(x=>x.dataset.artResult===row.operation.id);try{el&&(el.textContent=\"Checking and updating this image\\u2026\");const r=await scRequestV679(\"artwork/\"+encodeURIComponent(row.operation.id)+\"/apply\",\"POST\",{confirmation:\"UPDATE EVENT ARTWORK\"});row.operation=r.operation,el&&(el.textContent=r.pending?r.message||\"Shopify is processing the image. Resume from Artwork update history.\":\"Featured image verified. Existing images and stock preserved.\")}catch(e){el&&(el.textContent=e.message,el.className=\"sc-inline-error\")}}scNoticeV679(\"Artwork batch finished. Check each result; pending operations can be resumed from Artwork update history. No messages were sent.\")})}async function scArtworkHistoryV681(){const r=await scRequestV679(\"artwork/operations\");scModalV679(\"Artwork update history\",`<p>Resume an unfinished image operation without creating a new product or discarding its existing images.</p>${(r.operations||[]).map(o=>`<article class=\"sc-artwork-history-row\"><strong>${esc(o.title)}</strong><p>${esc(o.status)} \\xB7 ${esc(scDateV679(o.updatedAt))}</p>${o.lastError?`<p class=\"sc-inline-error\">${esc(o.lastError)}</p>`:\"\"}${o.status!==\"complete\"?scButtonV679(\"artwork-resume\",\"Resume approved image check\",`data-id=\"${esc(o.id)}\"`):\"<p>Featured artwork verified.</p>\"}</article>`).join(\"\")||\"<p>No existing-product artwork updates yet.</p>\"}`)}async function scArtworkResumeV681(id,b){confirm(\"Resume this approved artwork update? If Shopify has not finished, this may attach or feature the prepared image on the existing product. It does not publish or send messages.\")&&await scBusyV679(b,async()=>{const r=await scRequestV679(\"artwork/\"+encodeURIComponent(id)+\"/apply\",\"POST\",{confirmation:\"UPDATE EVENT ARTWORK\"});delete $2(\"scDialogV679\").dataset.busy,await scArtworkHistoryV681(),scNoticeV679(r.pending?r.message||\"Shopify image processing is still pending.\":\"Artwork verified.\")})}function scEventLayoutStatusV684(value){return{old_layout:\"Old layout\",current_live:\"Current layout\",draft_ready:\"Draft ready\",approved:\"Approved\",verified:\"Published and verified\",needs_attention:\"Needs attention\",published_needs_verification:\"Published, verify again\"}[value]||String(value||\"Unknown\").replaceAll(\"_\",\" \")}function scEventLayoutPanelV684(){const data=scV679.eventLayoutsV684;if(!data)return'<article class=\"sc-panel\"><p class=\"sc-eyebrow\">LIVE EVENT LAYOUT UPGRADE</p><h3>Loading existing booking pages\\u2026</h3></article>';const rows=data.events||[],approved=rows.filter(x=>x.approved&&!x.attention).length,verified=rows.filter(x=>x.verified).length,ready=rows.filter(x=>x.previewReady).length,attention=rows.filter(x=>x.attention).length,tableRows=rows.map(e=>{const preview=e.previewUrl?scLinkV679(e.previewUrl,\"Open private preview\",!0):\"<span>Prepare preview first</span>\",actions=[];e.status===\"draft_ready\"&&actions.push(scButtonV679(\"layout-approve\",\"Approve\",`data-id=\"${esc(e.id)}\"`,!0)),e.status===\"approved\"&&actions.push(scButtonV679(\"layout-publish-one\",\"Publish this event\",`data-id=\"${esc(e.id)}\"`,!0)),e.status===\"verified\"&&actions.push(scLinkV679(e.liveUrl,\"View live\",!0)),e.attention&&e.publishedVersion===\"V684.0.0\"&&actions.push(scButtonV679(\"layout-recheck\",\"Recheck live\",`data-id=\"${esc(e.id)}\"`));const warning=e.attention?`<small class=\"sc-inline-error\">${esc(e.attention)}</small>`:\"\",editor=e.themeEditorUrl?`<small>${scLinkV679(e.themeEditorUrl,\"Open theme editor\",!0)}</small>`:\"\";return`<tr><td><strong>${esc(e.title)}</strong><small>${esc(e.handle)}</small>${warning}</td><td>${esc(e.date||\"Date needs checking\")}</td><td>${scBadgeV679(scEventLayoutStatusV684(e.status))}</td><td>${preview}${editor}</td><td><div class=\"sc-actions\">${actions.join(\"\")||\"<span>Review preview</span>\"}</div></td></tr>`}),table2=rows.length?scTableV679([\"Event\",\"Date\",\"State\",\"Preview\",\"Actions\"],tableRows):scEmptyV679(\"No live Reserve a Table products found\",\"Orbit will only include ACTIVE, publicly available Card Show booking products.\");return`<article class=\"sc-panel sc-feature\"><p class=\"sc-eyebrow\">LIVE EVENT LAYOUT UPGRADE \\xB7 V684</p><h3>Preview every current vendor booking page before publishing</h3><p>Orbit found <strong>${rows.length}</strong> live Reserve a Table page${rows.length===1?\"\":\"s\"}. The private theme lets you review the new layout, Easify width fix and Vendor Club banner without changing the live product. Approving a preview does not publish anything.</p><div class=\"sc-metrics\"><article><span>Preview ready</span><strong>${ready}</strong><small>Private theme only</small></article><article><span>Approved</span><strong>${approved}</strong><small>Ready for your publish action</small></article><article><span>Verified live</span><strong>${verified}</strong><small>V684 confirmed</small></article><article><span>Needs attention</span><strong>${attention}</strong><small>Blocked until checked</small></article></div><div class=\"sc-actions\">${scButtonV679(\"layout-previews-prepare\",data.theme?.ready?\"Refresh private previews\":\"Prepare private previews\",\"\",!0)}${scButtonV679(\"layout-publish-approved\",\"Publish all approved\",approved?\"\":\"disabled\",!0)}</div><p class=\"sc-note\">The first publish may make the reviewed V684 theme live for event pages already using the current Orbit layout. Orbit blocks that step until those existing layout pages are approved. Older pages remain unchanged until you publish them individually. No email, SMS or launch campaign is sent.</p>${table2}</article>`}async function scRefreshEventLayoutsV684(){return scV679.eventLayoutsV684=await scRequestV679(\"event-layout-migrations\"),scRenderDraftsV67902(),scV679.eventLayoutsV684}async function scPrepareEventLayoutsV684(button2){await scBusyV679(button2,async()=>{let r;for(let i=0;i<45&&(r=await scRequestV679(\"event-layout-migrations/prepare\",\"POST\",{confirmation:\"PREPARE EVENT LAYOUT PREVIEWS\"}),scV679.eventLayoutsV684=r.state||scV679.eventLayoutsV684,scRenderDraftsV67902(),!(!r.pending&&r.state?.theme?.ready));i++)await new Promise(resolve=>setTimeout(resolve,Math.min(2500,Number(r.retryAfterMs)||1500)));await scRefreshEventLayoutsV684(),scV679.eventLayoutsV684?.theme?.ready?scNoticeV679(\"Private previews are ready. Open each event and approve only the pages you checked.\"):scNoticeV679(\"Shopify is still preparing the private theme. Retry Prepare private previews shortly. Nothing live was changed.\")})}async function scApproveEventLayoutV684(id,button2){confirm(\"Approve this private event layout for publication? This approval alone does not change the live storefront.\")&&await scBusyV679(button2,async()=>{scV679.eventLayoutsV684=await scRequestV679(\"event-layout-migrations/\"+encodeURIComponent(id)+\"/approve\",\"POST\",{confirmation:\"APPROVE EVENT LAYOUT\"}),scRenderDraftsV67902(),scNoticeV679(\"Event layout approved. It is still private until you publish it.\")})}async function scPublishEventLayoutV684(id,button2){const row=scV679.eventLayoutsV684?.events?.find(x=>x.id===id);confirm(`Publish the reviewed V684 layout for ${row?.title||\"this event\"}? The existing product, URL, variants, inventory and Easify setup are preserved. No customer message is sent.`)&&await scBusyV679(button2,async()=>{await scRequestV679(\"event-layout-migrations/\"+encodeURIComponent(id)+\"/publish\",\"POST\",{confirmation:\"PUBLISH EVENT LAYOUT\"}),await scRefreshEventLayoutsV684(),scNoticeV679(\"Event layout publication finished. Check the live link shown in the table.\")})}async function scPublishApprovedLayoutsV684(button2){const count=(scV679.eventLayoutsV684?.events||[]).filter(x=>x.approved&&!x.attention).length;count&&confirm(`Publish ${count} approved event layout${count===1?\"\":\"s\"} now? Unapproved old-layout events stay unchanged. No email, SMS or launch campaign is sent.`)&&await scBusyV679(button2,async()=>{const r=await scRequestV679(\"event-layout-migrations/publish-approved\",\"POST\",{confirmation:\"PUBLISH APPROVED EVENT LAYOUTS\"});if(scV679.eventLayoutsV684=r.state||await scRequestV679(\"event-layout-migrations\"),scRenderDraftsV67902(),r.failures?.length){const f=r.failures[0]||{};scNoticeV679(\"Publication stopped safely: \"+(f.title?f.title+\": \":\"\")+(f.error||\"Shopify refused one event. Review the Needs attention row before continuing.\"),!0)}else scNoticeV679(\"All approved event layouts were published and checked.\")})}async function scRecheckEventLayoutV684(id,button2){await scBusyV679(button2,async()=>{await scRequestV679(\"event-layout-migrations/\"+encodeURIComponent(id)+\"/recheck\",\"POST\",{confirmation:\"RECHECK EVENT LAYOUT\"}),await scRefreshEventLayoutsV684(),scNoticeV679(\"Live event layout rechecked.\")})}function scDesignPanelV680(){const design=scV679.designV680||{},products=scV679.drafts.filter(d=>d.kind===\"product\"&&(d.preparedEventKey||d.plan?.eventPresentation)),unpublished=products.filter(d=>d.shopifyProductId&&d.status!==\"published\"),published=products.filter(d=>d.shopifyProductId&&d.status===\"published\");return`<article class=\"sc-design-studio\"><div><p class=\"sc-eyebrow\">EVENT DESIGN & PUBLISHING</p><h3>Preview the event. Publish when you are happy.</h3><p>Use <strong>Preview event page</strong> on an event below. Orbit prepares the private design, follows its progress and opens the correct full-width page. You do not need to prepare or check a theme separately.</p></div>\n    ${design.lastError?`<div class=\"sc-callout sc-warning\" role=\"alert\"><strong>Last preview check</strong><p>${esc(design.lastError)}</p><p>Click Preview event page to resume the same saved copy. No new product is created.</p></div>`:\"\"}\n    ${published.length?`<div class=\"sc-callout sc-warning\"><strong>${published.length} managed event${published.length===1?\" is\":\"s are\"} already live.</strong><p>If the approved design, Reserve a Table menu or Vendor Tables collection did not go live with them, repair the whole launch in one action. This sends no SMS or email.</p>${scButtonV679(\"repair-live-launch\",\"Repair live storefront\",\"\",!0)}</div>`:\"\"}\n    <div class=\"sc-actions\">${scButtonV679(\"polish-all\",\"Update event copy & artwork\",unpublished.length?\"\":\"disabled\")}${scButtonV679(\"photos\",\"Choose original crowd photos\")}${scButtonV679(\"artwork-manager\",\"Refresh other event artwork\")}${scButtonV679(\"launch-review\",\"Open SMS campaigns\")}</div>\n    <p class=\"sc-note\"><strong>Nothing goes live from a preview.</strong> Review & publish explicitly approves the event and its website design. Announcements remain manual-only.</p></article>`}async function scRepairLiveLaunchV68304(button2){confirm(\"Repair all six live 2027 events now? Orbit will prepare and publish the corrected Card Show event design if needed, keep the six live products in their existing collections/menu, and preserve chronological ordering. No SMS or email will be sent.\")&&await scBusyV679(button2,async()=>{let r=null;for(let pass=0;pass<55&&(scNoticeV679(pass?\"Finishing the corrected live event layout\\u2026\":\"Repairing the live event layout\\u2026\"),r=await api(\"/api/admin/card-show-shopify/live-launch-repair\",{method:\"POST\",body:JSON.stringify({confirmation:\"REPAIR LIVE LAUNCH\"}),cacheMs:0,timeoutMs:3e4}),!!r.pending);pass++){const message=r.progress?.message||r.theme?.progress?.message||\"Shopify is preparing the corrected event design\\u2026\";scNoticeV679(message),await new Promise(resolve=>setTimeout(resolve,Math.max(1200,Math.min(3e3,Number(r.retryAfterMs||1500)))))}if(!r||r.pending)throw new Error(\"Shopify is still preparing the corrected event theme. Click Repair live storefront again to resume the same saved repair; no duplicate theme or product will be created.\");await scDraftsV679(),scNoticeV679(`Live storefront repaired: ${Number(r.events?.length||0)} events, ${Number(r.collections?.length||0)} collection${Number(r.collections?.length||0)===1?\"\":\"s\"}, Reserve a Table ordered by date, corrected event design live. No messages sent.`)})}async function scDesignRefreshV680(){const results=await Promise.allSettled([scRequestV679(\"design\"),scRequestV679(\"launches\")]);results[0].status===\"fulfilled\"&&(scV679.designV680=results[0].value),results[1].status===\"fulfilled\"&&(scV679.launchesV680=results[1].value),scRenderDraftsV67902()}function scPolishConfirmV680(){scModalV679(\"Polish the existing private event drafts\",\"<p>This updates the prepared event descriptions and uploads artwork using your unchanged original Orbit logo.</p><p><strong>No new products are created.</strong> Existing table variants, prices, inventory and app fields are not rewritten. Published products are excluded.</p><p>Previous event approvals are cleared so you can review the new presentation.</p>\",scButtonV679(\"polish-confirm\",\"Update private drafts\",\"\",!0))}async function scPolishV680(id){let d=scV679.drafts.find(x=>x._id===id),r;for(let pass=0;pass<8&&(r=await scRunDraftActionV67902(id,\"polish\",{revision:d.revision}),d=r.draft,!!r.pending);pass++)await new Promise(resolve=>setTimeout(resolve,2200));return r.pending&&scNoticeV679(\"Shopify is still processing the artwork. Resume its design update shortly; no duplicate product will be created.\"),r}async function scPolishAllV680(button2){await scBusyV679(button2,async()=>{delete $2(\"scDialogV679\").dataset.busy,scCloseV679();const drafts=scV679.drafts.filter(d=>d.kind===\"product\"&&d.shopifyProductId&&d.status!==\"published\"&&(d.preparedEventKey||d.plan?.eventPresentation));scV679.batch={running:!0,message:\"Updating event presentation\\u2026\",failures:[]};for(let i=0;i<drafts.length;i++){scV679.batch.message=`Updating ${i+1} of ${drafts.length}: ${drafts[i].title}`,scRenderDraftsV67902();try{await scPolishV680(drafts[i]._id)}catch(e){scV679.batch.failures.push({title:drafts[i].title,error:e.message})}}scV679.batch.running=!1,scV679.batch.message=\"Presentation pass finished. Open the artwork and design previews; nothing has been published.\",scRenderDraftsV67902()})}async function scArtworkV680(id){const r=await scRequestV679(\"drafts/\"+encodeURIComponent(id)+\"/artwork\");scModalV679(\"Event artwork\",`<img class=\"sc-artwork-preview\" src=\"${esc(r.dataUrl)}\" alt=\"${esc(r.alt)}\"><p>${esc(r.alt)}</p><p class=\"sc-note\">Original logo composited without redrawing or recolouring. ${r.width} \\xD7 ${r.height} pixels.</p>`)}let scPreviewRunV68202=null;function scPreviewProgressV68202(message,failed=!1,title=\"\"){const run=scPreviewRunV68202,el=$2(\"scEventPreviewProgressV68202\");if(el&&(el.textContent=message,el.className=failed?\"sc-inline-error\":\"sc-preview-progress\"),run?.popup&&!run.popup.closed)try{const doc=run.popup.document,text2=doc.getElementById(\"orbit-preview-progress\");text2&&(text2.textContent=message);const heading=doc.getElementById(\"orbit-preview-title\");heading&&title&&(heading.textContent=title),title&&(doc.title=title+\" \\xB7 Orbit\"),failed&&(doc.body.dataset.state=\"attention\")}catch{}}function scPreviewPopupV68203(reuse){let popup=reuse&&!reuse.closed?reuse:window.open(\"about:blank\",\"_blank\");if(!popup)return null;try{const doc=popup.document;doc.title=\"Preparing Orbit event preview\",doc.documentElement.style.cssText=\"background:#f4f7fb!important;color:#173451!important;color-scheme:light!important\",doc.body.style.cssText=\"font:17px/1.6 system-ui!important;background:#ffffff!important;color:#173451!important;padding:32px!important;max-width:760px!important;margin:40px auto!important;border-radius:16px!important;box-sizing:border-box!important\",doc.body.replaceChildren();const meta=doc.createElement(\"meta\");meta.name=\"viewport\",meta.content=\"width=device-width, initial-scale=1\",doc.head.append(meta);const h=doc.createElement(\"h1\");h.id=\"orbit-preview-title\",h.textContent=\"Preparing your event page\",h.style.cssText=\"font-size:30px!important;line-height:1.2!important;color:#173451!important;margin:0 0 20px!important\";const text2=doc.createElement(\"p\");text2.id=\"orbit-preview-progress\",text2.textContent=\"Checking the existing draft and its private website design\\u2026\",text2.style.color=\"#173451\";const back=doc.createElement(\"button\");back.type=\"button\",back.id=\"orbit-preview-return\",back.textContent=\"Return to Orbit Admin\",back.style.cssText=\"background:#096d9b!important;color:#ffffff!important;border:0!important;border-radius:8px!important;padding:14px 18px!important;font:700 16px system-ui!important;margin:18px 12px 0 0!important;cursor:pointer!important\",back.onclick=()=>window.focus();const close=doc.createElement(\"button\");close.type=\"button\",close.textContent=\"Close this tab\",close.style.cssText=\"background:#eef4f8!important;color:#173451!important;border:1px solid #c8d6e1!important;border-radius:8px!important;padding:14px 18px!important;font:700 16px system-ui!important;margin:18px 0 0!important;cursor:pointer!important\",close.onclick=()=>popup.close();const note=doc.createElement(\"p\");note.textContent=\"This preview does not publish an event or send an announcement.\",note.style.cssText=\"font-size:14px!important;color:#40566b!important;margin-top:24px!important\",doc.body.append(h,text2,back,close,note)}catch{return null}return popup}function scThemeLinkRequiredV68203(result,id,popup){scV679.previewLinkContextV68203={id,popup},$2(\"scDialogTitleV679\").textContent=\"Connect the private design preview\",scPreviewProgressV68202(result.message,!1,\"One setup step in Orbit Admin\");let editor=\"\";try{const u=new URL(result.themeEditorUrl);u.protocol===\"https:\"&&u.hostname===\"admin.shopify.com\"&&u.pathname.startsWith(\"/store/4b1z9j-2x/themes/\")&&!u.username&&!u.password&&!u.port&&(editor=scLinkV679(u.href,\"Open the prepared theme in Shopify\"))}catch{}$2(\"scEventPreviewReadyV68202\").innerHTML=`<div class=\"sc-preview-connect-v68203\"><p><strong>${esc(result.themeName||\"Prepared Orbit event theme\")}</strong></p>${editor}<p>In Shopify, open this theme\\u2019s preview and use <strong>Share preview</strong>. Paste that private link below. You may be asked to sign in to Shopify.</p><p class=\"sc-note\">This connects the same private design for all six events. Do not publish the theme to get a preview link.</p><label for=\"scThemePreviewLinkV68203\">Shopify Share preview link</label><input id=\"scThemePreviewLinkV68203\" type=\"url\" autocomplete=\"off\" spellcheck=\"false\" placeholder=\"https://\\u2026shopifypreview.com/\" aria-describedby=\"scThemePreviewLinkHelpV68203\"><p id=\"scThemePreviewLinkHelpV68203\" class=\"sc-note\">Use the link from this prepared theme, not the product\\u2019s ordinary preview. Orbit checks the event and design before saving it. Shopify\\u2019s shared links expire, so a fresh link may occasionally be needed.</p></div>`,$2(\"scDialogV679\").querySelector(\".sc-dialog-actions\").innerHTML=scButtonV679(\"close\",\"Done\")+scButtonV679(\"event-preview-connect\",\"Connect & open preview\",`data-id=\"${esc(id)}\"`,!0)}async function scConnectThemePreviewV68203(id){const value=$2(\"scThemePreviewLinkV68203\")?.value.trim();if(!value){const e=$2(\"scDialogErrorV679\");e.hidden=!1,e.textContent=\"Paste the private Share preview link from Shopify first.\",$2(\"scThemePreviewLinkV68203\")?.focus();return}return scEventPreviewV68202(id,value)}async function scEventPreviewV68202(id,themePreviewUrl=\"\"){if(scPreviewRunV68202){scNoticeV679(\"A preview is already being prepared. Its progress is shown in the open dialog.\");return}const d=scV679.drafts.find(x=>x._id===id);if(!d)return;const saved=scV679.previewLinkContextV68203,popup=scPreviewPopupV68203(themePreviewUrl&&saved?.id===id?saved.popup:null),run={id,popup,cancelled:!1};scPreviewRunV68202=run,scModalV679(\"Preparing your event preview\",`<h3>${esc(d.title)}</h3><p id=\"scEventPreviewProgressV68202\" class=\"sc-preview-progress\" role=\"status\" aria-live=\"polite\">Checking the existing draft and its private design\\u2026</p><div id=\"scEventPreviewReadyV68202\"></div><p class=\"sc-note\">The same Shopify product and private theme are reused. No product or theme is published, and no SMS is sent.</p>`,scButtonV679(\"event-preview-cancel\",\"Stop waiting\"));const started=Date.now();try{for(;!run.cancelled&&$2(\"scDialogV679\")?.open;){if(Date.now()-started>300*1e3)throw new Error(\"Shopify has not finished within five minutes. Your progress is saved. Resume Preview event page later; do not create another event.\");let r;try{r=await scRequestV679(\"drafts/\"+encodeURIComponent(id)+\"/event-preview\",\"POST\",{confirmation:\"PREPARE EVENT PREVIEW\",...themePreviewUrl?{themePreviewUrl}:{}})}catch(error){throw error}if(run.cancelled||!$2(\"scDialogV679\")?.open)break;if(r.design&&(scV679.designV680=r.design,scRenderDraftsV67902()),r.draft&&scApplyDraftV67902(r.draft),r.connectionRequired){scThemeLinkRequiredV68203(r,id,popup),scNoticeV679(\"Connect the private Shopify theme link in the open dialog. No product or theme has been published.\");return}if(r.url){const safe=scSafeUrlV679(r.url,!0);if(!safe)throw new Error(\"The preview address did not match the Card Show store.\");scPreviewProgressV68202(\"Opening the checked Shopify preview. No publication or announcements have occurred.\",!1,\"Event preview ready\"),$2(\"scDialogTitleV679\").textContent=\"Your event preview is ready\",$2(\"scDialogV679\").querySelector(\".sc-dialog-actions\").innerHTML=scButtonV679(\"close\",\"Done\"),$2(\"scEventPreviewReadyV68202\").innerHTML=scLinkV679(safe,\"Open event preview\",!0),popup&&!popup.closed&&(popup.opener=null,popup.location.replace(safe)),scV679.previewLinkContextV68203=null,scNoticeV679(\"Preview opened. Check the single full-width image and booking form before approving publication.\");return}if(!r.pending)throw new Error(r.message||\"Shopify has not returned the prepared event preview.\");const p=r.progress||r.design?.progress||{};scPreviewProgressV68202((p.message||\"Preparing the private design\\u2026\")+(p.filesChecked?\" \\xB7 \"+p.filesChecked+\" theme files checked\":\"\")+\" \\xB7 \"+Math.floor((Date.now()-started)/1e3)+\" seconds\"),await new Promise(resolve=>setTimeout(resolve,Math.max(1e3,Math.min(4e3,r.retryAfterMs||1500))))}scPreviewProgressV68202(\"Stopped waiting. Progress is saved in Orbit Admin. No event has been published.\",!1,\"Preview waiting stopped\")}catch(error){scPreviewProgressV68202(error.message||String(error),!0,\"Preview could not open\"),$2(\"scDialogTitleV679\")&&($2(\"scDialogTitleV679\").textContent=\"Preview needs attention\"),$2(\"scDialogV679\")?.open&&($2(\"scDialogV679\").querySelector(\".sc-dialog-actions\").innerHTML=scButtonV679(\"close\",\"Done\")+scButtonV679(\"event-preview\",\"Try again\",`data-id=\"${esc(id)}\"`,!0)),scNoticeV679(error.message||String(error),!0);const status=await api(\"/api/admin/card-show-shopify/drafts/\"+encodeURIComponent(id),{method:\"GET\",cacheMs:0,timeoutMs:8e3}).catch(()=>null);status?.draft&&scApplyDraftV67902(status.draft)}finally{scPreviewRunV68202===run&&(scPreviewRunV68202=null)}}async function scDesignPrepareV680(){const d=scV679.drafts.find(d2=>d2.kind===\"product\"&&d2.shopifyProductId&&d2.plan?.eventPresentation);if(d)return scEventPreviewV68202(d._id);scNoticeV679(\"Choose an existing event draft to preview.\",!0)}async function scDesignPreviewV680(id){return scEventPreviewV68202(id)}function scEventReviewV68202(id){const d=scV679.drafts.find(x=>x._id===id);if(!d)return;scV679.eventPublishingV68202=d;const preview=d.eventPreview?.url?scLinkV679(d.eventPreview.url,\"Open event preview\",!0):\"\";scModalV679(\"Review & publish this event\",`<h3>${esc(d.title)}</h3><p>Open the real page, give it a quick visual check and publish when you are happy. Ordinary copy, artwork or layout mistakes are not publication blockers \u2014 they can be corrected afterwards.</p>${preview}<div class=\"sc-callout\"><strong>Orbit will still stop a genuinely unsafe publication.</strong><p>Wrong product identity, invalid/missing table variants, bad prices, overselling, stock-location problems or an unconfirmed Shopify provider result remain protected.</p></div>`,scButtonV679(\"event-publish-confirm\",\"Publish now\",\"\",!0))}function scPublishedPlacementNoticeV828(result,success=''){\n const exposure=result?.storefrontExposure||result?.draft?.storefrontExposure;\n if(exposure?.status==='needs_attention'||result?.placementComplete===false){scNoticeV679('This event is live. Its menus and collections still need updating. Open Published events and choose Retry menus & collections.',true);return false;}\n scNoticeV679(success||(exposure?.status==='verified'?'Shopify confirmed this event is live, with its menus and collections updated.':'Shopify confirmed this event is live.'));return true;\n}\nasync function scRetryPublishedPlacementV828(id,button){\n await scBusyV679(button,async()=>{\n  const result=await scRequestV679('drafts/'+encodeURIComponent(id)+'/storefront-placement','POST',{confirmation:'RETRY PLACEMENT'});\n  if(result.draft)scApplyDraftV67902(result.draft);\n  await scDraftsV679();scPublishedPlacementNoticeV828(result,'Menus and collections are up to date.');\n });\n}\nasync function scEventPublishV68202(button2){await scBusyV679(button2,async()=>{const d=scV679.eventPublishingV68202;if(!d)throw new Error(\"Choose an event first.\");const r=await scRequestV679(\"drafts/\"+encodeURIComponent(d._id)+\"/event-publish\",\"POST\",{confirmation:\"PUBLISH NOW\",revision:d.revision});r.draft&&scApplyDraftV67902(r.draft),delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),scPublishedPlacementNoticeV828(r),await scDraftsV679().catch(()=>{})})}async function scLaunchReviewV680(){activateModule(\"vendors\",\"club-settings\"),await setVendorSettingsSectionV641(\"sms\",{focus:!0})}function scRootV679(){return $2(\"orbitCardShowShopifyV678\")}function scTargetV679(pane){return scRootV679()?.querySelector(`[data-sc-content=\"${pane}\"]`)}function scMoneyV679(value){return value==null||!Number.isFinite(Number(value))?\"Not available\":new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency:\"GBP\"}).format(Number(value))}function scDateV679(value){if(!value)return\"Not recorded\";const d=new Date(value);return Number.isNaN(d.getTime())?String(value):new Intl.DateTimeFormat(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\",timeZone:\"Europe/London\"}).format(d)}function scBadgeV679(value){const k=String(value||\"unknown\").toLowerCase(),labels={draft:\"Draft \\xB7 not live\",preview_ready:\"Preview ready\",preview_pending:\"Preview processing\",needs_reconciliation:\"Needs checking\",reconciling:\"Checking Shopify\",building:\"Building preview\",publishing:\"Publishing\",published:\"Published\",active:\"Live\",unlisted:\"Unlisted \\xB7 no announcement\",archived:\"Archived\",passed:\"Passed\",failed:\"Needs attention\",attention:\"Check required\",ready:\"Ready\"};return`<span class=\"sc-badge sc-${esc(k)}\">${esc(labels[k]||k.replace(/_/g,\" \"))}</span>`}function scSafeUrlV679(value,storeOnly=!1){try{const u=new URL(value);return u.protocol!==\"https:\"||u.username||u.password||storeOnly&&![\"orbitcardshow.co.uk\",\"www.orbitcardshow.co.uk\",\"4b1z9j-2x.myshopify.com\"].includes(u.hostname)&&!(/^[a-z0-9-]+\\.shopifypreview\\.com$/.test(u.hostname)&&(u.pathname===\"/products_preview\"&&u.searchParams.has(\"preview_key\")||/^\\/products\\/[a-zA-Z0-9_%.-]+\\/?$/.test(u.pathname)))||u.port?\"\":u.href}catch{return\"\"}}function scLinkV679(url,label,storeOnly=!1){const safe=scSafeUrlV679(url,storeOnly);return safe?`<a class=\"sc-link-button\" href=\"${esc(safe)}\" target=\"_blank\" rel=\"noopener noreferrer\">${esc(label)} <span aria-hidden=\"true\">\\u2197</span></a>`:\"\"}function scButtonV679(action,label,attrs=\"\",primary=!1){return`<button type=\"button\" class=\"${primary?\"sc-primary\":\"secondary\"}\" data-sc-action=\"${action}\" ${attrs}>${label}</button>`}function scEmptyV679(title,copy=\"\"){return`<div class=\"sc-empty\"><strong>${esc(title)}</strong><p>${esc(copy)}</p></div>`}function scNoticeV679(message,error=!1){const el=$2(\"scNoticeV679\");el&&(el.hidden=!message,el.className=\"sc-notice\"+(error?\" sc-error\":\"\"),el.textContent=String(message||\"\"))}function scErrorV679(pane,error){const el=scRootV679()?.querySelector(`[data-sc-error=\"${pane}\"]`);el&&(el.hidden=!error,el.innerHTML=error?`<strong>This section needs attention</strong><p>${esc(error.message||error)}</p>${scButtonV679(\"retry\",\"Retry this section\",`data-pane=\"${pane}\"`)}`:\"\")}function scLoadingV679(pane,on){const el=scRootV679()?.querySelector(`[data-sc-loading=\"${pane}\"]`);el&&(el.hidden=!on,el.textContent=on?\"Reading Shopify\\u2026\":\"\"),scRootV679()?.querySelector(`[data-card-shopify-pane=\"${pane}\"]`)?.setAttribute(\"aria-busy\",String(on))}function setCardShowShopifyPaneV678(pane=\"overview\"){const wanted=Object.hasOwn(scLabelsV679,pane)?pane:\"overview\";scV679.pane=wanted,rememberOrbitSubtab(\"card-shopify\",wanted),document.querySelectorAll(\"[data-card-shopify-pane]\").forEach(el=>{const active=el.dataset.cardShopifyPane===wanted;el.classList.toggle(\"active\",active),el.hidden=!active}),document.querySelectorAll('[data-workspace-group=\"card-shopify\"] [data-card-shopify-open]').forEach(el=>{const active=el.dataset.cardShopifyOpen===wanted;el.classList.toggle(\"active\",active),el.setAttribute(\"aria-selected\",String(active)),el.setAttribute(\"aria-current\",active?\"page\":\"false\")});const subtitle=$2(\"scSectionNameV679\");subtitle&&(subtitle.textContent=scLabelsV679[wanted])}async function scRequestV679(path,method=\"GET\",body=null){return api(\"/api/admin/card-show-shopify/\"+path,{method,...body===null?{}:{body:JSON.stringify(body)},cacheMs:0,timeoutMs:6e4})}async function scBusyV679(button2,work){if(button2?.disabled)return;const label=button2?.textContent,dialog=$2(\"scDialogV679\"),inDialog=button2&&dialog?.contains(button2);button2&&(button2.disabled=!0,button2.setAttribute(\"aria-busy\",\"true\"),button2.textContent=\"Working\\u2026\"),inDialog&&(dialog.dataset.busy=\"1\"),scNoticeV679(\"\");try{return await work()}catch(error){if(inDialog&&dialog.open){const box=$2(\"scDialogErrorV679\");box.hidden=!1,box.textContent=error.message||String(error),dialog.querySelector(\".sc-dialog-body\")?.scrollTo({top:0}),box.focus({preventScroll:!0})}else scNoticeV679(error.message||String(error),!0)}finally{button2&&(button2.disabled=!1,button2.removeAttribute(\"aria-busy\"),button2.textContent=label),inDialog&&delete dialog.dataset.busy}}function scTableV679(headers,rows){return`<div class=\"sc-table-wrap\" tabindex=\"0\" role=\"region\" aria-label=\"Scrollable results\"><table class=\"sc-table\"><thead><tr>${headers.map(h=>`<th>${esc(h)}</th>`).join(\"\")}</tr></thead><tbody>${rows.join(\"\")}</tbody></table></div>`}function scMoreV679(pane,info,count){return scV679.cursors[pane]=info?.hasNextPage?info.endCursor:null,`<div class=\"sc-pagination\"><span>${count} loaded${info?.hasNextPage?\" \\xB7 more available\":\"\"}</span>${info?.hasNextPage?scButtonV679(\"more\",\"Load more\",`data-pane=\"${pane}\"`):\"<span>End of results</span>\"}</div>`}function scMergeV679(previous,rows,more){return more?[...new Map([...previous,...rows].map(r=>[r.id,r])).values()]:rows}function scWarningsV679(rows=[]){return rows.length?`<div class=\"sc-callout sc-warning\">${rows.map(r=>`<p>${esc(r.resource?r.resource+\": \":\"\")}${esc(r.error||r)}</p>`).join(\"\")}</div>`:\"\"}async function scOverviewV679(){const now=new Date,from=new Date(now.getTime()-30*864e5),query=\"overview?from=\"+encodeURIComponent(from.toISOString())+\"&to=\"+encodeURIComponent(now.toISOString()),data=await scRequestV679(query);scV679.overview=data,scV679.loaded.overview=Date.now();const c=data.connection||{},m=data.storeMetrics||{},status=$2(\"scStoreStatusV679\");status&&(status.textContent=m.healthy?\"Connected \u00B7 store healthy\":\"Store needs attention\",status.classList.toggle(\"sc-connected\",m.healthy===!0));const target=scTargetV679(\"overview\");target.innerHTML=`<div class=\"sc-metrics\"><article><span>Live event listings</span><strong>${esc(m.activeEventListings??\"\u2014\")}</strong><small>Published Orbit table-booking events</small></article><article><span>Store health</span><strong>${m.healthy?\"Healthy\":\"Needs attention\"}</strong><small>${esc(c.shop?.primaryDomain?.host||\"Orbit Card Show\")}</small></article><article><span>Revenue</span><strong>${scMoneyV679(m.revenue)}</strong><small id=\"scOverviewRevenueLabelV821\">Last 30 days</small></article><article><span>Orders</span><strong id=\"scOverviewOrdersV821\">${esc(m.orders??0)}</strong><small id=\"scOverviewOrdersLabelV821\">Last 30 days</small></article></div><article class=\"sc-panel\"><div class=\"sc-panel-header\"><div><p class=\"sc-eyebrow\">STORE PERFORMANCE</p><h3>Choose a reporting period</h3><p>Paid Shopify orders only. Changing this range does not alter the store.</p></div></div><div class=\"sc-form-grid\"><label>Period<select id=\"scOverviewRangeV821\"><option value=\"7\">Last 7 days</option><option value=\"30\" selected>Last 30 days</option><option value=\"custom\">Custom dates</option></select></label><label>From<input id=\"scOverviewFromV821\" type=\"date\" value=\"${from.toISOString().slice(0,10)}\"></label><label>To<input id=\"scOverviewToV821\" type=\"date\" value=\"${now.toISOString().slice(0,10)}\"></label><div class=\"sc-action-row\"><button type=\"button\" id=\"scOverviewUpdateV821\">Update totals</button></div></div></article><article class=\"sc-panel\"><h3>Store connection</h3><dl class=\"sc-facts\"><div><dt>Expected store</dt><dd>4b1z9j-2x.myshopify.com</dd></div><div><dt>Connected store</dt><dd>${esc(c.actualStore||\"Not verified\")}</dd></div><div><dt>Currency</dt><dd>${esc(c.shop?.currencyCode||\"GBP\")}</dd></div></dl>${scWarningsV679(data.readErrors)}</article>`;const range=$2(\"scOverviewRangeV821\"),start=$2(\"scOverviewFromV821\"),end=$2(\"scOverviewToV821\"),button=$2(\"scOverviewUpdateV821\");async function update(){await scBusyV679(button,async()=>{const a=start.value?new Date(start.value+\"T00:00:00Z\"):new Date(Date.now()-30*864e5),b=end.value?new Date(end.value+\"T23:59:59Z\"):new Date,data2=await scRequestV679(\"overview?from=\"+encodeURIComponent(a.toISOString())+\"&to=\"+encodeURIComponent(b.toISOString())),mm=data2.storeMetrics||{},cards=target.querySelectorAll(\".sc-metrics article strong\"),label=range.value===\"custom\"?\"Custom dates\":\"Last \"+range.value+\" days\";cards[2]&&(cards[2].textContent=scMoneyV679(mm.revenue)),cards[3]&&(cards[3].textContent=String(mm.orders||0)),$2(\"scOverviewRevenueLabelV821\").textContent=label,$2(\"scOverviewOrdersLabelV821\").textContent=label})}button.addEventListener(\"click\",update),range.addEventListener(\"change\",()=>{if(range.value===\"custom\")return;const days=Number(range.value),to=new Date,fr=new Date(to.getTime()-days*864e5);start.value=fr.toISOString().slice(0,10),end.value=to.toISOString().slice(0,10),update()}),data}function scRenderAuditV679(){for(const id of[\"scAuditSummaryV679\",\"scAuditResultsV679\"]){const el=$2(id);el&&scV679.audit.length&&(el.innerHTML=scV679.audit.map(r=>`<div class=\"sc-audit-row\"><strong>${esc(scLabelsV679[r.step]||r.step)}</strong>${scBadgeV679(r.status)}<small>${esc(r.error||(r.warnings||[]).map(w=>w.error).join(\"; \")||\"Read-only check completed\")}</small></div>`).join(\"\"))}}async function scAuditV679(button2){await scBusyV679(button2,async()=>{scV679.audit=[];for(const step of[\"schema\",\"products\",\"inventory\",\"collections\",\"pages\",\"files\",\"themes\",\"integrations\"]){const row=await scRequestV679(\"audit/check\",\"POST\",{step});scV679.audit.push(row),scRenderAuditV679()}const failed=scV679.audit.filter(r=>r.status!==\"passed\").length;scNoticeV679(failed?`${failed} section${failed===1?\" needs\":\"s need\"} attention. The results are saved in History.`:\"Store read checks completed. Results are saved in History.\")})}async function scProductsV679(more=!1){const q=$2(\"scProductSearchV679\")?.value||\"\",status=$2(\"scProductStatusV679\")?.value||\"\",after=more?scV679.cursors.products:null,data=await scRequestV679(`products?limit=25&q=${encodeURIComponent(q)}&status=${encodeURIComponent(status)}${after?\"&after=\"+encodeURIComponent(after):\"\"}`);scV679.products=scMergeV679(scV679.products,data.nodes||[],more);const rows=scV679.products;return scTargetV679(\"products\").innerHTML=rows.length?scTableV679([\"Product\",\"Status\",\"Options\",\"Available\",\"Actions\"],rows.map(p=>`<tr><td><div class=\"sc-product-cell\">${p.featuredMedia?.image?.url?`<img src=\"${esc(scSafeUrlV679(p.featuredMedia.image.url))}\" alt=\"\" loading=\"lazy\">`:'<span class=\"sc-product-icon\" aria-hidden=\"true\">\\u25A4</span>'}<div><strong>${esc(p.title)}</strong><small>${esc(p.handle)}</small></div></div></td><td>${scBadgeV679(p.status)}</td><td>${p.variantsCount?.count??\"Not returned\"}</td><td>${p.totalInventory??\"Not returned\"}</td><td><div class=\"sc-actions\">${scButtonV679(\"inspect\",\"Inspect\",`data-id=\"${esc(p.id)}\"`)}${scButtonV679(\"clone\",\"Copy to draft\",`data-id=\"${esc(p.id)}\"`)}${scLinkV679(p.onlineStoreUrl,\"View live\",!0)}</div></td></tr>`))+scMoreV679(\"products\",data.pageInfo,rows.length):scEmptyV679(\"No matching products\",\"Try another name or status.\"),data}async function scInventoryV679(more=!1){const q=$2(\"scInventorySearchV679\")?.value||\"\",after=more?scV679.cursors.inventory:null,data=await scRequestV679(`inventory?limit=15&q=${encodeURIComponent(q)}${after?\"&after=\"+encodeURIComponent(after):\"\"}`),variants=(data.products||[]).flatMap(p=>(p.variants?.nodes||[]).map(v=>({...v,product:{id:p.id,title:p.title,status:p.status}})));return scV679.inventory=scMergeV679(scV679.inventory,variants,more),scV679.locations=data.locations||[],scTargetV679(\"inventory\").innerHTML=scV679.inventory.length?scTableV679([\"Product & table option\",\"Location\",\"Available\",\"On hand\",\"Actions\"],scV679.inventory.flatMap((v,i)=>{const levels=v.inventoryItem?.inventoryLevels?.nodes||[];return levels.length?levels.map((l,j)=>{const qty=n=>l.quantities?.find(q2=>q2.name===n)?.quantity;return`<tr><td><strong>${esc(v.product.title)}</strong><small>${esc(v.title)}${v.sku?\" \\xB7 \"+esc(v.sku):\"\"}</small></td><td>${esc(l.location?.name||\"Not returned\")}<small>${l.location?.isActive?\"Active location\":\"Inactive location\"}</small></td><td><strong>${qty(\"available\")??\"Not returned\"}</strong></td><td>${qty(\"on_hand\")??\"Not returned\"}</td><td>${v.inventoryItem?.tracked===!0&&l.location?.isActive===!0&&Number.isInteger(qty(\"available\"))?scButtonV679(\"adjust\",\"Adjust stock\",`data-index=\"${i}\" data-level=\"${j}\"`):\"No adjustment available\"}</td></tr>`}):[`<tr><td><strong>${esc(v.product.title)}</strong><small>${esc(v.title)}</small></td><td colspan=\"4\">${v.inventoryItem?.tracked?\"No location returned\":\"Inventory is not tracked\"}</td></tr>`]}))+scMoreV679(\"inventory\",data.pageInfo,scV679.inventory.length):scEmptyV679(\"No inventory matched\",\"Try searching by product or SKU.\"),data}async function scCollectionsV679(more=!1){const after=more?scV679.cursors.collections:null,data=await scRequestV679(\"collections?limit=15\"+(after?\"&after=\"+encodeURIComponent(after):\"\"));scV679.collections=scMergeV679(scV679.collections,data.nodes||[],more);const rows=scV679.collections;return scTargetV679(\"collections\").innerHTML=rows.length?scTableV679([\"Collection\",\"Products\",\"Publication\",\"View\"],rows.map(c=>`<tr><td><strong>${esc(c.title)}</strong><small>${esc(c.handle)}</small></td><td>${c.productsCount?.count??\"Not returned\"}</td><td>${scBadgeV679(c.publicationStatus)}</td><td>${scLinkV679(c.onlineStoreUrl,\"View collection\",!0)||\"Not publicly verified\"}</td></tr>`))+scMoreV679(\"collections\",data.pageInfo,rows.length):scEmptyV679(\"No collections returned\"),data}function scSortDraftsV67902(rows){return rows.sort((a,b)=>a.preparedEventKey&&b.preparedEventKey?String(a.eventDate||\"\").localeCompare(String(b.eventDate||\"\")):String(b.updatedAt||\"\").localeCompare(String(a.updatedAt||\"\")))}async function scDraftsV679(){const request=++scV679.draftListRequest,[data,prepared,eventLayouts,menuInfo]=await Promise.all([scRequestV679(\"drafts?limit=250\"+(scV679.draftHistoryV746?\"&status=published\":\"\")),scRequestV679(\"prepared-events\"),scRequestV679(\"event-layout-migrations\"),scRequestV679(\"navigation-viewport\").catch(e=>({message:e.message}))]);if(request!==scV679.draftListRequest)return data;scV679.savedPreparedKeysV746=data.savedPreparedEventKeys||[],scV679.drafts=scSortDraftsV67902(data.drafts||[]),scV679.prepared=prepared.events||[],scV679.eventLayoutsV684=eventLayouts,scV679.menuInfoV726=menuInfo,scRenderDraftsV67902(),await scDesignRefreshV680();for(const d of scV679.drafts)[\"building\",\"reconciling\"].includes(d.status)&&!scV679.draftWatchers[d._id]&&scWatchDraftV67902(d._id,!0);return data}function scApplyDraftV67902(draft){if(!draft?._id)return;scV679.draftListRequest++;const i=scV679.drafts.findIndex(d=>d._id===draft._id),old=scV679.drafts[i];old&&Date.parse(old.updatedAt)>Date.parse(draft.updatedAt)||(draft.preparedEventKey&&(scV679.savedPreparedKeysV746=[...new Set([...scV679.savedPreparedKeysV746||[],draft.preparedEventKey])]),!scV679.draftHistoryV746&&[\"published\",\"archived\",\"cancelled\",\"superseded\"].includes(draft.status)?scV679.drafts=scV679.drafts.filter(d=>d._id!==draft._id):i<0?scV679.drafts.push(draft):scV679.drafts[i]=draft,scSortDraftsV67902(scV679.drafts),JSON.stringify(old)!==JSON.stringify(draft)&&scRenderDraftsV67902())}function scRenderDraftsV67902(){const target=scTargetV679(\"drafts\");if(!target)return;const layoutToolsOpen=target.querySelector(\".sc-layout-tools-v746\")?.open===!0,openDetails=[...target.querySelectorAll(\"[data-sc-draft]\")].flatMap(card=>[...card.querySelectorAll(\"details\")].map((d,i)=>d.open?card.dataset.scDraft+\":\"+i:null).filter(Boolean)),active=document.activeElement,focus=target.contains(active)?{action:active.dataset?.scAction,id:active.dataset?.id,href:active.getAttribute?.(\"href\")}:null,preparedIds=new Set([...scV679.drafts.map(d=>d.preparedEventKey),...scV679.savedPreparedKeysV746||[]]),pending=scV679.prepared.filter(e=>!preparedIds.has(e.key)),completedPublished=scV679.drafts.filter(d=>[\"published\",\"live\",\"completed_published\"].includes(String(d.status||\"\").toLowerCase())),activeDrafts=scV679.draftHistoryV746?scV679.drafts.filter(d=>d.kind===\"product\"&&[\"published\",\"live\",\"completed_published\"].includes(String(d.status||\"\").toLowerCase())):scV679.drafts.filter(d=>!completedPublished.includes(d)),recovery=activeDrafts.filter(d=>d.kind===\"product\"&&d.shopifyProductId&&[\"needs_reconciliation\",\"preview_failed\"].includes(d.status)),running=scV679.batch?.running;if(target.innerHTML=`<div class=\"sc-review-heading-v746\"><div><p class=\"sc-eyebrow\">YOUR STORE CHANGES</p><h3>${scV679.draftHistoryV746?\"Published events\":\"Pending approvals\"}</h3><p>${scV679.draftHistoryV746?\"Published table-booking events stay available here with their live links and publication status. Viewing them never republishes anything.\":\"Only changes awaiting your review appear here. Published pages and older layout tools are kept out of the way.\"}</p></div>${scButtonV679(\"draft-history\",scV679.draftHistoryV746?\"Back to pending approvals\":\"Published events\")}</div><details class=\"sc-layout-tools-v746\"><summary>Store layout tools &amp; older previews</summary>${scMenuRepairPanelV685(scV679.menuInfoV726||{})}${scEventLayoutPanelV684()}${scDesignPanelV680()}</details>${pending.length?`<article class=\"sc-panel sc-brief\"><div><p class=\"sc-eyebrow\">YOUR 2027 EVENT BRIEF</p><h3>${pending.length} event${pending.length===1?\"\":\"s\"} ready to prepare</h3><p>The descriptions, dates and table choices are prepared. Select the working layout and stock location before creating the private Shopify pages.</p></div>${scButtonV679(\"prepare\",\"Prepare the six event drafts\",\"\",!0)}<div class=\"sc-brief-list\">${scV679.prepared.map(e=>`<div><strong>${esc(e.title)}</strong><span>${e.variants.map(v=>esc(v.title)+\" \\xB7 \"+scMoneyV679(v.price)).join(\" / \")}</span></div>`).join(\"\")}</div></article>`:\"\"}\n      ${recovery.length?`<div class=\"sc-batch-bar sc-recovery-bar\"><div><strong>Your Shopify drafts already exist</strong><p>Recheck their preview links and saved details. This does not create another product, change Shopify or send announcements.</p></div>${scButtonV679(\"recheck-existing\",\"Recheck existing Shopify previews\",running?\"disabled\":\"\",!0)}</div>`:\"\"}\n      ${scV679.drafts.some(d=>d.preparedEventKey&&d.status===\"draft\")?`<div class=\"sc-batch-bar\"><div><strong>Build your private event previews</strong><p>Creates Shopify DRAFT products one at a time. Nothing is put on sale or announced. Shopify may use its secure preview domain for the real storefront layout.</p></div>${scButtonV679(\"build-six\",\"Build prepared event previews\",running?\"disabled\":\"\",!0)}</div>`:\"\"}\n      <div id=\"scBatchProgressV679\" class=\"sc-batch-progress\" role=\"status\" aria-live=\"polite\">${scBatchTextV67902()}</div>\n      ${!scV679.draftHistoryV746&&completedPublished.length?`<div class=\"sc-published-note-v726\">${completedPublished.length} previously published items hidden from active drafts. Their saved records remain available for auditing.</div>`:\"\"}<div class=\"sc-draft-grid\">${activeDrafts.filter(d=>scV679.draftHistoryV746||!(d.kind===\"theme\"&&d.designVersion)).map(scDraftCardV679).join(\"\")}</div>${!activeDrafts.length&&!pending.length?scEmptyV679(scV679.draftHistoryV746?\"No published events\":\"No pending approvals\",scV679.draftHistoryV746?\"Published table-booking events will appear here after Shopify confirms publication.\":\"New drafts will appear here when they are ready for your review.\"):\"\"}`,layoutToolsOpen){const tools=target.querySelector(\".sc-layout-tools-v746\");tools&&(tools.open=!0)}for(const card of target.querySelectorAll(\"[data-sc-draft]\"))[...card.querySelectorAll(\"details\")].forEach((d,i)=>{openDetails.includes(card.dataset.scDraft+\":\"+i)&&(d.open=!0)});if(focus){for(const el of target.querySelectorAll(\"button,a\"))if(focus.href&&el.getAttribute(\"href\")===focus.href||focus.action&&el.dataset.scAction===focus.action&&el.dataset.id===focus.id){el.focus({preventScroll:!0});break}}}function scBatchTextV67902(){const b=scV679.batch;return b?`<strong>${esc(b.message||\"\")}</strong>${b.failures?.length?scWarningsV679(b.failures.map(f=>f.title+\": \"+f.error)):\"\"}`:\"\"}function scDifferenceMarkupV67902(d){const rows=d.validationDifferences||[];return rows.length?`<details class=\"sc-readback-differences\" open><summary>What needs checking (${rows.length})</summary><p>Viewing this draft is safe. These differences block publication until resolved and checked again.</p>${scTableV679([\"Detail\",\"Saved in Orbit\",\"Returned by Shopify\"],rows.map(r=>`<tr><td><strong>${esc(r.label||r.field)}</strong></td><td><pre>${esc(r.expected)}</pre></td><td><pre>${esc(r.actual)}</pre></td></tr>`))}</details>`:\"\"}function scDraftCardV679(d){const product=d.kind===\"product\",op=scV679.draftOperations[d._id],busy=!!op||[\"building\",\"publishing\",\"reconciling\",\"polishing\"].includes(d.status),built=[\"preview_ready\",\"preview_pending\"].includes(d.status),canBuild=!busy&&[\"draft\",\"preview_failed\"].includes(d.status),needsCheck=[\"needs_reconciliation\",\"preview_pending\",\"building\",\"reconciling\"].includes(d.status),canReview=!busy&&product&&d.status===\"preview_ready\",canPublish=!busy&&d.status===\"preview_ready\"&&(product?!(d.publicationBlockers||[]).length:d.kind===\"navigation\"||d.verificationVersion===\"V679\"),editable=!busy&&product&&(d.canEdit===!0||[\"draft\",\"preview_ready\",\"preview_failed\"].includes(d.status)),status=op?op.action===\"build\"?\"building\":\"reconciling\":d.status,progress=op?.message||(busy&&d.progress?.message?d.progress.message:\"\"),isEvent=product&&!!d.plan?.eventPresentation,readyEventPreview=isEvent&&d.eventPreview?.version===\"V684.0.0\"&&d.eventPreview.revision===d.revision&&d.eventPreview.targetHash===scV679.designV680?.targetHash&&Date.now()-new Date(d.eventPreview.checkedAt).getTime()<1440*60*1e3&&!d.eventPreviewError&&scSafeUrlV679(d.eventPreview.url,!0),preview=readyEventPreview?`<div class=\"sc-preview-access\"><strong>Event preview</strong><p>The current private design. Nothing is live until you approve publication.</p>${scLinkV679(readyEventPreview,\"Open event preview\",!0)}${scButtonV679(\"event-preview\",\"Refresh preview link\",`data-id=\"${esc(d._id)}\"`)}</div>`:isEvent&&d.shopifyProductId?`<div class=\"sc-preview-access\">${d.eventPreviewError?`<p class=\"sc-inline-error\" role=\"alert\">${esc(d.eventPreviewError.message)}</p>`:\"\"}<strong>Full-width event preview</strong><p>Open the existing event with the current private design. Your saved Shopify preview connection is reused automatically.</p>${scButtonV679(\"event-preview\",\"Preview event page\",`data-id=\"${esc(d._id)}\"`,!0)}</div>`:product&&d.previewUrl?`<div class=\"sc-preview-access\">${scLinkV679(d.previewUrl,\"View Shopify website preview\",!0)}</div>`:\"\";return`<article class=\"sc-draft-card\" data-sc-draft=\"${esc(d._id)}\" aria-busy=\"${busy}\"><div class=\"sc-card-meta\"><span>${esc(product?\"TABLE BOOKING\":d.kind)}</span>${scBadgeV679(status)}</div><h3>${esc(d.title)}</h3>\n      ${progress?`<p class=\"sc-progress-note\" role=\"status\">${esc(progress)}</p>`:\"\"}${preview}\n      ${product?`<div class=\"sc-variant-summary\">${(d.plan?.variants||[]).map(v=>`<div><span>${esc(v.title)}<small>Planned stock: ${v.inventoryQuantity??\"Not set\"}</small></span><strong>${scMoneyV679(v.price)}</strong></div>`).join(\"\")}</div>`:\"\"}\n      ${(d.operatorQuestions||[]).length?`<details><summary>Details to confirm (${d.operatorQuestions.length})</summary><ul>${d.operatorQuestions.map(t=>`<li>${esc(t)}</li>`).join(\"\")}</ul></details>`:\"\"}\n      ${d.lastError?`<p class=\"sc-inline-error\" role=\"alert\">${esc(d.lastError)}</p>`:\"\"}${scDifferenceMarkupV67902(d)}${d.status==='published'&&d.storefrontExposure?.status==='needs_attention'?'<p class=\"sc-inline-error\" role=\"status\">This event is live. Menus and collections still need updating.</p>':''}\n      ${product&&d.status===\"preview_ready\"?`<p class=\"sc-note\">${d.review?\"Review saved. Publication still requires your approval.\":\"Check the real website preview, vendor questions and display-case hire before approval.\"}</p>`:\"\"}\n      ${product&&d.artwork?.url?`<img class=\"sc-event-thumb\" src=\"${esc(d.artwork.url)}\" alt=\"${esc(d.artwork.alt||\"Event artwork\")}\" loading=\"lazy\">`:\"\"}\n      <div class=\"sc-card-actions\">${product&&(d.preparedEventKey||d.plan?.eventPresentation)?scButtonV679(\"venue\",\"Venue & map\",`data-id=\"${esc(d._id)}\" ${busy?\"disabled\":\"\"}`):\"\"}${product&&(d.preparedEventKey||d.plan?.eventPresentation)?scButtonV679(\"artwork\",\"View artwork\",`data-id=\"${esc(d._id)}\"`):\"\"}${product&&d.shopifyProductId&&d.status!==\"published\"&&(d.preparedEventKey||d.plan?.eventPresentation)?scButtonV679(\"polish\",d.artwork?.status===\"attached\"?\"Update design & artwork\":\"Add design & artwork\",`data-id=\"${esc(d._id)}\" ${busy?\"disabled\":\"\"}`):\"\"}${canBuild?scButtonV679(\"build\",\"Build Shopify preview\",`data-id=\"${esc(d._id)}\"`,!0):\"\"}${!product&&d.previewUrl?scLinkV679(d.previewUrl,\"View Shopify website preview\",!0):\"\"}${canReview?scButtonV679(isEvent?\"event-review\":\"review\",isEvent?\"Review & publish\":d.review?\"Review details\":\"Review & approve\",`data-id=\"${esc(d._id)}\"`):\"\"}${editable?scButtonV679(\"edit\",\"Edit draft\",`data-id=\"${esc(d._id)}\"`):\"\"}\n      ${(needsCheck||built)&&product||d.kind===\"theme\"&&needsCheck?scButtonV679(\"recheck\",\"Recheck Shopify\",`data-id=\"${esc(d._id)}\" ${op?\"disabled\":\"\"}`):\"\"}${[\"published\",\"live\",\"completed_published\"].includes(String(d.status||\"\").toLowerCase())&&d.liveUrl?scLinkV679(d.liveUrl,\"View live event\",!0):\"\"}${d.shopifyAdminUrl?scLinkV679(d.shopifyAdminUrl,\"Open in Shopify admin\",!0):\"\"}${canPublish&&!isEvent?scButtonV679(\"publish\",\"Publish live\",`data-id=\"${esc(d._id)}\"`):\"\"}${d.status==='published'&&d.storefrontExposure?.status==='needs_attention'?scButtonV679('retry-event-placement','Retry menus & collections',`data-id=\"${esc(d._id)}\" ${busy?'disabled':''}`):''}${product?\"\":scButtonV679(\"local-preview\",\"Inspect change\",`data-id=\"${esc(d._id)}\"`)}${product&&d.status===\"preview_ready\"&&d.shopifyProductId&&[\"thornbury-2027-09-11-reserve-a-table\",\"uttoxeter-2027-09-25-reserve-a-table\",\"cheltenham-2027-11-20-reserve-a-table\",\"cambridge-2027-12-04-reserve-a-table\",\"thornbury-2027-12-11-reserve-a-table\"].includes(d.plan?.handle)?scButtonV679(\"reconcile-live\",\"Link existing live Shopify event\",`data-id=\"${esc(d._id)}\" ${busy?\"disabled\":\"\"}`):\"\"}</div>\n      \n      ${product&&d.shopifyProductId&&!d.previewUrl?'<p class=\"sc-note\">The product exists, but its native website preview link has not been returned or verified yet. Recheck Shopify, or open the product in Shopify admin and use Preview. Do not activate it to see it.</p>':\"\"}\n      <div class=\"sc-card-status-footer\">${d.status===\"published\"?\"Published to Shopify\":d.shopifyProductId?\"Shopify product created \\xB7 awaiting approval\":\"Saved in Orbit\"} \\xB7 ${esc(scDateV679(d.updatedAt))}</div></article>`}async function scRefreshDraftV67902(id){const data=await scRequestV679(\"drafts/\"+encodeURIComponent(id));return scApplyDraftV67902(data.draft),data}function scWatchDraftV67902(id,passive=!1){scV679.draftWatchers[id]?.stop();const start=Date.now(),watch={stopped:!1,timer:null,stop(){this.stopped=!0,clearTimeout(this.timer),scV679.draftWatchers[id]===this&&delete scV679.draftWatchers[id]}};scV679.draftWatchers[id]=watch;const tick=async()=>{if(watch.stopped||Date.now()-start>12e4){watch.stop();return}try{if(!document.hidden&&scV679.pane===\"drafts\"){const data=await scRequestV679(\"drafts/\"+encodeURIComponent(id));if(watch.stopped)return;if(scApplyDraftV67902(data.draft),passive&&![\"building\",\"reconciling\",\"polishing\"].includes(data.draft?.status)){watch.stop();return}}}catch(error){if(error.status===401||error.status===403||error.code===\"ADMIN_SESSION_CHANGED\"){watch.stop();return}}watch.stopped||(watch.timer=setTimeout(tick,2e3))};return watch.timer=setTimeout(tick,1200),watch}async function scRunDraftActionV67902(id,action,body={}){if(scV679.draftOperations[id])throw new Error(\"This draft already has an action in progress.\");const previousUpdate=scV679.drafts.find(d=>d._id===id)?.updatedAt;scV679.draftListRequest++,scV679.draftOperations[id]={action,message:action===\"polish\"?\"Updating this existing draft, its copy and brand-safe artwork. No duplicate product is created.\":action===\"build\"?\"Building the private Shopify preview. The result will appear here automatically.\":\"Checking the existing Shopify draft and its preview link. No product is being created.\"},scRenderDraftsV67902();const watch=scWatchDraftV67902(id);let result,error;try{result=await scRequestV679(`drafts/${encodeURIComponent(id)}/${action}`,\"POST\",body),watch.stop(),scApplyDraftV67902(result.draft)}catch(e){error=e,watch.stop(),e.data?.draft&&scApplyDraftV67902(e.data.draft)}finally{watch.stop(),delete scV679.draftOperations[id],scV679.draftListRequest++;try{await scRefreshDraftV67902(id)}catch{error||scNoticeV679(\"The action returned, but its latest status could not be refreshed. Use Recheck Shopify; do not build it again.\",!0)}scRenderDraftsV67902();const d=scV679.drafts.find(x=>x._id===id);[\"building\",\"reconciling\",\"polishing\"].includes(d?.status)&&scWatchDraftV67902(id,!0)}const recovered=scV679.drafts.find(d=>d._id===id);if(error&&!error.status&&recovered?.status===\"preview_ready\"&&!recovered.lastError&&recovered.updatedAt!==previousUpdate&&recovered.operationIntent===(action===\"build\"?\"building\":\"reconciling\")&&(result={success:!0,draft:recovered,recoveredFromReadback:!0},error=null),error)throw error;return result}function scMenuRepairPanelV685(info){return`<article class=\"sc-panel\"><p class=\"sc-eyebrow\">LONG EVENT MENU</p><h3>Keep every event within reach</h3><p>Make the desktop Reserve a Table dropdown scroll inside the screen. This is a separately confirmed, backed-up repair of the current live Card Show layout only. It does not publish a different theme or change events, bookings, menus, prices or existing approvals.</p><p>${esc(info?.message||\"Nothing changes until you click Apply and confirm.\")}</p><div class=\"sc-actions\">${info?.installed?scBadgeV679(\"verified\"):scButtonV679(\"menu-scroll-apply\",\"Apply menu scrolling fix\",\"\",!0)}${scButtonV679(\"menu-scroll-check\",\"Recheck\")}${info?.canUndo?scButtonV679(\"menu-scroll-undo\",\"Undo menu repair\"):\"\"}</div><small>${esc(info?.themeName||\"Verified Card Show live theme\")} ${info?.status?\" \\xB7 \"+esc(String(info.status).replace(/_/g,\" \")):\"\"}</small></article>`}async function scThemesV679(){const data=await scRequestV679(\"themes\");return scV679.themes=data.themes||[],scTargetV679(\"theme\").innerHTML=`<div class=\"sc-callout\">Other theme changes are staged on an unpublished Card Show theme. The Collectors Club theme is a separate store and is never used here.</div><div class=\"sc-live-theme-v726\">${scV679.themes.filter(t=>t.live).map(t=>`<article class=\"sc-panel sc-live-theme-card-v726\"><p class=\"sc-eyebrow\">CURRENT LIVE THEME</p><h3>${esc(t.name)}</h3>${scBadgeV679(\"active\")}<div class=\"sc-actions\">${scLinkV679(t.previewUrl,\"View live theme\",!0)}</div></article>`).join(\"\")||'<article class=\"sc-panel\"><h3>Live theme not verified</h3><p>Check the Shopify store connection before making theme changes.</p></article>'}</div><h3 class=\"sc-preview-label-v726\">Preview and other themes</h3><div class=\"sc-draft-grid\">${scV679.themes.filter(t=>!t.live).map(t=>`<article class=\"sc-panel\"><p class=\"sc-eyebrow\">PREVIEW THEME</p><h3>${esc(t.name)}</h3>${scBadgeV679(t.processing?\"preview_pending\":t.processingFailed?\"failed\":t.live?\"active\":\"ready\")}<div class=\"sc-actions\">${scLinkV679(t.previewUrl,\"View theme\",!0)}${!t.live&&!t.processing&&!t.processingFailed?scButtonV679(\"theme-edit\",\"Stage a file change\",`data-id=\"${esc(t.id)}\"`):\"\"}</div></article>`).join(\"\")}</div><p class=\"sc-note\">Theme-file writes need Shopify's additional entitlement. A green connection does not prove that entitlement. Orbit checks actual write results and reads the files back before offering publication.</p>`,data}async function scPagesV679(more=!1){const after=more?scV679.cursors.pages:null,data=await scRequestV679(\"pages-navigation?limit=100\"+(after?\"&after=\"+encodeURIComponent(after):\"\"));return scV679.pages=scMergeV679(scV679.pages,data.pages||[],more),scV679.menus=data.menus||[],scTargetV679(\"pages\").innerHTML=scWarningsV679(data.readErrors)+`<article class=\"sc-panel\"><h3>Pages</h3><p>Edit Shopify pages directly here. Delete remains deliberately confirmed.</p>${scV679.pages.length?scTableV679([\"Page\",\"Status\",\"Manage\"],scV679.pages.map(p=>`<tr><td><strong>${esc(p.title)}</strong><small>/pages/${esc(p.handle)}</small></td><td>${scBadgeV679(p.isPublished?\"published\":\"draft\")}</td><td>${scButtonV679(\"page-edit\",\"Edit\",`data-id=\"${esc(p.id)}\"`)} ${scButtonV679(\"page-delete\",\"Delete\",`data-id=\"${esc(p.id)}\"`)}</td></tr>`))+scMoreV679(\"pages\",data.pageInfo,scV679.pages.length):scEmptyV679(\"No pages returned\")}</article><article class=\"sc-panel\"><h3>Navigation menus</h3><div class=\"sc-menu-list\">${scV679.menus.map(m=>`<div><span><strong>${esc(m.title)}</strong><small>${m.items?.length||0} top-level links${m.isDefault?\" \u00B7 default menu\":\"\"}</small></span>${scButtonV679(\"menu-edit\",\"Edit a staged copy\",`data-id=\"${esc(m.id)}\"`)}</div>`).join(\"\")||\"<p>No menus returned.</p>\"}</div></article>`,data}async function scFilesV679(more=!1){const after=more?scV679.cursors.files:null,data=await scRequestV679(\"files?limit=25\"+(after?\"&after=\"+encodeURIComponent(after):\"\"));return scV679.files=scMergeV679(scV679.files,data.nodes||[],more),scTargetV679(\"files\").innerHTML=`<div class=\"sc-actions\">${scButtonV679(\"photos\",\"Choose original crowd photos\")}${scButtonV679(\"artwork-manager\",\"Refresh existing event artwork\")}${scButtonV679(\"artwork-history\",\"Artwork update history\")}</div><div class=\"sc-media-grid\">${scV679.files.map(f=>`<article class=\"sc-panel\">${f.image?.url?`<img src=\"${esc(scSafeUrlV679(f.image.url))}\" loading=\"lazy\" alt=\"${esc(f.alt||\"Store image\")}\">`:'<div class=\"sc-file-icon\">FILE</div>'}<strong>${esc(f.alt||f.id.split(\"/\").pop())}</strong>${scBadgeV679(f.fileStatus)}${scLinkV679(f.image?.url||f.url,\"Open file\")}</article>`).join(\"\")}</div>`+scMoreV679(\"files\",data.pageInfo,scV679.files.length),data}async function scIntegrationsV679(){const data=await scRequestV679(\"integrations\"),std=data.standardIntegrations||[],signals=data.productSignals||[];return scV679.integrations=data,scTargetV679(\"integrations\").innerHTML=`<article class=\"sc-panel sc-feature\"><p class=\"sc-eyebrow\">STANDARD EVENT INTEGRATIONS</p><h3>Easify and Display Case hire should be on every table-booking event</h3><p>This page is a health and exception view. You should not have to re-prove the standard booking setup every time you publish a show.</p><div class=\"sc-metrics\">${std.map(x=>`<article><span>Required</span><strong>${esc(x.name)}</strong><small>${esc(x.purpose)}</small></article>`).join(\"\")}<article><span>Events checked</span><strong>${signals.length}</strong><small>Live/staged product references</small></article></div></article>${scWarningsV679(data.readErrors)}<article class=\"sc-panel\"><h3>Event integration status</h3><p>Only investigate an event here when Orbit reports missing or conflicting evidence.</p><div class=\"sc-menu-list\">${signals.map(p=>`<div><span><strong>${esc(p.title)}</strong><small>Layout: ${esc(p.templateSuffix||\"Default\")}</small></span>${scButtonV679(\"integration\",\"Diagnostics\",`data-id=\"${esc(p.id)}\"`)}</div>`).join(\"\")||\"<p>No event products returned.</p>\"}</div></article>`,data}async function scHistoryV679(){const data=await scRequestV679(\"history?limit=150\");return scTargetV679(\"history\").innerHTML=`<article class=\"sc-panel\"><h3>Read-only store checks</h3>${scButtonV679(\"audit\",\"Run store checks\")}<div id=\"scAuditResultsV679\">${scEmptyV679(\"No checks run in this session\",\"Saved checks appear below.\")}</div></article><article class=\"sc-panel\"><h3>Change & check history</h3>${(data.rows||[]).length?scTableV679([\"Activity\",\"When\",\"Details\"],data.rows.map(r=>`<tr><td><strong>${esc(String(r.action||\"\").replace(/_/g,\" \"))}</strong></td><td>${esc(scDateV679(r.at))}</td><td>${r.result?.status?scBadgeV679(r.result.status):\"\"}${esc(r.step||r.title||r.draftId||r.shopifyProductId||r.store||\"\")}${r.result?.error?`<small>${esc(r.result.error)}</small>`:\"\"}</td></tr>`)):scEmptyV679(\"No Shopify activity recorded\")}</article><article class=\"sc-panel\"><h3>Vendor Club order archive</h3><p>The established order sync and booking history remain separate from store editing.</p>${scButtonV679(\"sync\",\"Sync order archive\")}</article>`,scRenderAuditV679(),data}async function loadCardShowShopifyPaneV678(pane=scV679.pane,force=!1,more=!1){setCardShowShopifyPaneV678(pane);const requested=scV679.pane;if(scV679.requests[requested])return scV679.requests[requested];if(!force&&!more&&Date.now()-(scV679.loaded[requested]||0)<15e3)return;const loaders={overview:scOverviewV679,products:scProductsV679,inventory:scInventoryV679,collections:scCollectionsV679,drafts:scDraftsV679,theme:scThemesV679,pages:scPagesV679,files:scFilesV679,integrations:scIntegrationsV679,history:scHistoryV679};scLoadingV679(requested,!0),scErrorV679(requested,null);const task=(async()=>{try{const result=await loaders[requested](more);return scV679.loaded[requested]=Date.now(),result}catch(error){return scErrorV679(requested,error),{success:!1,error:error.message}}finally{scLoadingV679(requested,!1),delete scV679.requests[requested]}})();return scV679.requests[requested]=task,task}function scSanitizeHtmlV679(html){const doc=new DOMParser().parseFromString(String(html||\"\"),\"text/html\"),allowed=new Set([\"P\",\"BR\",\"DIV\",\"SPAN\",\"SECTION\",\"FIGURE\",\"FIGCAPTION\",\"IMG\",\"BUTTON\",\"H2\",\"H3\",\"H4\",\"STRONG\",\"B\",\"EM\",\"I\",\"UL\",\"OL\",\"LI\",\"A\",\"TABLE\",\"THEAD\",\"TBODY\",\"TR\",\"TH\",\"TD\",\"BLOCKQUOTE\"]),styleKeys=new Set([\"margin\",\"margin-top\",\"padding\",\"padding-top\",\"border\",\"border-left\",\"border-radius\",\"background\",\"background-color\",\"color\",\"font-family\",\"font-size\",\"font-weight\",\"line-height\",\"text-align\",\"display\",\"gap\",\"grid-template-columns\",\"align-items\",\"justify-content\",\"flex-wrap\",\"width\",\"height\"]);for(const el of[...doc.body.querySelectorAll(\"*\")].reverse()){if([\"SCRIPT\",\"STYLE\",\"IFRAME\",\"OBJECT\",\"EMBED\",\"FORM\",\"INPUT\",\"SVG\",\"LINK\",\"META\"].includes(el.tagName)){el.remove();continue}if(!allowed.has(el.tagName)){el.replaceWith(...el.childNodes);continue}const attrs={},classes=[...el.classList].filter(c=>/^orbit-(event|map)-[a-z0-9-]+$/.test(c));classes.length&&(attrs.class=classes.join(\" \"));for(const k of[\"data-orbit-city\",\"data-orbit-venue\",\"data-orbit-date\",\"data-map-title\"])el.hasAttribute(k)&&(attrs[k]=el.getAttribute(k));const map=el.getAttribute(\"data-map-src\");if(map)try{const u=new URL(map);u.protocol===\"https:\"&&u.hostname===\"www.google.com\"&&u.pathname===\"/maps/embed\"&&u.searchParams.has(\"pb\")&&(attrs[\"data-map-src\"]=u.href)}catch{}const style=[];for(const k of el.style){const v=el.style.getPropertyValue(k);styleKeys.has(k)&&v&&!/url\\s*\\(|expression|javascript|[<>]/i.test(v)&&style.push(k+\":\"+v)}if(style.length&&(attrs.style=style.join(\";\")),el.tagName===\"A\"){const u=el.getAttribute(\"href\");u&&(scSafeUrlV679(u)||/^\\/(?!\\/)/.test(u))&&(attrs.href=u,attrs.rel=\"noopener noreferrer\",attrs.target=\"_blank\")}if(el.tagName===\"IMG\")try{const u=new URL(el.getAttribute(\"src\"));if(u.protocol!==\"https:\"||u.hostname!==\"cdn.shopify.com\")throw 0;attrs.src=u.href,attrs.alt=el.getAttribute(\"alt\")||\"Previous Orbit event\",attrs.loading=\"lazy\";for(const k of[\"width\",\"height\"])/^\\d{1,5}$/.test(el.getAttribute(k)||\"\")&&(attrs[k]=el.getAttribute(k))}catch{el.remove();continue}if(el.tagName===\"BUTTON\"){if(!classes.includes(\"orbit-map-load\")){el.replaceWith(...el.childNodes);continue}attrs.type=\"button\"}for(const a of[...el.attributes])el.removeAttribute(a.name);for(const[k,v]of Object.entries(attrs))el.setAttribute(k,v)}return doc.body.innerHTML}function scFrameV679(html){return`<iframe class=\"sc-html-preview\" sandbox=\"\" title=\"Product description preview\" srcdoc=\"${esc(`<!doctype html><html><head><meta http-equiv=\"Content-Security-Policy\" content=\"default-src 'none'; style-src 'unsafe-inline'; img-src https: data:; form-action 'none'\"><style>body{font:16px/1.6 system-ui;color:#17334a;padding:24px;max-width:780px;margin:auto}h2,h3{line-height:1.25}a{color:#086899}table{border-collapse:collapse;width:100%}th,td{padding:10px;border-bottom:1px solid #dce5eb;text-align:left}</style></head><body>`+String(html||\"\")+\"</body></html>\")}\"></iframe>`}function scModalV679(title,body,footer=\"\"){const dialog=$2(\"scDialogV679\");return scV679.dialogVersion++,dialog.setAttribute(\"aria-labelledby\",\"scDialogTitleV679\"),dialog.innerHTML=`<div class=\"sc-dialog-header\"><div><p class=\"sc-eyebrow\">ORBIT CARD SHOW \\xB7 SHOPIFY</p><h2 id=\"scDialogTitleV679\" tabindex=\"-1\">${esc(title)}</h2></div>${scButtonV679(\"close\",\"Close\")}</div><div class=\"sc-dialog-body\"><div id=\"scDialogErrorV679\" class=\"sc-callout sc-error\" hidden role=\"alert\" tabindex=\"-1\"></div>${body}</div><div class=\"sc-dialog-actions\">${footer?scButtonV679(\"close\",\"Cancel\")+footer:scButtonV679(\"close\",\"Done\")}</div>`,dialog.open||dialog.showModal(),$2(\"scDialogTitleV679\").focus({preventScroll:!0}),dialog}function scCloseV679(){const dialog=$2(\"scDialogV679\");dialog&&!dialog.dataset.busy&&dialog.close()}async function scInspectV679(id){const data=await scRequestV679(\"product?id=\"+encodeURIComponent(id)),p=data.product;scV679.inspected=p,scModalV679(p.title,`<div class=\"sc-actions\">${scBadgeV679(p.status)}${scLinkV679(p.onlineStoreUrl,\"View live page\",!0)}${scLinkV679(p.onlineStorePreviewUrl,\"View Shopify preview\",!0)}</div><dl class=\"sc-facts\"><div><dt>Page layout</dt><dd>${esc(p.templateSuffix||\"Default\")}</dd></div><div><dt>Product type</dt><dd>${esc(p.productType)}</dd></div><div><dt>Table options</dt><dd>${p.variants?.nodes?.length||0}</dd></div><div><dt>Available stock</dt><dd>${p.totalInventory??\"Not returned\"}</dd></div></dl><h3>Prices & options</h3>${scTableV679([\"Option\",\"Price\",\"Available\",\"Stock tracking\"],(p.variants?.nodes||[]).map(v=>`<tr><td>${esc(v.title)}</td><td>${scMoneyV679(v.price)}</td><td>${v.inventoryQuantity??\"Not returned\"}</td><td>${v.inventoryItem?.tracked?\"Enabled\":\"Not enabled\"}</td></tr>`))}<h3>Page description</h3>${scFrameV679(p.descriptionHtml)}<div class=\"sc-callout sc-warning\">Easify assignment and the additional display-case charge are not proved by these Shopify fields.</div><details><summary>Tags, fields & publication</summary><pre>${esc(JSON.stringify({tags:p.tags,metafields:p.metafields?.nodes,collections:p.collections?.nodes,publications:p.resourcePublicationsV2?.nodes},null,2))}</pre></details>`,scButtonV679(\"integration\",\"Inspect Easify evidence\",`data-id=\"${esc(id)}\"`)+scButtonV679(\"clone\",\"Copy to draft\",`data-id=\"${esc(id)}\"`,!0))}async function scIntegrationV679(id){const e=await scRequestV679(\"integration-evidence?productId=\"+encodeURIComponent(id));scModalV679(\"Easify & booking evidence\",`<h3>${esc(e.title)}</h3><div class=\"sc-callout sc-warning\"><strong>New-product assignment is not yet proved</strong><p>No test order or payment was created by this check.</p></div><dl class=\"sc-facts\"><div><dt>Template</dt><dd>${esc(e.templateSuffix)}</dd></div><div><dt>Recent matching saved orders</dt><dd>${Number(e.orderEvidence?.matchingOrders||0)}</dd></div></dl><h3>Fields found on existing orders</h3>${(e.orderEvidence?.propertyKeys||[]).length?`<ul>${e.orderEvidence.propertyKeys.map(k=>`<li>${esc(k)}</li>`).join(\"\")}</ul>`:\"<p>No matching order-property evidence was returned. This does not prove the form is absent.</p>\"}<h3>Theme signals</h3>${(e.themeSignals||[]).length?e.themeSignals.map(s=>`<p><strong>${esc(s.filename)}</strong><br>${esc(s.signal||s.appBlock)}${s.enabled===!1?\" \\xB7 disabled\":\"\"}</p>`).join(\"\"):\"<p>No app signal returned.</p>\"}${scWarningsV679(e.warnings)}`)}async function scSetupDataV679(){if((!scV679.overview||Date.now()-(scV679.loaded.overview||0)>6e4)&&await scOverviewV679(),!scV679.referenceProducts.length){const data=await scRequestV679(\"products?status=ACTIVE&limit=25\");scV679.referenceProducts=data.nodes||[],scV679.referenceHasMore=data.pageInfo?.hasNextPage===!0,scV679.referenceCursor=data.pageInfo?.endCursor||null}}async function scMoreReferencesV679(button2){await scBusyV679(button2,async()=>{if(!scV679.referenceHasMore||!scV679.referenceCursor)return;const data=await scRequestV679(\"products?status=ACTIVE&limit=25&after=\"+encodeURIComponent(scV679.referenceCursor)),select=$2(\"scReferenceV679\"),selected=select.value;scV679.referenceProducts=scMergeV679(scV679.referenceProducts,data.nodes||[],!0),scV679.referenceHasMore=data.pageInfo?.hasNextPage===!0,scV679.referenceCursor=data.pageInfo?.endCursor||null,select.innerHTML='<option value=\"\">Choose a working event</option>'+scV679.referenceProducts.map(p=>`<option value=\"${esc(p.id)}\">${esc(p.title)}</option>`).join(\"\"),select.value=selected,button2.hidden=!scV679.referenceHasMore})}function scLocationsOptionsV679(selected){return'<option value=\"\">Choose a stock location</option>'+(scV679.overview?.resources?.locations||scV679.locations||[]).filter(l=>l.isActive).map(l=>`<option value=\"${esc(l.id)}\" ${l.id===selected?\"selected\":\"\"}>${esc(l.name)}${l.address?.city?\" \\xB7 \"+esc(l.address.city):\"\"}</option>`).join(\"\")}async function scPrepareV679(){await scSetupDataV679(),scModalV679(\"Prepare your six event drafts\",`<p>Use an established event to carry over its real page layout and tax settings. Easify assignment is checked separately, not assumed.</p><label>Working event to use as a reference<select id=\"scReferenceV679\"><option value=\"\">Choose a working event</option>${scV679.referenceProducts.map(p=>`<option value=\"${esc(p.id)}\">${esc(p.title)}</option>`).join(\"\")}</select></label>${scV679.referenceHasMore?scButtonV679(\"reference-more\",\"Load more reference events\"):\"\"}<label>Stock location<select id=\"scLocationV679\">${scLocationsOptionsV679()}</select></label><div class=\"sc-callout\">This saves six drafts in Orbit. The next step creates private Shopify previews. No publication, SMS or email is triggered.</div><p class=\"sc-note\">Repeating this action keeps existing prepared drafts rather than overwriting your edits.</p>`,scButtonV679(\"save-prepared\",\"Prepare drafts\",\"\",!0))}async function scPrepareSaveV679(button2){await scBusyV679(button2,async()=>{const locationId=$2(\"scLocationV679\").value,referenceProductId=$2(\"scReferenceV679\").value;if(!locationId||!referenceProductId)throw new Error(\"Choose the stock location and an existing event.\");await scRequestV679(\"prepared-events\",\"POST\",{locationId,referenceProductId}),delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),await scDraftsV679(),scNoticeV679(\"Six event drafts prepared. Use Build prepared event previews to create their private Shopify pages.\")})}async function scBuildV679(id){const d=scV679.drafts.find(x=>x._id===id);let confirmation=\"\";if(d?.kind===\"theme\"&&(confirmation=prompt(\"Type APPLY TO PREVIEW THEME to write the saved files only to the unpublished theme.\"),confirmation!==\"APPLY TO PREVIEW THEME\"))return;const data=await scRunDraftActionV67902(id,\"build\",{confirmation});return scNoticeV679(data.pending?\"Shopify is processing the preview. Use Recheck Shopify shortly.\":\"Private preview built. Nothing has been made live or announced.\"),data}async function scRecheckV67902(id){const result=await scRunDraftActionV67902(id,\"reconcile\");return scNoticeV679(\"Shopify read-back completed. Open the website preview on the draft card. No Shopify write was made.\"),result}async function scBatchDraftsV67902(button2,action){scV679.batch?.running||await scBusyV679(button2,async()=>{const work=scV679.drafts.filter(d=>!scV679.draftOperations[d._id]&&(action===\"build\"?d.preparedEventKey&&d.status===\"draft\":d.kind===\"product\"&&d.shopifyProductId&&[\"needs_reconciliation\",\"preview_failed\"].includes(d.status))),batch={running:!0,action,total:work.length,completed:0,failures:[],message:\"\"};scV679.batch=batch;try{for(const[i,d]of work.entries()){batch.message=`${action===\"build\"?\"Building\":\"Checking\"} ${i+1} of ${work.length}: ${d.title}`,scRenderDraftsV67902();try{await scRunDraftActionV67902(d._id,action),batch.completed++}catch(error){batch.failures.push({title:d.title,error:error.message})}}}finally{batch.running=!1;const links=scV679.drafts.filter(d=>work.some(w=>w._id===d._id)&&d.previewUrl).length;batch.message=`${batch.completed} ${action===\"build\"?\"built\":\"checked\"}; ${links} website preview link${links===1?\"\":\"s\"} available.${batch.failures.length?\" \"+batch.failures.length+\" need attention; see each card.\":\" Nothing is live or announced.\"}`,scRenderDraftsV67902(),scNoticeV679(batch.message,batch.failures.length>0)}})}async function scBuildSixV679(button2){return scBatchDraftsV67902(button2,\"build\")}function scVariantFieldsV679(v={},index=0){return`<div class=\"sc-edit-variant\" data-sc-variant=\"${index}\"><label>Table choice<input data-v-field=\"title\" value=\"${esc(v.title||\"6ft Table\")}\" required></label><label>Price (\\xA3)<input data-v-field=\"price\" type=\"number\" min=\"0.01\" step=\"0.01\" value=\"${esc(v.price??\"\")}\" required></label><label>Inventory quantity<input data-v-field=\"inventoryQuantity\" type=\"number\" min=\"0\" max=\"100000\" step=\"1\" value=\"${esc(v.inventoryQuantity??\"\")}\" required></label><label>Stock location<select data-v-field=\"locationId\">${scLocationsOptionsV679(v.locationId)}</select></label><label>SKU<input data-v-field=\"sku\" value=\"${esc(v.sku||\"\")}\"></label><input type=\"hidden\" data-v-field=\"taxable\" value=\"${v.taxable===!0?\"true\":\"false\"}\"><input type=\"hidden\" data-v-field=\"requiresShipping\" value=\"${v.requiresShipping===!0?\"true\":\"false\"}\"><input type=\"hidden\" data-v-field=\"compareAtPrice\" value=\"${esc(v.compareAtPrice??\"\")}\"></div>`}async function scEditorV679(id=null){await scSetupDataV679();const d=id?scV679.drafts.find(x=>x._id===id):null;if(id&&!d)throw new Error(\"Reload the draft list first.\");scV679.editing=d;const p=d?.plan||{title:\"\",optionName:\"Table type\",productType:\"Event\",vendor:\"Orbit Card Show\",variants:[{title:\"6ft Table\",price:\"\",inventoryQuantity:0,tracked:!0}]},eventPresentation=p.eventPresentation||scV679.prepared.find(e=>e.key===d?.preparedEventKey)?.eventPresentation||{};scModalV679(d?\"Edit event draft\":\"Create a product draft\",`<label>Product title<input id=\"scEditTitleV679\" value=\"${esc(p.title)}\" required></label><div class=\"sc-form-grid\"><label>Page address<input id=\"scEditHandleV679\" value=\"${esc(p.handle||\"\")}\" placeholder=\"Created from the title\" ${d?.shopifyProductId?\"readonly\":\"\"}></label><label>Page layout<input id=\"scEditTemplateV679\" value=\"${esc(p.templateSuffix||\"\")}\" placeholder=\"Default\"></label></div><fieldset class=\"sc-artwork-settings\"><legend>Automatic event artwork</legend><p class=\"sc-note\">The location, venue and date are printed with your original logo. No table capacities appear on the image.</p><div class=\"sc-form-grid\"><label>Town or city<input id=\"scEventCityV680\" value=\"${esc(eventPresentation.city||\"\")}\" placeholder=\"Uttoxeter\"></label><label>Venue<input id=\"scEventVenueV680\" value=\"${esc(eventPresentation.venue||\"\")}\" placeholder=\"Uttoxeter Racecourse\"></label><label>Event date<input id=\"scEventDateV680\" type=\"date\" value=\"${esc(eventPresentation.date||\"\")}\"></label></div><label class=\"sc-checkbox-row\"><input id=\"scEventArtworkV680\" type=\"checkbox\" ${eventPresentation.autoArtwork!==!1?\"checked\":\"\"}><span>Automatically create and attach original-logo artwork when building this event</span></label></fieldset><label id=\"scDescriptionLabelV679\">Page description</label><div class=\"sc-rich-toolbar\">${scButtonV679(\"format-bold\",\"Bold\")}${scButtonV679(\"format-list\",\"Bullet list\")}</div><div id=\"scEditDescriptionV679\" class=\"sc-rich-editor\" role=\"textbox\" aria-labelledby=\"scDescriptionLabelV679\" aria-multiline=\"true\" contenteditable=\"true\">${scSanitizeHtmlV679(p.descriptionHtml)}</div><h3>Table choices & stock</h3><p class=\"sc-note\">Stock quantities stay in Shopify inventory. They are not added to the description.</p><div id=\"scVariantRowsV679\">${(p.variants||[]).map(scVariantFieldsV679).join(\"\")}</div>${d?.shopifyProductId?\"\":scButtonV679(\"add-variant\",\"Add table choice\")}<details><summary>Images & search details</summary><label>Image URLs (one per line)<textarea id=\"scEditImagesV679\" rows=\"3\" placeholder=\"Verified HTTPS image URLs\">${esc((p.imageUrls||[]).join(`\n`))}</textarea></label><label>Search title<input id=\"scEditSeoTitleV679\" value=\"${esc(p.seo?.title||\"\")}\"></label><label>Search description<textarea id=\"scEditSeoDescriptionV679\" rows=\"2\">${esc(p.seo?.description||\"\")}</textarea></label><label>Tags (comma separated)<input id=\"scEditTagsV679\" value=\"${esc((p.tags||[]).join(\", \"))}\"></label></details><div class=\"sc-callout\">Saving changes cancels any previous approval. Rebuild the preview before reviewing it again. Existing Shopify variant identities are preserved.</div>`,scButtonV679(\"save-product\",\"Save draft\",\"\",!0)),$2(\"scEditDescriptionV679\").addEventListener(\"paste\",event=>{event.preventDefault();const text2=event.clipboardData?.getData(\"text/html\")||esc(event.clipboardData?.getData(\"text/plain\")||\"\").replace(/\\n/g,\"<br>\");document.execCommand(\"insertHTML\",!1,scSanitizeHtmlV679(text2))})}async function scSaveProductV679(button2){await scBusyV679(button2,async()=>{const d=scV679.editing,old=d?.plan||{},variants=[...$2(\"scVariantRowsV679\").querySelectorAll(\"[data-sc-variant]\")].map(row=>{const val=k=>row.querySelector(`[data-v-field=\"${k}\"]`).value;return{title:val(\"title\"),price:val(\"price\"),inventoryQuantity:val(\"inventoryQuantity\")===\"\"?null:Number(val(\"inventoryQuantity\")),locationId:val(\"locationId\"),sku:val(\"sku\"),tracked:!0,taxable:val(\"taxable\")===\"true\",requiresShipping:val(\"requiresShipping\")===\"true\",compareAtPrice:val(\"compareAtPrice\")===\"\"?null:Number(val(\"compareAtPrice\"))}});if(variants.some(v=>!v.locationId||v.inventoryQuantity===null||!(Number(v.price)>0)))throw new Error(\"Set a positive price, inventory quantity and stock location for every table choice.\");const eventFields={city:$2(\"scEventCityV680\").value,venue:$2(\"scEventVenueV680\").value,date:$2(\"scEventDateV680\").value,autoArtwork:$2(\"scEventArtworkV680\").checked};if(eventFields.autoArtwork&&(!eventFields.city||!eventFields.venue||!eventFields.date))throw new Error(\"Enter the event location, venue and date for automatic artwork.\");const input={...old,eventPresentation:eventFields.city&&eventFields.venue&&eventFields.date?eventFields:null,title:$2(\"scEditTitleV679\").value,handle:$2(\"scEditHandleV679\").value||null,templateSuffix:$2(\"scEditTemplateV679\").value||null,descriptionHtml:scSanitizeHtmlV679($2(\"scEditDescriptionV679\").innerHTML),optionName:old.optionName||\"Table type\",variants,imageUrls:$2(\"scEditImagesV679\").value.split(`\n`).map(x=>x.trim()).filter(Boolean),tags:$2(\"scEditTagsV679\").value.split(\",\").map(x=>x.trim()).filter(Boolean),seo:{title:$2(\"scEditSeoTitleV679\").value,description:$2(\"scEditSeoDescriptionV679\").value},...d?{revision:d.revision}:{}};await scRequestV679(d?\"drafts/\"+encodeURIComponent(d._id):\"drafts/products\",d?\"PATCH\":\"POST\",input),delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),setCardShowShopifyPaneV678(\"drafts\"),await scDraftsV679(),scNoticeV679(\"Draft saved. Rebuild the private preview to see these changes in Shopify.\")})}function scReviewV679(id){const d=scV679.drafts.find(x=>x._id===id);if(!d)return;scV679.reviewing=d;const checks=[[\"contentConfirmed\",\"The title, date, description and artwork are correct.\"],[\"tableOptionsConfirmed\",\"The table sizes, rooms, prices and stock quantities are correct.\"],[\"vendorFieldsConfirmed\",\"The correct vendor questions appear and required answers are enforced.\"],[\"displayCaseConfirmed\",\"Display-case choices and the extra charge are correct.\"],[\"orderPropertiesConfirmed\",\"I have verified how the vendor answers and display-case hire reach the order.\"],[\"venueDetailsConfirmed\",\"The exact venue, hours and booking terms are confirmed.\"]];scModalV679(\"Review this event before publication\",`<h3>${esc(d.title)}</h3>${scLinkV679(d.previewUrl,\"Open the real website preview\",!0)}<p>This records your checks. It does not publish the product or send announcements.</p><div class=\"sc-checks\">${checks.map(([key,label])=>`<label><input type=\"checkbox\" data-sc-review=\"${key}\" ${d.review?.checks?.[key]?\"checked\":\"\"}><span>${esc(label)}</span></label>`).join(\"\")}</div><label>How did you verify Easify and the order details?<textarea id=\"scReviewEvidenceV679\" rows=\"4\" placeholder=\"Record the preview checks and the authorised test or working order evidence you checked.\">${esc(d.review?.evidence||\"\")}</textarea></label><p class=\"sc-note\">These are your recorded checks, not an automated successful order test. Do not approve an unresolved booking dependency.</p>`,scButtonV679(\"save-review\",\"Save completed review\",\"\",!0))}async function scSaveReviewV679(button2){await scBusyV679(button2,async()=>{const d=scV679.reviewing,input={revision:d.revision,evidence:$2(\"scReviewEvidenceV679\").value};for(const check of $2(\"scDialogV679\").querySelectorAll(\"[data-sc-review]\"))input[check.dataset.scReview]=check.checked;await scRequestV679(`drafts/${encodeURIComponent(d._id)}/review`,\"POST\",input),delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),await scDraftsV679(),scNoticeV679(\"Review saved. Nothing is live yet; publication is a separate action.\")})}function scPublishModalV679(id){const d=scV679.drafts.find(x=>x._id===id);if(!d)return;scV679.publishing=d;const phrase=d.kind===\"theme\"?\"PUBLISH THEME\":d.kind===\"navigation\"?\"PUBLISH NAVIGATION\":\"PUBLISH\";scModalV679(\"Publish to the live Card Show store\",`<h3>${esc(d.title)}</h3><div class=\"sc-callout sc-warning\"><strong>This is the go-live step.</strong><p>The change will become customer-facing. Managed events stay silent after publication until you separately approve one combined launch announcement. No product is published by previewing or saving a review.</p></div><label>Type ${phrase} to confirm<input id=\"scPublishPhraseV679\" autocomplete=\"off\" placeholder=\"${phrase}\"></label>`,scButtonV679(\"confirm-publish\",\"Publish live\",'data-phrase=\"'+phrase+'\"',!0))}async function scPublishV679(button2){await scBusyV679(button2,async()=>{const phrase=button2.dataset.phrase;if($2(\"scPublishPhraseV679\").value!==phrase)throw new Error(\"Enter the exact confirmation phrase.\");const d=scV679.publishing;const r=await scRequestV679(`drafts/${encodeURIComponent(d._id)}/publish`,\"POST\",{confirmation:phrase,revision:d.revision});delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),await scDraftsV679(),scPublishedPlacementNoticeV828(r,\"Shopify confirmed publication of this change.\")})}function scAdjustModalV679(i,j){const v=scV679.inventory[i],level=v?.inventoryItem?.inventoryLevels?.nodes[j];if(!level)return;const current=level.quantities.find(q=>q.name===\"available\")?.quantity;scV679.adjusting={variantId:v.id,inventoryItemId:v.inventoryItem.id,locationId:level.location.id,expectedQuantity:current,requestKey:crypto.randomUUID()},scModalV679(\"Adjust live stock\",`<h3>${esc(v.product.title)}</h3><p>${esc(v.title)} \\xB7 ${esc(level.location.name)}</p><div class=\"sc-callout\">Available now: <strong>${current}</strong>. Shopify will reject the change if this quantity changes before you save.</div><div class=\"sc-form-grid\"><label>Change<select id=\"scAdjustDirectionV679\"><option value=\"1\">Add stock</option><option value=\"-1\">Remove stock</option></select></label><label>Quantity<input type=\"number\" min=\"1\" max=\"10000\" step=\"1\" id=\"scAdjustQuantityV679\" value=\"1\"></label></div><label>Reason<textarea id=\"scAdjustReasonV679\" rows=\"2\" placeholder=\"Why is the stock changing?\"></textarea></label><label>Type ADJUST INVENTORY to confirm<input id=\"scAdjustConfirmV679\" autocomplete=\"off\"></label>`,scButtonV679(\"save-stock\",\"Apply stock change\",\"\",!0))}async function scAdjustSaveV679(button2){await scBusyV679(button2,async()=>{if($2(\"scAdjustConfirmV679\").value!==\"ADJUST INVENTORY\")throw new Error(\"Type ADJUST INVENTORY to confirm.\");const delta=Number($2(\"scAdjustDirectionV679\").value)*Number($2(\"scAdjustQuantityV679\").value);await scRequestV679(\"inventory/adjust\",\"POST\",{...scV679.adjusting,delta,reason:$2(\"scAdjustReasonV679\").value,confirmation:\"ADJUST INVENTORY\"}),delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),await scInventoryV679(),scNoticeV679(\"Shopify confirmed the stock adjustment.\")})}function scSimpleModalV679(kind,id=null){scV679.simpleKind=kind,scV679.simpleId=id;let title=\"\",body=\"\",action=\"\";if(kind===\"collection\"&&(title=\"Create a collection draft\",body='<label>Title<input id=\"scSimpleTitleV679\"></label><label>Page address (optional)<input id=\"scSimpleHandleV679\"></label><label>Description<textarea id=\"scSimpleBodyV679\" rows=\"5\"></textarea></label>',action=\"Save collection draft\"),kind===\"page\"&&(title=\"Create a page draft\",body='<label>Title<input id=\"scSimpleTitleV679\"></label><label>Page address (optional)<input id=\"scSimpleHandleV679\"></label><label>Page content<textarea id=\"scSimpleBodyV679\" rows=\"8\"></textarea></label><p>Plain text is formatted into paragraphs. The page stays unpublished.</p>',action=\"Save page draft\"),kind===\"file\"&&(title=\"Import a file into Shopify\",body='<label>Public HTTPS image or file URL<input id=\"scFileUrlV679\" type=\"url\" placeholder=\"https://\"></label><div class=\"sc-form-grid\"><label>Type<select id=\"scFileTypeV679\"><option value=\"IMAGE\">Image</option><option value=\"FILE\">File</option></select></label><label>Filename (optional)<input id=\"scFileNameV679\"></label></div><label>Alt text<input id=\"scFileAltV679\"></label><label>Type IMPORT FILE to confirm<input id=\"scFileConfirmV679\" autocomplete=\"off\"></label><p>This stores the file in the Card Show shop. It does not add it to a live page.</p>',action=\"Import file\"),kind===\"theme\"){const t=scV679.themes.find(x=>x.id===id);title=\"Stage a preview-theme change\",body=`<p><strong>${esc(t?.name||\"Preview theme\")}</strong></p><div class=\"sc-callout\">The existing file is backed up before a staged write. The live theme is never edited directly.</div><label>File path<input id=\"scThemeFileV679\" placeholder=\"sections/example.liquid\"></label><label>New file contents<textarea id=\"scThemeBodyV679\" class=\"sc-code\" rows=\"13\" spellcheck=\"false\"></textarea></label>`,action=\"Save theme draft\"}scModalV679(title,body,scButtonV679(\"save-simple\",action,\"\",!0))}async function scSimpleSaveV679(button2){await scBusyV679(button2,async()=>{const kind=scV679.simpleKind;let result;if(kind===\"file\"){if($2(\"scFileConfirmV679\").value!==\"IMPORT FILE\")throw new Error(\"Type IMPORT FILE to confirm.\");result=await scRequestV679(\"files/import\",\"POST\",{originalSource:$2(\"scFileUrlV679\").value,contentType:$2(\"scFileTypeV679\").value,filename:$2(\"scFileNameV679\").value,alt:$2(\"scFileAltV679\").value,confirmation:\"IMPORT FILE\"})}else if(kind===\"theme\")result=await scRequestV679(\"drafts/themes\",\"POST\",{themeId:scV679.simpleId,files:[{filename:$2(\"scThemeFileV679\").value,body:$2(\"scThemeBodyV679\").value}]});else{const body=$2(\"scSimpleBodyV679\").value.split(/\\n\\s*\\n/).filter(Boolean).map(t=>\"<p>\"+esc(t).replace(/\\n/g,\"<br>\")+\"</p>\").join(\"\"),input={title:$2(\"scSimpleTitleV679\").value,handle:$2(\"scSimpleHandleV679\").value||null,...kind===\"page\"?{body}:{descriptionHtml:body}};result=await scRequestV679(kind===\"page\"?\"drafts/pages\":\"drafts/collections\",\"POST\",input)}delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),kind===\"file\"?(await scFilesV679(),scNoticeV679(result.pending?\"File received by Shopify and processing. Refresh Files to see when it is ready.\":\"File received by Shopify.\")):(setCardShowShopifyPaneV678(\"drafts\"),await scDraftsV679(),scNoticeV679(\"Draft saved. Nothing has been published.\"))})}function scMenuNodeV679(path){const indexes=String(path).split(\".\").map(Number);let parent=scV679.menuItems;for(let i=0;i<indexes.length-1;i++)parent=parent[indexes[i]].items;return{parent,index:indexes[indexes.length-1]}}function scMenuRowsV679(items,path=\"\",depth=0){return items.map((item,index)=>{const p=path?path+\".\"+index:String(index);return`<div class=\"sc-menu-edit\" style=\"margin-left:${depth*16}px\"><label>Link title<input data-sc-menu-title=\"${p}\" value=\"${esc(item.title)}\"></label><label>Link address<input data-sc-menu-url=\"${p}\" value=\"${esc(item.url||\"\")}\"></label><div class=\"sc-actions\">${depth<2?scButtonV679(\"menu-child\",\"Add child link\",`data-path=\"${p}\"`):\"\"}${scButtonV679(\"menu-remove\",\"Remove from draft\",`data-path=\"${p}\"`)}</div></div>${scMenuRowsV679(item.items||[],p,depth+1)}`}).join(\"\")}function scMenuRenderV679(){const el=$2(\"scMenuRowsV679\");el&&(el.innerHTML=scMenuRowsV679(scV679.menuItems))}function scMenuModalV679(id){const m=scV679.menus.find(x=>x.id===id);m&&(scV679.editingMenu=m,scV679.menuItems=JSON.parse(JSON.stringify(m.items||[])),scModalV679(\"Edit a staged copy of \"+m.title,`<div class=\"sc-callout\">Changes remain local until you approve publication. Orbit checks that the live menu has not changed in the meantime.</div><label>Menu title<input id=\"scMenuTitleV679\" value=\"${esc(m.title)}\"></label><div id=\"scMenuRowsV679\"></div>${scButtonV679(\"menu-add\",\"Add top-level link\")}`,scButtonV679(\"save-menu\",\"Save navigation draft\",\"\",!0)),scMenuRenderV679())}async function scMenuSaveV679(button2){await scBusyV679(button2,async()=>{await scRequestV679(\"drafts/navigation\",\"POST\",{menuId:scV679.editingMenu.id,title:$2(\"scMenuTitleV679\").value,items:scV679.menuItems}),delete $2(\"scDialogV679\").dataset.busy,scCloseV679(),setCardShowShopifyPaneV678(\"drafts\"),await scDraftsV679(),scNoticeV679(\"Navigation draft saved. The live menu is unchanged.\")})}function bindCardShowShopifyV678(){const root=scRootV679();if(!root||root.dataset.boundV679)return;root.dataset.boundV679=\"1\";const dialog=$2(\"scDialogV679\");dialog.addEventListener(\"cancel\",event=>{dialog.dataset.busy&&event.preventDefault()}),root.addEventListener(\"keydown\",event=>{event.key===\"Enter\"&&event.target.matches(\"#scProductSearchV679,#scInventorySearchV679\")&&(event.preventDefault(),loadCardShowShopifyPaneV678(event.target.id===\"scProductSearchV679\"?\"products\":\"inventory\",!0))}),root.addEventListener(\"change\",event=>{event.target.id===\"scProductStatusV679\"&&loadCardShowShopifyPaneV678(\"products\",!0)}),root.addEventListener(\"input\",event=>{const field=event.target;if(field.dataset.scMenuTitle!==void 0){const{parent,index}=scMenuNodeV679(field.dataset.scMenuTitle);parent[index].title=field.value}if(field.dataset.scMenuUrl!==void 0){const{parent,index}=scMenuNodeV679(field.dataset.scMenuUrl);parent[index].url=field.value,parent[index].type=\"HTTP\",delete parent[index].resourceId,delete parent[index].tags}}),root.addEventListener(\"mousedown\",event=>{event.target.closest('[data-sc-action^=\"format-\"]')&&event.preventDefault()}),root.addEventListener(\"click\",event=>{const b=event.target.closest(\"[data-sc-action]\");if(!b||b.disabled)return;const action=b.dataset.scAction,id=b.dataset.id;if(action===\"photos\"){scBusyV679(b,()=>scPhotoLibraryV681(!1));return}if(action===\"photos-more\"){scBusyV679(b,()=>scPhotoLibraryV681(!0));return}if(action===\"photos-save\"){scSavePhotosV681(b);return}if(action===\"venue\"){scBusyV679(b,()=>scVenueV681(id));return}if(action===\"venue-save\"){scSaveVenueV681(b);return}if(action===\"artwork-manager\"){scBusyV679(b,()=>scArtworkManagerV681(!1));return}if(action===\"artwork-manager-more\"){scBusyV679(b,()=>scArtworkManagerV681(!0));return}if(action===\"artwork-review\"){scArtworkReviewV681(b);return}if(action===\"artwork-apply\"){scArtworkApplyV681(b);return}if(action===\"artwork-history\"){scBusyV679(b,scArtworkHistoryV681);return}if(action===\"artwork-resume\"){scArtworkResumeV681(id,b);return}if([\"menu-scroll-apply\",\"menu-scroll-check\",\"menu-scroll-undo\"].includes(action)){const verb=action.replace(\"menu-scroll-\",\"\");if(verb!==\"check\"&&!confirm(verb===\"apply\"?\"Apply the backed-up menu scrolling repair to the CURRENT LIVE Orbit Card Show theme? No events or other themes will change.\":\"Undo only the exact menu repair, preserving the original backed-up layout?\"))return;scBusyV679(b,async()=>{const result=await scRequestV679(\"navigation-viewport/\"+verb,\"POST\",{confirmation:verb===\"apply\"?\"APPLY CARD SHOW MENU SCROLL FIX\":\"UNDO CARD SHOW MENU SCROLL FIX\"});await scThemesV679(),scNoticeV679(result.message||\"Navigation read-back completed. Check the public dropdown.\")});return}if(action===\"event-preview-connect\"){scConnectThemePreviewV68203(id);return}if(action===\"event-preview\"||action===\"design-preview\"){scEventPreviewV68202(id);return}if(action===\"event-preview-cancel\"){scPreviewRunV68202&&(scPreviewRunV68202.cancelled=!0),scCloseV679();return}if(action===\"event-review\"){scEventReviewV68202(id);return}if(action===\"event-publish-confirm\"){scEventPublishV68202(b);return}if(action===\"retry-event-placement\"){scRetryPublishedPlacementV828(id,b);return}if(action===\"layout-previews-prepare\"){scPrepareEventLayoutsV684(b);return}if(action===\"layout-approve\"){scApproveEventLayoutV684(id,b);return}if(action===\"layout-publish-one\"){scPublishEventLayoutV684(id,b);return}if(action===\"layout-publish-approved\"){scPublishApprovedLayoutsV684(b);return}if(action===\"layout-recheck\"){scRecheckEventLayoutV684(id,b);return}if(action===\"repair-live-launch\"){scRepairLiveLaunchV68304(b);return}if(action===\"polish-all\"){scPolishConfirmV680();return}if(action===\"polish-confirm\"){scPolishAllV680(b);return}if(action===\"polish\"){scBusyV679(b,()=>scPolishV680(id));return}if(action===\"artwork\"){scBusyV679(b,()=>scArtworkV680(id));return}if(action===\"design-prepare\"){scDesignPrepareV680(b);return}if(action===\"design-preview\"){scBusyV679(b,()=>scDesignPreviewV680(id));return}if(action===\"launch-review\"){scBusyV679(b,scLaunchReviewV680);return}if(action===\"close\"){scCloseV679();return}if(action===\"format-bold\"||action===\"format-list\"){document.execCommand(action===\"format-bold\"?\"bold\":\"insertUnorderedList\");return}if(action===\"draft-history\"){scV679.draftHistoryV746=!scV679.draftHistoryV746,scDraftsV679().catch(e=>scNoticeV679(e.message||\"Drafts could not be loaded.\",!0));return}if(action===\"open-drafts\"){loadCardShowShopifyPaneV678(\"drafts\",!0);return}if(action===\"retry\"||action===\"more\"){loadCardShowShopifyPaneV678(b.dataset.pane,!0,action===\"more\");return}if(action===\"refresh\"){scBusyV679(b,()=>loadCardShowShopifyPaneV678(scV679.pane,!0));return}if(action===\"search-products\"){loadCardShowShopifyPaneV678(\"products\",!0);return}if(action===\"search-inventory\"){loadCardShowShopifyPaneV678(\"inventory\",!0);return}if(action===\"audit\"){scAuditV679(b);return}if(action===\"prepare\"){scBusyV679(b,scPrepareV679);return}if(action===\"reference-more\"){scMoreReferencesV679(b);return}if(action===\"save-prepared\"){scPrepareSaveV679(b);return}if(action===\"build-six\"){scBuildSixV679(b);return}if(action===\"recheck-existing\"){scBatchDraftsV67902(b,\"reconcile\");return}if(action===\"build\"){scBusyV679(b,()=>scBuildV679(id));return}if(action===\"edit\"||action===\"new-product\"){scBusyV679(b,()=>scEditorV679(action===\"edit\"?id:null));return}if(action===\"save-product\"){scSaveProductV679(b);return}if(action===\"add-variant\"){$2(\"scVariantRowsV679\").insertAdjacentHTML(\"beforeend\",scVariantFieldsV679({},$2(\"scVariantRowsV679\").children.length));return}if(action===\"inspect\"){scBusyV679(b,()=>scInspectV679(id));return}if(action===\"integration\"){scBusyV679(b,()=>scIntegrationV679(id));return}if(action===\"review\"){scReviewV679(id);return}if(action===\"save-review\"){scSaveReviewV679(b);return}if(action===\"publish\"){scPublishModalV679(id);return}if(action===\"confirm-publish\"){scPublishV679(b);return}if(action===\"adjust\"){scAdjustModalV679(Number(b.dataset.index),Number(b.dataset.level));return}if(action===\"save-stock\"){scAdjustSaveV679(b);return}if(action===\"new-collection\"||action===\"new-page\"||action===\"new-file\"){scSimpleModalV679(action.slice(4));return}if(action===\"theme-edit\"){scSimpleModalV679(\"theme\",id);return}if(action===\"save-simple\"){scSimpleSaveV679(b);return}if(action===\"page-edit\"){scBusyV679(b,async()=>{const id=b.dataset.id,current=(await scRequestV679(\"pages/\"+encodeURIComponent(id))).page,title=prompt(\"Page title\",current.title);if(title===null)return;const body=prompt(\"Page HTML/content\",current.body||\"\");if(body===null)return;await scRequestV679(\"pages/\"+encodeURIComponent(id),\"PATCH\",{title,body,expectedUpdatedAt:current.updatedAt}),await scPagesV679(),scNoticeV679(\"Shopify page updated.\")});return}if(action===\"page-delete\"){scBusyV679(b,async()=>{const id=b.dataset.id,current=(await scRequestV679(\"pages/\"+encodeURIComponent(id))).page;if(!confirm('Delete \"'+current.title+'\"? This removes the Shopify page.'))return;if(prompt(\"Type DELETE PAGE to confirm\")!==\"DELETE PAGE\")return;await scRequestV679(\"pages/\"+encodeURIComponent(id),\"DELETE\",{confirmation:\"DELETE PAGE\",expectedUpdatedAt:current.updatedAt}),await scPagesV679(),scNoticeV679(\"Shopify page deleted.\")});return}if(action===\"menu-edit\"){scMenuModalV679(id);return}if(action===\"menu-add\"){scV679.menuItems.push({title:\"New link\",type:\"HTTP\",url:\"/\",items:[]}),scMenuRenderV679();return}if(action===\"menu-child\"){const{parent,index}=scMenuNodeV679(b.dataset.path);(parent[index].items||(parent[index].items=[])).push({title:\"New link\",type:\"HTTP\",url:\"/\",items:[]}),scMenuRenderV679();return}if(action===\"menu-remove\"){const{parent,index}=scMenuNodeV679(b.dataset.path);parent.splice(index,1),scMenuRenderV679();return}if(action===\"save-menu\"){scMenuSaveV679(b);return}if(action===\"local-preview\"){const d=scV679.drafts.find(x=>x._id===id);d&&scModalV679(d.title,d.kind===\"page\"?scFrameV679(d.plan.body):d.kind===\"collection\"?scFrameV679(d.plan.descriptionHtml):`<pre>${esc(JSON.stringify(d.plan,null,2))}</pre>`);return}if(action===\"clone\"){scBusyV679(b,async()=>{await scRequestV679(\"drafts/products/clone\",\"POST\",{productId:id}),dialog.open&&(delete dialog.dataset.busy,scCloseV679()),setCardShowShopifyPaneV678(\"drafts\"),await scDraftsV679(),scNoticeV679(\"Local draft created. Edit the date, copy and stock location before building it.\")});return}if(action===\"reconcile-live\"){scBusyV679(b,async()=>{const d=scV679.drafts.find(x=>x._id===id);if(!d||!confirm(\"Link the already-live Shopify product for \"+(d.title||\"this event\")+\" to the Orbit event register? This verifies Shopify Online Store publication and table prices, removes only the obsolete preview-only tag, and does not create products, change prices, alter stock or send emails.\"))return;const out=await scRunDraftActionV67902(id,\"reconcile-live\",{confirmation:\"LINK EXISTING LIVE EVENT\"});scNoticeV679(\"Verified live Shopify event linked to Orbit. Existing product, table variants, stock and pricing preserved.\")});return}if(action===\"recheck\"){scBusyV679(b,()=>scRecheckV67902(id));return}action===\"sync\"&&scBusyV679(b,async()=>{await api(\"/api/admin/vendors/shopify/sync\",{method:\"POST\",body:JSON.stringify({full:!1}),cacheMs:0,timeoutMs:3e4}),scNoticeV679(\"The existing Vendor Club order sync was requested.\")})})}function bind(){bindCardShowShopifyV678(),showPerformanceSiteV544(),$2(\"performanceSiteV544\")?.addEventListener(\"change\",function(){changePerformanceSiteV544(this.value).catch(err=>setNotice2(err.message||err,!0))}),ensureGoldenTicketManager(),ensureMemberMessageModal(),document.querySelectorAll(\"[data-prize-area]\").forEach(button2=>button2.addEventListener(\"click\",function(){setPrizeArea(this.dataset.prizeArea)})),document.addEventListener(\"keydown\",function(event){event.key===\"Escape\"&&!$2(\"memberMessageModal\")?.hidden&&closeMemberMessageModal()}),$2(\"monthKeyInput\")&&($2(\"monthKeyInput\").value=currentMonthKey()),$2(\"refreshAllButton\")?.addEventListener(\"click\",function(){refreshHomeV542(this).catch(err=>setNotice2(err.message,!0))}),$2(\"performancePeriod\")?.addEventListener(\"change\",function(){state.performancePeriod=this.value;const reportsPeriod=ensureReportsPeriodV348();reportsPeriod&&(reportsPeriod.value=this.value),loadPerformanceOverview(null)});const reportsPeriodV348=ensureReportsPeriodV348();reportsPeriodV348&&!reportsPeriodV348.dataset.orbitBoundV348&&(reportsPeriodV348.dataset.orbitBoundV348=\"true\",reportsPeriodV348.addEventListener(\"change\",function(){state.performancePeriod=this.value,$2(\"performancePeriod\")&&($2(\"performancePeriod\").value=this.value);const active=document.querySelector(\"[data-report-kind].active\");active&&openBusinessReport(active.dataset.reportKind,active)})),$2(\"seoFillMissingDefaultsV335\")?.addEventListener(\"click\",async function(){if(confirm(\"Fill only missing Orbit event-page SEO titles/descriptions? Existing custom SEO will not be overwritten.\")){setLoading(this,!0);try{const result=await api(\"/api/admin/seo/pages/defaults\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:12e4});await loadSeoPagesV332(),setNotice2(\"SEO defaults complete: \"+Number(result.changed?.length||0)+\" page(s) updated, \"+Number(result.skipped?.length||0)+\" already complete.\"+(result.failures?.length?\" \"+result.failures.length+\" failed.\":\"\"))}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(this,!1)}}}),document.querySelectorAll(\"[data-seo-pane-v477]\").forEach(button2=>button2.addEventListener(\"click\",()=>setSeoPaneV477(button2.dataset.seoPaneV477))),$2(\"seoRankingsRefreshV477\")?.addEventListener(\"click\",function(){loadSeoRankingsV477(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"seoRankingsPeriodV477\")?.addEventListener(\"change\",()=>loadSeoRankingsV477(null).catch(err=>setNotice2(err.message||err,!0))),$2(\"seoSiteV494\")?.addEventListener(\"change\",()=>loadSeoRankingsV477(null).catch(err=>setNotice2(err.message||err,!0))),$2(\"seoSitemapRefreshV494\")?.addEventListener(\"click\",function(){loadSeoSitemapV494(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"seoSitemapSubmitV494\")?.addEventListener(\"click\",function(){submitSeoSitemapV494(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"seoSitemapSiteV494\")?.addEventListener(\"change\",()=>loadSeoSitemapV494(null).catch(err=>setNotice2(err.message||err,!0))),$2(\"seoOpenSearchConsoleSetupV495\")?.addEventListener(\"click\",function(){activateModule(\"analytics-google\"),setTimeout(()=>$2(\"searchConsoleSetupV495\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"}),120)}),$2(\"seoReloadPagesV332\")?.addEventListener(\"click\",()=>Promise.allSettled([loadSeoKeyPagesV336(),loadSeoPagesV332()]).then(()=>setNotice2(\"SEO data refreshed.\"))),$2(\"seoPageSearchV332\")?.addEventListener(\"input\",renderSeoPageListV332),$2(\"seoKeyPageListV336\")?.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-seo-key-page-id]\");if(!button2)return;const page=seoKeyPagesV336.find(row=>row.id===button2.dataset.seoKeyPageId);page&&openSeoKeyPageV336(page)}),$2(\"seoPageListV332\")?.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-seo-page-id]\");if(!button2)return;const page=seoPagesV332.find(row=>row.id===button2.dataset.seoPageId);page&&openSeoPageV332(page)}),$2(\"seoTitleInputV332\")?.addEventListener(\"input\",updateSeoPreviewV332),$2(\"seoDescriptionInputV332\")?.addEventListener(\"input\",updateSeoPreviewV332),$2(\"seoIndexableInputV332\")?.addEventListener(\"change\",updateSeoPreviewV332),$2(\"seoSavePageV332\")?.addEventListener(\"click\",function(){saveSeoPageV332(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"seoProductSearchV333\")?.addEventListener(\"input\",renderSeoProductListV333),$2(\"seoProductListV333\")?.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-seo-product-id]\");if(!button2)return;const product=seoProductsV333.find(row=>row.id===button2.dataset.seoProductId);product&&openSeoProductV333(product)}),$2(\"seoProductTitleInputV333\")?.addEventListener(\"input\",updateSeoProductPreviewV333),$2(\"seoProductDescriptionInputV333\")?.addEventListener(\"input\",updateSeoProductPreviewV333),$2(\"seoSaveProductV333\")?.addEventListener(\"click\",function(){saveSeoProductV333(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"seoProductImagesV333\")?.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-seo-file-save]\");button2&&saveSeoFileAltV333(button2).catch(err=>setNotice2(err.message||err,!0))}),$2(\"seoCollectionSearchV333\")?.addEventListener(\"input\",renderSeoCollectionListV333),$2(\"seoCollectionListV333\")?.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-seo-collection-id]\");if(!button2)return;const collection=seoCollectionsV333.find(row=>row.id===button2.dataset.seoCollectionId);collection&&openSeoCollectionV333(collection)}),$2(\"seoCollectionTitleInputV333\")?.addEventListener(\"input\",updateSeoCollectionPreviewV333),$2(\"seoCollectionDescriptionInputV333\")?.addEventListener(\"input\",updateSeoCollectionPreviewV333),$2(\"seoSaveCollectionV333\")?.addEventListener(\"click\",function(){saveSeoCollectionV333(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceGaSaveButton\")?.addEventListener(\"click\",function(){savePerformanceTrackingV327(\"ga\",this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceGaConnectV469\")?.addEventListener(\"click\",function(){connectGoogleAnalyticsV470(this).catch(err=>setNotice2(err.message||err,!0))}),document.addEventListener(\"click\",function(event){const button2=event.target.closest(\"[data-ga-reconnect-v619]\");button2&&connectGoogleAnalyticsV470(button2).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceGaDisconnectV469\")?.addEventListener(\"click\",function(){disconnectGoogleAnalyticsV469(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceSearchConsoleConnectV494\")?.addEventListener(\"click\",function(){connectGoogleSearchConsoleV494(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceSearchConsoleDisconnectV494\")?.addEventListener(\"click\",function(){disconnectGoogleSearchConsoleV494(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceSearchConsoleWriteConnectV625\")?.addEventListener(\"click\",function(){connectGoogleSearchConsoleWriteV625(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceSearchConsoleWriteDisconnectV625\")?.addEventListener(\"click\",function(){disconnectGoogleSearchConsoleWriteV625(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"cardShowIndexSearchConsoleTestV625\")?.addEventListener(\"click\",function(){testCardShowIndexSearchConsoleV625(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"cardShowIndexSearchConsoleSyncV625\")?.addEventListener(\"click\",function(){syncCardShowIndexSearchConsoleV625(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"searchConsoleApplyDefaultsV495\")?.addEventListener(\"click\",function(){applyRecommendedSearchConsolePropertiesV495()}),$2(\"searchConsoleCheckPropertiesV495\")?.addEventListener(\"click\",function(){loadSearchConsolePropertiesV495(this).catch(err=>setNotice2(err.message||err,!0))}),document.querySelectorAll(\"[data-search-console-copy-v495]\").forEach(button2=>button2.addEventListener(\"click\",function(){copySearchConsoleValueV495(this.dataset.searchConsoleCopyV495||\"\").catch(err=>setNotice2(err.message||err,!0))})),$2(\"performanceMetaSaveButton\")?.addEventListener(\"click\",function(){savePerformanceTrackingV327(\"meta\",this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceGaReloadButton\")?.addEventListener(\"click\",function(){loadTrackingSettings().then(()=>setNotice2(\"Google Analytics settings reloaded.\")).catch(err=>setNotice2(err.message||err,!0))}),$2(\"analyticsRefreshV468\")?.addEventListener(\"click\",function(){Promise.all([loadAnalyticsOverviewV468(this),loadPerformanceRankingsV496(null)]).catch(err=>setNotice2(err.message||err,!0))}),$2(\"performanceRankingsRefreshV496\")?.addEventListener(\"click\",function(){loadPerformanceRankingsV496(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"analyticsPeriodV468\")?.addEventListener(\"change\",()=>Promise.all([loadAnalyticsOverviewV468(null),loadPerformanceRankingsV496(null)]).catch(err=>setNotice2(err.message||err,!0))),$2(\"analyticsSiteV494\")?.addEventListener(\"change\",()=>Promise.all([loadAnalyticsOverviewV468(null),loadPerformanceRankingsV496(null)]).catch(err=>setNotice2(err.message||err,!0))),$2(\"analyticsSalesRefreshV471\")?.addEventListener(\"click\",function(){loadAnalyticsCommercialV471(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"analyticsSalesPeriodV471\")?.addEventListener(\"change\",()=>loadAnalyticsCommercialV471(null).catch(err=>setNotice2(err.message||err,!0))),$2(\"performanceMetaReloadButton\")?.addEventListener(\"click\",function(){Promise.all([loadTrackingSettings(),loadMetaIsolationHealthV4482(),loadMetaConversionDiagnosticsV4489(),loadMetaConversionDiagnosticsV4489(null,\"club\")]).then(()=>setNotice2(\"Meta Pixel settings and live isolation health reloaded.\")).catch(err=>setNotice2(err.message||err,!0))}),document.querySelectorAll(\"[data-advertising-open]\").forEach(button2=>button2.addEventListener(\"click\",()=>openAdvertisingViewV451(button2.dataset.advertisingOpen)));try{openAdvertisingViewV451(sessionStorage.getItem(\"orbitAdvertisingView\")||\"overview\")}catch{openAdvertisingViewV451(\"overview\")}$2(\"metaAdsReloadV449\")?.addEventListener(\"click\",function(){loadMetaAdsSettingsV449().then(()=>setNotice2(\"Meta Advertising connection reloaded.\")).catch(err=>setNotice2(err.message||err,!0))}),$2(\"metaAdsSaveV449\")?.addEventListener(\"click\",function(){saveMetaAdsSettingsV449(!1).catch(err=>setNotice2(err.message||err,!0))}),$2(\"metaAdsClearTokenV449\")?.addEventListener(\"click\",function(){window.confirm(\"Clear the dedicated Meta Marketing API token from Orbit? Pixel/CAPI tokens are unaffected.\")&&saveMetaAdsSettingsV449(!0).catch(err=>setNotice2(err.message||err,!0))}),$2(\"metaAdsLoadPerformanceV449\")?.addEventListener(\"click\",function(){loadMetaAdsDashboardV449(!0).then(()=>setNotice2(\"Meta performance refreshed and saved for future page loads.\")).catch(err=>{$2(\"metaAdsDiagnosticsV449\")&&($2(\"metaAdsDiagnosticsV449\").textContent=err.message||String(err)),setNotice2(err.message||err,!0)})}),$2(\"metaAdsLoadHistoryV450\")?.addEventListener(\"click\",function(){startMetaAdsHistoryImportV450().catch(err=>{$2(\"metaAdsHistoryDiagnosticsV450\")&&($2(\"metaAdsHistoryDiagnosticsV450\").textContent=err.message||String(err)),setNotice2(err.message||err,!0)})}),$2(\"metaAdsRefreshLiveCostsV490\")?.addEventListener(\"click\",function(){refreshMetaLiveCostsV490(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"refreshAttribution\")?.addEventListener(\"click\",function(){loadAttribution(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"refreshBusinessActivity\")?.addEventListener(\"click\",function(){loadBusinessActivity(this).catch(err=>setNotice2(err.message||err,!0))}),document.querySelectorAll(\"[data-activity-filter]\").forEach(button2=>button2.addEventListener(\"click\",function(){renderBusinessActivity(this.dataset.activityFilter)})),document.addEventListener(\"click\",function(event){event.target.closest(\"[data-report-open-attendance]\")&&(activateModule(\"events\",\"eventbrite\"),window.setTimeout(function(){document.querySelector(\"[data-tab='attendance']\")?.click()},80))}),document.querySelectorAll(\"[data-report-kind]\").forEach(button2=>button2.addEventListener(\"click\",function(){openBusinessReport(this.dataset.reportKind,this)})),$2(\"orbitAdminQuickRefresh\")?.addEventListener(\"click\",function(){refreshHomeV542(this).catch(err=>setNotice2(err.message,!0))}),$2(\"orbitAdminMenuToggle\")?.addEventListener(\"click\",function(){const open=document.querySelector(\".orbit-admin-app\")?.classList.toggle(\"menu-open\")||!1;this.setAttribute(\"aria-expanded\",String(open))}),$2(\"orbitAdminSidebarOverlay\")?.addEventListener(\"click\",function(){document.querySelector(\".orbit-admin-app\")?.classList.remove(\"menu-open\"),$2(\"orbitAdminMenuToggle\")?.setAttribute(\"aria-expanded\",\"false\")}),$2(\"loadMonthlyContentButton\")?.addEventListener(\"click\",function(){loadMonthlyContent(this)}),$2(\"saveMonthlyContentButton\")?.addEventListener(\"click\",function(){saveMonthlyContent(this)}),$2(\"createTestMemberFactoryButton\")?.addEventListener(\"click\",async function(){try{await createTestMemberFactory(this)}catch(err){setNotice2(err.message,!0)}}),$2(\"loadActivityLogButton\")?.addEventListener(\"click\",async function(){try{await loadAdminActivityLog(this)}catch(err){setNotice2(err.message,!0)}}),$2(\"launchResetPreviewButton\")?.addEventListener(\"click\",async function(){try{await loadLaunchResetPreview(this)}catch(err){setNotice2(err.message,!0)}}),$2(\"launchResetButton\")?.addEventListener(\"click\",async function(){try{await runLaunchReset(this)}catch(err){setNotice2(err.message,!0)}}),[\"monthlyContentCurrentDrawImageUrl\",\"monthlyContentNextMonthImageUrl\",\"monthlyContentGoldenTicketImageUrl\"].forEach(id=>$2(id)?.addEventListener(\"input\",renderMonthlyContentPreview)),$2(\"loadSupportInboxButton\")?.addEventListener(\"click\",function(){loadSupportInbox(this)}),$2(\"supportSearchInput\")?.addEventListener(\"input\",function(){renderSupportInbox(state.supportInbox||{tickets:state.supportTickets||[]})}),$2(\"supportStatusFilter\")?.addEventListener(\"change\",function(){renderSupportInbox(state.supportInbox||{tickets:state.supportTickets||[]})}),$2(\"dashboardPeriodSelect\")?.addEventListener(\"change\",async function(){try{await loadSummary(this.value),updateCommandCentre(),setNotice2(\"Dashboard snapshot updated for \"+dashboardPeriodLabel(this.value)+\".\")}catch(err){setNotice2(err.message,!0)}}),$2(\"testingEnableTestLabelsButton\")?.addEventListener(\"click\",function(){toggleTestLabelMode(this,!0)}),$2(\"testingDisableTestLabelsButton\")?.addEventListener(\"click\",function(){toggleTestLabelMode(this,!1)}),ensureOrbitV824Shell(),document.querySelectorAll(\"[data-workspace-nav]\").forEach(button2=>button2.addEventListener(\"click\",()=>{activateWorkspace(button2.dataset.workspaceNav)})),document.querySelectorAll(\"[data-v77-draw-tab]\").forEach(button2=>button2.addEventListener(\"click\",()=>{const pane=button2.dataset.v77DrawTab;setDrawPane(pane),rememberOrbitSubtab(\"automation\",pane)})),document.querySelectorAll(\"[data-module-nav]\").forEach(button2=>button2.addEventListener(\"click\",()=>{const prizePane=button2.dataset.prizeArea===\"golden\"?\"golden-create\":button2.dataset.prizeArea===\"monthly\"?\"current\":void 0;if(button2.dataset.gmailTopViewV737&&state.currentModule===\"gmail-hub\"){commsSetViewV736(button2.dataset.gmailTopViewV737),rememberOrbitSubtab(\"gmail-hub\",button2.dataset.gmailTopViewV737),updateAdminRouteLocationV5991(primaryRouteForModuleV5991(\"gmail-hub\",button2.dataset.gmailTopViewV737),\"gmail-hub\",button2.dataset.gmailTopViewV737,\"push\");return}activateModule(button2.dataset.moduleNav,button2.dataset.memberStoreView||button2.dataset.engagementOpen||button2.dataset.drawOpen||button2.dataset.loyaltyOpen||button2.dataset.ticketOpen||button2.dataset.gmailTopViewV737||button2.dataset.commsOpen||button2.dataset.shippingTab||button2.dataset.vendorOpen||button2.dataset.cardShopifyOpen||button2.dataset.tab||button2.dataset.intelligenceOpen||button2.dataset.influencerOpen||prizePane,{historyMode:\"push\"}),button2.dataset.advertisingOpen&&button2.dataset.moduleNav===\"advertising\"&&openAdvertisingViewV451(button2.dataset.advertisingOpen),button2.dataset.prizeArea&&button2.dataset.moduleNav===\"automation\"&&(setPrizeArea(button2.dataset.prizeArea),rememberOrbitSubtab(\"automation\",button2.dataset.prizeArea===\"golden\"?\"golden-create\":\"current\")),button2.dataset.engagementOpen&&button2.dataset.moduleNav===\"engagement\"&&window.setTimeout(function(){const tab=document.querySelector(\"[data-engagement-tab='\"+button2.dataset.engagementOpen+\"']\");tab&&tab.click()},30),button2.dataset.moduleTab&&button2.dataset.moduleNav===\"shipping\"&&window.setTimeout(function(){const tab=document.querySelector(\"[data-shipping-tab='\"+canonicalOrbitSubtab(\"shipping\",button2.dataset.moduleTab)+\"']\");tab&&tab.click()},50),button2.dataset.settingsAnchor&&button2.dataset.moduleNav===\"settings\"&&window.setTimeout(function(){document.getElementById(button2.dataset.settingsAnchor)?.scrollIntoView({behavior:\"smooth\",block:\"start\"})},80),button2.dataset.moduleNav===\"support\"&&loadSupportInbox(null,!0).catch(err=>setNotice2(err.message,!0)),button2.dataset.moduleNav===\"content\"&&loadMonthlyContent(null).catch(err=>setNotice2(err.message,!0)),button2.dataset.moduleNav===\"loyalty\"&&(button2.dataset.loyaltyOpen&&openLoyaltyPane(button2.dataset.loyaltyOpen),loadLoyaltyOperationsV727().catch(err=>setNotice2(err.message,!0))),button2.dataset.moduleNav===\"website-images\"&&loadWebsiteImagesV728(button2).catch(err=>setNotice2(err.message,!0)),button2.dataset.moduleNav===\"members\"&&loadMemberSummary().catch(err=>setNotice2(err.message,!0)),button2.dataset.moduleNav===\"intelligence\"&&button2.dataset.intelligenceOpen&&setOrbitIntelligenceTab(button2.dataset.intelligenceOpen),button2.dataset.moduleNav===\"analytics-overview\"&&loadAnalyticsOverviewV468(null).catch(err=>setNotice2(err.message||err,!0)),button2.dataset.moduleNav===\"analytics-sales\"&&loadAnalyticsCommercialV471(null).catch(err=>setNotice2(err.message||err,!0)),(button2.dataset.moduleNav===\"analytics-google\"||button2.dataset.moduleNav===\"analytics-meta\")&&(loadTrackingSettings().catch(err=>setNotice2(err.message,!0)),button2.dataset.moduleNav===\"analytics-meta\"&&Promise.all([loadMetaIsolationHealthV4482(),loadMetaConversionDiagnosticsV4489(),loadMetaConversionDiagnosticsV4489(null,\"club\")]).catch(err=>setNotice2(err.message,!0))),button2.dataset.moduleNav===\"settings\"&&loadShippingConfig().catch(err=>setNotice2(err.message,!0)),button2.dataset.moduleNav===\"shipping\"&&reloadSpecialShipments().catch(err=>setNotice2(err.message,!0))})),$2(\"commandNextButton\")?.addEventListener(\"click\",function(){activateModule(this.dataset.targetModule||\"dashboard\")}),orbitCurrentModule&&orbitCurrentModule()===\"website-images\"&&loadWebsiteImagesV728().catch(err=>setNotice2(err.message,!0)),$2(\"refreshFulfilmentButton\")?.addEventListener(\"click\",function(){loadFulfilment(this)}),$2(\"reconcileSafeStaleParcelsButton\")?.addEventListener(\"click\",async function(){const count=Number(state.fulfilmentCentre?.queueBreakdown?.safeStale||0);if(!(count<1)&&!(typeof window.confirm==\"function\"&&!window.confirm(\"Retire \"+count+\" parcel row\"+(count===1?\"\":\"s\")+\" proven stale by canonical seat + funded-cycle history? Legitimate older entitlements and separate memberships will be kept.\"))){setLoading(this,!0);try{const result=await api(\"/api/admin/fulfilment/reconcile-safe-stale\",{method:\"POST\",body:JSON.stringify({actor:\"Orbit Admin\"}),timeoutMs:3e4});setNotice2(\"Reconciled \"+Number(result?.reconciled||0)+\" proven stale parcel row\"+(Number(result?.reconciled||0)===1?\"\":\"s\")+\".\"),await loadFulfilment(null,!0)}finally{setLoading(this,!1)}}}),ensureRechargeEntitlementAuditV665(),$2(\"rechargeEntitlementAuditButtonV665\")?.addEventListener(\"click\",function(){loadRechargeEntitlementAuditV665(this,!1).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"rechargeEntitlementReconcileButtonV665\")?.addEventListener(\"click\",function(){confirm(\"Reconcile Orbit from current Recharge truth? This will not force queued charges; it only updates local status and creates parcel entitlement after confirmed successful full payment.\")&&loadRechargeEntitlementAuditV665(this,!0).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"parcelIntegrityPreviewButtonV669\")?.addEventListener(\"click\",function(){loadParcelIntegrityV669(this,!1).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"parcelIntegrityApplyButtonV669\")?.addEventListener(\"click\",function(){loadParcelIntegrityV669(this,!0).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"billingIntegrityCheckButton\")?.addEventListener(\"click\",function(){checkBillingIntegrityV482(this).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"billingIncidentPreviewButton\")?.addEventListener(\"click\",function(){previewBillingIncidentV482(this).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"postCutoffRetryPreviewV698\")?.addEventListener(\"click\",function(){previewPostCutoffRetryV698(this).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"billingIntegrityResult\")?.addEventListener(\"click\",function(event){const button2=event.target.closest(\"[data-billing-repair]\");button2&&repairBillingIntegrityV482(button2.dataset.billingRepair,button2).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"fulfilmentHistorySearch\")?.addEventListener(\"input\",function(){renderFulfilmentHistory(state.fulfilmentCentre?.historyPacks||[],state.specialShipments?.shipments||[])}),$2(\"fulfilmentHistoryStatus\")?.addEventListener(\"change\",function(){renderFulfilmentHistory(state.fulfilmentCentre?.historyPacks||[],state.specialShipments?.shipments||[])}),$2(\"fulfilmentHistoryMonth\")?.addEventListener(\"change\",function(){renderFulfilmentHistory(state.fulfilmentCentre?.historyPacks||[],state.specialShipments?.shipments||[])}),$2(\"refreshDeliveryStatusButton\")?.addEventListener(\"click\",function(){reconcileDeliveryStatuses(this).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"previewLabelCostButton\")?.addEventListener(\"click\",function(){previewShippingCost(this).catch(err=>setNotice2(err.message||String(err),!0))}),document.addEventListener(\"change\",function(event){if(!event.target||!event.target.matches||!event.target.matches(\"[data-pack-select]\"))return;state.shippingCostEstimate=null;const generate=$2(\"generateMonthlyDispatchButton\");generate&&(generate.disabled=!0),syncMonthlyBatchButtons();const target=$2(\"shippingCostPreview\");target&&(target.hidden=!0,target.textContent=\"\",target.classList.remove(\"error\"))}),$2(\"selectAllShippingButton\")?.addEventListener(\"click\",function(){const boxes=Array.from(document.querySelectorAll('.orbit-pack-select[data-pack-stage=\"ready\"]')),all=boxes.length&&boxes.every(box=>box.checked);boxes.forEach(box=>box.checked=!all),state.shippingCostEstimate=null,syncMonthlyBatchButtons(),setNotice2(all?\"Ready parcel selection cleared.\":\"All ready parcels selected across every funded cycle.\")}),$2(\"selectPackedShippingButton\")?.addEventListener(\"click\",function(){const boxes=Array.from(document.querySelectorAll('.orbit-pack-select[data-pack-stage=\"packed\"]')),all=boxes.length&&boxes.every(box=>box.checked);boxes.forEach(box=>box.checked=!all),syncMonthlyBatchButtons(),setNotice2(all?\"Packed parcel selection cleared.\":\"All packed parcels selected across every funded cycle.\")}),document.querySelectorAll(\"[data-shipping-tab]\").forEach(button2=>button2.addEventListener(\"click\",function(){setShippingPaneV540(this.dataset.shippingTab)})),$2(\"selectAllSpecialShippingButton\")?.addEventListener(\"click\",function(){const root=document.querySelector('[data-shipping-pane=\"prizes\"]'),boxes=Array.from(root?.querySelectorAll(\"[data-special-shipment-select]:not(:disabled)\")||[]),all=boxes.length&&boxes.every(box=>box.checked);boxes.forEach(box=>box.checked=!all),this.textContent=all?\"Select Ready\":\"Clear Selection\"}),$2(\"previewSpecialLabelCostButton\")?.addEventListener(\"click\",function(){previewSpecialShippingCost(this,\"prizes\").catch(err=>setNotice2(err.message,!0))}),$2(\"generateSpecialLabelsButton\")?.addEventListener(\"click\",function(){generateSpecialLabels(this,null,\"prizes\").catch(err=>setNotice2(err.message,!0))}),$2(\"markSpecialDispatchedButton\")?.addEventListener(\"click\",function(){dispatchSpecialShipments(this,null,\"prizes\").catch(err=>setNotice2(err.message,!0))}),$2(\"selectAllShopShippingButton\")?.addEventListener(\"click\",function(){const root=document.querySelector('[data-shipping-pane=\"shop\"]'),boxes=Array.from(root?.querySelectorAll(\"[data-special-shipment-select]:not(:disabled)\")||[]),all=boxes.length&&boxes.every(box=>box.checked);boxes.forEach(box=>box.checked=!all),this.textContent=all?\"Select Ready\":\"Clear Selection\"}),$2(\"previewShopLabelCostButton\")?.addEventListener(\"click\",function(){previewSpecialShippingCost(this,\"shop\").catch(err=>setNotice2(err.message,!0))}),$2(\"generateShopLabelsButton\")?.addEventListener(\"click\",function(){generateSpecialLabels(this,null,\"shop\").catch(err=>setNotice2(err.message,!0))}),$2(\"markShopDispatchedButton\")?.addEventListener(\"click\",function(){dispatchSpecialShipments(this,null,\"shop\").catch(err=>setNotice2(err.message,!0))}),$2(\"generateMonthlyDispatchButton\")?.addEventListener(\"click\",function(){generateMonthlyDispatch(this).catch(err=>setNotice2(err.message||String(err),!0))}),document.addEventListener(\"click\",function(event){const btn=event.target&&event.target.closest?event.target.closest(\"#generateMissingMonthlyPacksButton\"):null;btn&&generateMissingMonthlyPacks(btn)}),document.addEventListener(\"click\",function(event){const ticketDetailsButton=event.target&&event.target.closest?event.target.closest(\"[data-ticket-details]\"):null;if(ticketDetailsButton){openTicketDetails(ticketDetailsButton.dataset.ticketDetails);return}const labelButton=event.target&&event.target.closest?event.target.closest(\"[data-special-label]\"):null;if(labelButton){event.preventDefault(),generateSpecialLabels(labelButton,[labelButton.dataset.specialLabel]).catch(err=>setNotice2(err.message,!0));return}const dispatchButton=event.target&&event.target.closest?event.target.closest(\"[data-special-dispatch]\"):null;dispatchButton&&(event.preventDefault(),dispatchSpecialShipments(dispatchButton,[dispatchButton.dataset.specialDispatch]).catch(err=>setNotice2(err.message,!0)))}),$2(\"markBatchDispatchedButton\")?.addEventListener(\"click\",function(){markBatchDispatched(this).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"markBatchDeliveredButton\")?.addEventListener(\"click\",function(){markBatchDelivered(this).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"hydrateAddressesButton\")?.addEventListener(\"click\",function(){hydrateAddresses(this)}),$2(\"downloadPackingListButton\")?.addEventListener(\"click\",downloadPackingList),$2(\"downloadLabelsButton\")?.addEventListener(\"click\",downloadLabelsPdf),$2(\"runMonthStartButton\")?.addEventListener(\"click\",e=>runMonthStart(e.currentTarget)),$2(\"runMidMonthDrawButton\")?.addEventListener(\"click\",e=>runMidMonthDraw(e.currentTarget)),$2(\"refreshSchedulerButton\")?.addEventListener(\"click\",async()=>{await loadScheduler(),setNotice2(\"Scheduler refreshed.\")}),$2(\"refreshDrawAutomationButton\")?.addEventListener(\"click\",async function(){const button2=this,original=button2.textContent;button2.disabled=!0,button2.textContent=\"Refreshing\\u2026\";try{await loadScheduler();const stamp=new Date().toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"});text(\"drawAutomationRefreshState\",\"Last refreshed \"+stamp),setNotice2(\"Draw automation refreshed successfully.\")}catch(err){text(\"drawAutomationRefreshState\",\"Refresh failed\"),setNotice2(\"Draw automation could not be refreshed: \"+(err.message||err),!0)}finally{button2.disabled=!1,button2.textContent=original||\"Refresh Automation\"}}),$2(\"refreshScheduledRunsButton\")?.addEventListener(\"click\",async event=>{await refreshScheduledRuns(event.currentTarget)}),$2(\"runDueAutomationButton\")?.addEventListener(\"click\",e=>runDueAutomations(e.currentTarget)),$2(\"memberSearchButton\")?.addEventListener(\"click\",e=>searchMembers(e.currentTarget)),$2(\"memberSearchResetButton\")?.addEventListener(\"click\",()=>{$2(\"memberSearchInput\")&&($2(\"memberSearchInput\").value=\"\"),$2(\"memberSearchStatus\")&&($2(\"memberSearchStatus\").value=\"all\"),renderMemberSearchEmpty(),setNotice2(\"Member search cleared.\")}),$2(\"memberSearchInput\")?.addEventListener(\"keydown\",event=>{event.key===\"Enter\"&&searchMembers($2(\"memberSearchButton\"))}),$2(\"rechargeSyncPreviewButton\")?.addEventListener(\"click\",async e=>{try{await previewRechargeByEmailV473(e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"rechargeSyncEmailInput\")?.addEventListener(\"input\",()=>resetRechargeMembershipPreviewV473(\"Email changed. Check Recharge again before reconciling.\")),$2(\"rechargeSyncEmailInput\")?.addEventListener(\"keydown\",event=>{event.key===\"Enter\"&&(event.preventDefault(),$2(\"rechargeSyncPreviewButton\")?.click())}),$2(\"rechargeSyncEmailButton\")?.addEventListener(\"click\",async e=>{try{await syncRechargeByEmail(e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"rechargeSyncCustomerButton\")?.addEventListener(\"click\",async e=>{try{await syncRechargeByCustomer(e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"closeCommunicationsEditButton\")?.addEventListener(\"click\",function(){const d=$2(\"communicationsEditDialog\");d?.open&&d.close()}),$2(\"closeCommunicationsPreviewButton\")?.addEventListener(\"click\",function(){const d=$2(\"communicationsPreviewDialog\");d?.open&&d.close()}),$2(\"communicationsEditDialog\")?.addEventListener(\"cancel\",function(e){e.preventDefault(),this.close()}),$2(\"communicationsPreviewDialog\")?.addEventListener(\"cancel\",function(e){e.preventDefault(),this.close()}),$2(\"drawEligibleSearch\")?.addEventListener(\"input\",renderDrawEligibleMembers),$2(\"drawEligibleMembersTable\")?.addEventListener(\"click\",async function(event){const button2=event.target.closest(\"[data-draw-exclusion]\");if(!button2)return;const lookup=button2.dataset.drawExclusion,excluded=button2.dataset.excluded===\"true\";setLoading(button2,!0);try{if((await api(\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/draw-exclusion\",{method:\"POST\",body:JSON.stringify({excluded})}))?.excluded!==excluded)throw new Error(\"Orbit did not confirm the requested draw eligibility state.\");const row=button2.closest(\"tr\");row&&(row.classList.toggle(\"orbit-draw-member-excluded\",excluded),row.classList.toggle(\"orbit-draw-member-eligible\",!excluded)),await loadDrawEligibleMembers(),setNotice2(excluded?\"Member excluded from monthly draws \\u2014 the row is now highlighted and this member cannot be selected.\":\"Member restored to monthly draw eligibility.\")}catch(err){setNotice2(err.message||String(err),!0)}finally{setLoading(button2,!1)}}),$2(\"exportTicketPurchasersButton\")?.addEventListener(\"click\",e=>exportTicketPurchasersV48304(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"ticketAdminSearch\")?.addEventListener(\"input\",()=>{clearTimeout(ticketAdminSearchTimerV457),ticketAdminSearchTimerV457=setTimeout(()=>loadTicketOrderPageV457(1).catch(err=>setNotice2(err.message||err,!0)),300)}),[$2(\"ticketAdminEventFilter\"),$2(\"ticketAdminStatusFilter\"),$2(\"ticketAdminPeriod\")].forEach(el=>el?.addEventListener(\"change\",()=>loadTicketOrderPageV457(1).catch(err=>setNotice2(err.message||err,!0)))),$2(\"closeTicketDetailsButton\")?.addEventListener(\"click\",function(){$2(\"ticketDetailsDialog\")?.close()}),$2(\"closeAddressRecoveryButton\")?.addEventListener(\"click\",function(){$2(\"addressRecoveryDialog\")?.close()}),$2(\"addressSyncRechargeButton\")?.addEventListener(\"click\",function(){syncAddressSource(\"recharge\",this).catch(err=>setAddressRecoveryStatus(err.message,!0))}),$2(\"addressSyncShopifyButton\")?.addEventListener(\"click\",function(){syncAddressSource(\"shopify\",this).catch(err=>setAddressRecoveryStatus(err.message,!0))}),$2(\"addressSyncAllButton\")?.addEventListener(\"click\",function(){syncAddressSource(\"all\",this).catch(err=>setAddressRecoveryStatus(err.message,!0))}),$2(\"addressRecoveryForm\")?.addEventListener(\"submit\",function(event){event.preventDefault(),saveManualAddress($2(\"saveAddressRecoveryButton\")).catch(err=>setAddressRecoveryStatus(err.message,!0))}),$2(\"closeTicketActionButton\")?.addEventListener(\"click\",closeTicketActionDialog),$2(\"ticketActionDialog\")?.addEventListener(\"cancel\",function(event){event.preventDefault(),closeTicketActionDialog()}),document.querySelectorAll(\"[data-v77-events-tab]\").forEach(function(button2){button2.addEventListener(\"click\",async function(){if(this.dataset.orbitSwitching===\"1\")return;const panel=this.dataset.v77EventsTab===\"attendance\"?\"attendance\":\"eventbrite\";this.dataset.orbitSwitching=\"1\";try{rememberOrbitSubtab(\"events\",panel),activateModule(\"events\",panel),panel===\"attendance\"?await loadAttendance():await loadEventbrite()}finally{delete this.dataset.orbitSwitching}})}),$2(\"attendanceEventSelect\")?.addEventListener(\"change\",async function(){const syncButton=$2(\"attendanceSyncButton\");syncButton&&(syncButton.disabled=!this.value,syncButton.title=this.value?\"Sync the selected event's door data\":\"Choose an event first\"),this.value&&await loadAttendanceDetail(this.value)});async function prepareAttendanceEvent(button2,eventIdOverride){const id=eventIdOverride||$2(\"attendanceEventSelect\")?.value;if(!id)throw new Error(\"Choose an event first.\");const resultPanel=$2(\"attendancePrepareResult\");button2&&(button2.dataset.originalHtml||(button2.dataset.originalHtml=button2.innerHTML),button2.disabled=!0,button2.setAttribute(\"aria-busy\",\"true\"),button2.classList.add(\"orbit-door-sync-working\"),button2.innerHTML=\"<span class='orbit-mini-spinner' aria-hidden='true'></span><span>SYNCING DOOR DATA\\u2026</span>\"),resultPanel&&(resultPanel.hidden=!1,resultPanel.classList.add(\"orbit-door-sync-status\"),resultPanel.textContent=\"SYNCING DOOR DATA \\xB7 Please keep this page open\"),await new Promise(function(resolve){requestAnimationFrame(function(){requestAnimationFrame(resolve)})});try{const started=await api(\"/api/admin/attendance/events/\"+encodeURIComponent(id)+\"/prepare-jobs\",{method:\"POST\",body:\"{}\",timeoutMs:15e3,cacheMs:0}),jobId=started?.job?.id;if(!jobId)throw new Error(\"Orbit did not return an Attendance preparation job.\");let job=started.job,waited=0;for(;[\"queued\",\"running\"].includes(job?.status)&&waited<300*1e3;)resultPanel&&(resultPanel.textContent=\"SYNCING DOOR DATA \\xB7 Background job running \\xB7 \"+Math.round(waited/1e3)+\"s\"),await new Promise(resolve=>setTimeout(resolve,1500)),waited+=1500,job=(await api(\"/api/admin/attendance/prepare-jobs/\"+encodeURIComponent(jobId),{timeoutMs:15e3,cacheMs:0})).job;if(job?.status===\"failed\")throw new Error(job.error||\"Attendance preparation failed.\");if(job?.status!==\"completed\")throw new Error(\"Attendance preparation is still running. You can leave this screen and return; the server job will continue.\");const r=job.result||{};await Promise.all([loadAttendance(),loadEventbrite()]),await loadAttendanceDetail(id);const n=$2(\"attendancePrepareResult\");n&&(n.hidden=!1,n.classList.remove(\"orbit-door-sync-status\"),n.textContent=r.ready?\"EVENT READY \\xB7 \"+r.totalSynced+\" QR codes synced\":\"SYNC REQUIRED \\xB7 \"+r.notSynced+\" tickets missing\"),setNotice2(r.ready?\"Event prepared and scanner verified.\":\"Event sync completed but reconciliation is still required.\",!r.ready)}catch(error){const n=$2(\"attendancePrepareResult\");throw n&&(n.hidden=!1,n.classList.remove(\"orbit-door-sync-status\"),n.textContent=\"DOOR DATA SYNC FAILED \\xB7 \"+(error.message||String(error))),error}finally{button2&&(button2.classList.remove(\"orbit-door-sync-working\"),button2.disabled=!$2(\"attendanceEventSelect\")?.value,button2.setAttribute(\"aria-busy\",\"false\"),button2.innerHTML=button2.dataset.originalHtml||\"Sync All Door Data\")}}$2(\"prepareEventButton\")?.addEventListener(\"click\",function(){prepareAttendanceEvent(this).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"attendanceSyncButton\")?.addEventListener(\"click\",function(){prepareAttendanceEvent(this).catch(err=>setNotice2(err.message||String(err),!0))}),$2(\"closeTicketResendButton\")?.addEventListener(\"click\",function(){$2(\"ticketResendDialog\")?.close()}),$2(\"confirmTicketResendButton\")?.addEventListener(\"click\",function(){confirmTicketResend(this).catch(err=>setNotice2(err.message,!0))}),$2(\"ticketDetailsDialog\")?.addEventListener(\"cancel\",function(event){event.preventDefault(),this.close()}),$2(\"ticketResendDialog\")?.addEventListener(\"cancel\",function(event){event.preventDefault(),this.close()}),$2(\"shippingQuoteWeightSelect\")?.addEventListener(\"change\",function(){const btn=$2(\"loadShippingRatesButton\");btn&&loadShippingServiceRates(btn)}),$2(\"testMemberLookupButton\")?.addEventListener(\"click\",async e=>{try{await lookupTestMember(e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"testMemberSearchInput\")?.addEventListener(\"keydown\",async event=>{if(event.key===\"Enter\")try{await lookupTestMember($2(\"testMemberLookupButton\"))}catch(err){setNotice2(err.message,!0)}}),$2(\"testMemberMakeActiveButton\")?.addEventListener(\"click\",async e=>{try{await setTestMemberStatus(\"active\",e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"testMemberMakePendingButton\")?.addEventListener(\"click\",async e=>{try{await setTestMemberStatus(\"pending\",e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"testMemberResetClaimsButton\")?.addEventListener(\"click\",async e=>{try{await resetTestMemberTools(\"claims\",e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"testMemberResetAttendanceButton\")?.addEventListener(\"click\",async e=>{try{await resetTestMemberTools(\"attendance\",e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"connectEventbriteButton\")?.addEventListener(\"click\",async e=>{try{await connectEventbrite(e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"syncEventbriteButton\")?.addEventListener(\"click\",async e=>{try{await syncEventbrite(e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"ensureStaticEventPagesButton\")?.addEventListener(\"click\",async function(){const button2=this,resultBox=$2(\"staticEventPagesResult\"),knownStatic=state.eventbrite?.staticPages||null,tokens=Array.isArray(knownStatic?.tokens)?knownStatic.tokens:[],hasPageAuthority=tokens.some(token=>token.pageRead===!0&&token.pageWrite===!0);if(knownStatic?.reconnectRequired===!0||tokens.length>0&&!hasPageAuthority){resultBox&&(resultBox.hidden=!1,resultBox.className=\"orbit-action-result orbit-static-pages-result orbit-static-pages-result-v379 is-warning\",resultBox.textContent=\"Shopify authorization required. Approve the Page/content permission in the window that just opened. Orbit will create the static URLs automatically after approval.\"),setNotice2(\"Shopify Page permission is required. Approve the Shopify authorization window, then return here and press Refresh.\",!0),window.open(API_BASE+\"/shopify/install\",\"orbitShopifyReconnect\",\"popup=yes,width=820,height=900,scrollbars=yes,resizable=yes\")||(window.location.href=API_BASE+\"/shopify/install\");return}setLoading(button2,!0),resultBox&&(resultBox.hidden=!1,resultBox.className=\"orbit-action-result orbit-static-pages-result orbit-static-pages-result-v379\",resultBox.textContent=\"Creating and verifying real Shopify event pages\\u2026\");try{const result=await api(\"/api/admin/eventbrite/static-pages/ensure\",{method:\"POST\",body:\"{}\",timeoutMs:12e4,cacheMs:0});resultBox&&(resultBox.className=\"orbit-action-result orbit-static-pages-result orbit-static-pages-result-v379 is-success\",resultBox.textContent=result.ready+\"/\"+result.total+\" static ticket URLs ready in Shopify.\"),setNotice2(result.ready+\" verified static ticket URL\"+(result.ready===1?\"\":\"s\")+\" ready in Shopify.\"),await loadEventbrite()}catch(err){const payload=err.data||{},diagnostic=staticPageDiagnosticText(payload),scopeProblem=JSON.stringify(payload).match(/scope|permission|access denied|authori[sz]/i);resultBox&&(resultBox.className=\"orbit-action-result orbit-static-pages-result orbit-static-pages-result-v379 is-error\",resultBox.textContent=scopeProblem?\"Shopify Page permission is still missing. Press Ensure Static Ticket URLs again to open authorization.\":diagnostic||err.message||String(err)),setNotice2(scopeProblem?\"Shopify Page permission is still missing. Press Ensure Static Ticket URLs again; V316 will open authorization directly from your click.\":\"Static URL creation failed. The exact Shopify stage/error is shown under the buttons.\",!0)}finally{setLoading(button2,!1)}}),$2(\"metaIsolationScanButton\")?.addEventListener(\"click\",function(){loadMetaIsolationHealthV4482(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"metaConversionDiagnosticsReload\")?.addEventListener(\"click\",function(){loadMetaConversionDiagnosticsV4489(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"clubMetaConversionDiagnosticsReload\")?.addEventListener(\"click\",function(){loadMetaConversionDiagnosticsV4489(this,\"club\").catch(err=>setNotice2(err.message||err,!0))}),$2(\"saveTrackingSettingsButton\")?.addEventListener(\"click\",function(){saveTrackingSettings(this).catch(err=>setNotice2(err.message||err,!0))}),$2(\"reloadTrackingSettingsButton\")?.addEventListener(\"click\",function(){loadTrackingSettings().then(()=>setNotice2(\"Tracking settings reloaded.\")).catch(err=>setNotice2(err.message||err,!0))}),$2(\"refreshTicketDiscountCodes\")?.addEventListener(\"click\",async e=>{try{setLoading(e.currentTarget,!0),await loadTicketDiscountCodes(),setNotice2(\"Ticket discount codes refreshed.\")}catch(err){setNotice2(err.message,!0)}finally{setLoading(e.currentTarget,!1)}}),$2(\"saveTicketDiscountCode\")?.addEventListener(\"click\",async e=>{try{await saveTicketDiscountCode(e.currentTarget)}catch(err){setNotice2(err.message,!0)}}),$2(\"ticketDiscountCodeList\")?.addEventListener(\"click\",async function(event){const button2=event.target.closest(\"[data-delete-ticket-discount]\");if(!button2)return;const code=button2.dataset.deleteTicketDiscount;if(confirm(\"Permanently delete ticket discount code \"+code+\" from Promo Codes? Existing completed orders keep their historical discount record.\"))try{setLoading(button2,!0),await api(\"/api/admin/ticket-discount-codes/\"+encodeURIComponent(code)+\"/delete\",{method:\"POST\",body:\"{}\",cacheMs:0}),await loadTicketDiscountCodes(),setNotice2(\"Ticket discount code removed: \"+code)}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}),$2(\"ensureShopifyWebhookButton\")?.addEventListener(\"click\",async e=>{try{await ensureShopifyWebhook(e.currentTarget)}catch(err){const target=$2(\"shopifyWebhookResult\");target&&(target.textContent=err.message),setNotice2(err.message,!0)}}),$2(\"eventCalendarPreviousV485\")?.addEventListener(\"click\",()=>{const d=state.eventPlanningMonthV485;state.eventPlanningMonthV485=new Date(d.getFullYear(),d.getMonth()-1,1),state.eventPlanningDirectoryV618=[],renderEventCalendarV485(),loadEventPlanningV485().catch(err=>setNotice2(err.message,!0))}),$2(\"eventCalendarNextV485\")?.addEventListener(\"click\",()=>{const d=state.eventPlanningMonthV485;state.eventPlanningMonthV485=new Date(d.getFullYear(),d.getMonth()+1,1),state.eventPlanningDirectoryV618=[],renderEventCalendarV485(),loadEventPlanningV485().catch(err=>setNotice2(err.message,!0))}),$2(\"eventCalendarTodayV485\")?.addEventListener(\"click\",()=>{const d=new Date;state.eventPlanningMonthV485=new Date(d.getFullYear(),d.getMonth(),1),state.eventPlanningDirectoryV618=[],renderEventCalendarV485(),loadEventPlanningV485().catch(err=>setNotice2(err.message,!0))}),$2(\"eventCalendarMonthPickerV487\")?.addEventListener(\"change\",e=>{const m=String(e.currentTarget.value||\"\").match(/^(\\d{4})-(\\d{2})$/);m&&(state.eventPlanningMonthV485=new Date(Number(m[1]),Number(m[2])-1,1),state.eventPlanningDirectoryV618=[],renderEventCalendarV485(),loadEventPlanningV485().catch(err=>setNotice2(err.message,!0)))}),$2(\"eventPlanSaveV485\")?.addEventListener(\"click\",e=>saveEventPlanningEntryV485(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"eventClashCheckV485\")?.addEventListener(\"click\",e=>checkEventClashesV485(e.currentTarget).catch(err=>{const target=$2(\"eventClashResultV485\");target&&(target.innerHTML=\"<div class='orbit-notice error'><strong>Clash check failed.</strong><br>\"+esc(err.message||err)+\"</div>\"),setNotice2(err.message||err,!0)})),$2(\"eventPlanSavedListV485\")?.addEventListener(\"click\",e=>{const button2=e.target.closest(\"[data-event-plan-archive-v485]\");button2&&archiveEventPlanningEntryV485(button2.dataset.eventPlanArchiveV485,button2).catch(err=>setNotice2(err.message||err,!0))}),$2(\"eventCalendarGridV485\")?.addEventListener(\"click\",e=>{const day=e.target.closest(\"[data-event-calendar-date-v485]\");if(!day)return;const date=day.dataset.eventCalendarDateV485;renderEventCalendarDayV618(date),invalidateEventCheckV618(),$2(\"eventClashEndDateV618\")&&($2(\"eventClashEndDateV618\").value=\"\"),$2(\"eventPlanDateV485\")&&($2(\"eventPlanDateV485\").value=date),$2(\"eventClashDateV485\")&&($2(\"eventClashDateV485\").value=date)}),document.querySelectorAll(\"[data-ebd-nav]\").forEach(button2=>{button2.addEventListener(\"click\",()=>activateModule(\"events\",button2.dataset.ebdNav,{historyMode:\"push\"}))}),document.querySelectorAll(\"[data-tab]\").forEach(button2=>{button2.addEventListener(\"click\",()=>{const module=$2(\"tab-\"+button2.dataset.tab)?.dataset.module||state.currentModule;activateModule(module,button2.dataset.tab)})}),$2(\"supportConversationModal\")?.addEventListener(\"cancel\",event=>{event.preventDefault(),closeSupportModal()}),document.addEventListener(\"click\",async event=>{const rawTarget=event.target;if(!(rawTarget instanceof HTMLElement))return;if(rawTarget.closest(\"[data-member-action='start-support']\")){event.preventDefault(),event.stopPropagation();try{startSelectedMemberSupportConversation()}catch(err){setNotice2(err.message||String(err),!0)}return}const target=rawTarget.closest(\"#saveTemplateButton, #previewTemplateButton, #testSendTemplateButton, #resetTemplateButton, [data-refresh], [data-pack-id], [data-pack-label], [data-pack-status], [data-pack-dispatch], [data-pack-reissue], [data-pack-undo-reissue], [data-pack-delete], [data-special-delete], [data-template-edit], [data-template-preview], [data-download-labels], [data-draw-id], [data-ticket-code], [data-golden-qr], [data-golden-copy], [data-member-lookup], [data-member-login-as], [data-member-back-search], [data-member-summary-filter], [data-dashboard-member-filter], [data-member-pane-tab], [data-member-action], [data-member-communication-resend], [data-copy-value], [data-member-qr], [data-fulfilment-member-qr], [data-loyalty-adjust], [data-loyalty-test], [data-loyalty-reverse], [data-sync-checkout], [data-force-fulfil], [data-resend-public-tickets], [data-ticket-quick-action], [data-issue-carer-ticket], [data-save-event-tag], [data-event-tag-select], [data-prepare-event], [data-attendance-event], [data-test-fulfil], [data-free-test-checkout], [data-support-open], [data-support-reply], [data-support-status], [data-support-close], #supportModalRefresh, #supportModalReply, #supportModalResolve, #supportModalReopen, [data-generate-missing-monthly-packs], [data-alert-module], [data-address-action], #createGoldenTicketButton\");if(target)try{if(target.id===\"createGoldenTicketButton\"){await createGoldenTicket(target);return}if(target.dataset.generateMissingMonthlyPacks!==void 0){await generateMissingMonthlyPacks(target);return}if(target.dataset.templateEdit){await editTemplate(target.dataset.templateEdit,target);return}if(target.dataset.templatePreview){state.selectedTemplateKey=target.dataset.templatePreview,await previewTemplate(target);return}if(target.id===\"saveTemplateButton\"){await saveTemplate(target);return}if(target.id===\"previewTemplateButton\"){await previewTemplate(target);return}if(target.id===\"testSendTemplateButton\"){await testSendTemplate(target);return}if(target.id===\"resetTemplateButton\"){await resetTemplate(target);return}if(target.dataset.packReissue){const packId=target.dataset.packReissue,reason=window.prompt(\"Why are you reissuing this parcel?\",\"Returned to sender\");if(reason===null)return;const confirmText=window.prompt(\"Type REISSUE to create a replacement parcel. The original parcel and tracking history will be kept.\",\"\");if(String(confirmText||\"\").trim().toUpperCase()!==\"REISSUE\")return;setLoading(target,!0);try{const result=await api(\"/api/admin/fulfilment/pack/\"+encodeURIComponent(packId)+\"/reissue\",{method:\"POST\",body:JSON.stringify({reason,confirmation:\"REISSUE\"})});setNotice2(\"Replacement parcel \"+(result.replacementPackId||\"created\")+\" is ready for a new label.\"),await loadFulfilment()}finally{setLoading(target,!1)}return}if(target.dataset.packUndoReissue){const packId=target.dataset.packUndoReissue,reason=window.prompt(\"Why are you cancelling this replacement parcel?\",\"Accidental reissue\");if(reason===null)return;const confirmText=window.prompt(\"Type UNDO to cancel this replacement and restore the original parcel and tracking.\",\"\");if(String(confirmText||\"\").trim().toUpperCase()!==\"UNDO\")return;setLoading(target,!0);try{const result=await api(\"/api/admin/fulfilment/pack/\"+encodeURIComponent(packId)+\"/undo-reissue\",{method:\"POST\",body:JSON.stringify({reason,confirmation:\"UNDO\"})});setNotice2(\"Replacement cancelled. Original parcel \"+(result.originalPackId||\"restored\")+\" is current again.\"),await loadFulfilment(),state.selectedMemberLookup&&await openMemberWorkspace(state.selectedMemberLookup,{preservePane:!0}).catch(()=>{})}finally{setLoading(target,!1)}return}if(target.dataset.packDelete){await deletePackRow(target.dataset.packDelete,target);return}if(target.dataset.specialDelete){await deleteSpecialShipment(target.dataset.specialDelete,target);return}if(target.dataset.packLabel){await quickPackAction(target.dataset.packLabel,target.dataset.packId,target);return}if(target.dataset.packStatus){await quickPackAction(target.dataset.packStatus,target.dataset.packId,target);return}if(target.dataset.packDispatch){await quickPackAction(\"shipped\",target.dataset.packDispatch,target);return}if(target.dataset.downloadLabels!==void 0){downloadLabelsPdf();return}if(target.dataset.refresh===\"fulfilment\"&&await loadFulfilment(target),target.dataset.refresh===\"draws\"&&(await loadDraws(),setNotice2(\"Prize Draws refreshed.\")),target.dataset.refresh===\"golden\"&&(await loadGolden(),setNotice2(\"Golden Tickets refreshed.\")),target.dataset.refresh===\"events\"&&(await loadEvents(),setNotice2(\"Workflow Events refreshed.\")),target.dataset.refresh===\"scheduled-runs\"&&await refreshScheduledRuns(target),target.dataset.refresh===\"communications\"&&(await loadCommunications(),canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())===\"card-shows\"&&await loadVendorClubEmailsV621(),setNotice2(\"Email templates refreshed.\")),target.dataset.alertModule){activateModule(target.dataset.alertModule,target.dataset.moduleTab||void 0),target.dataset.alertModule===\"shipping\"&&target.dataset.moduleTab&&window.setTimeout(function(){document.querySelector('[data-shipping-tab=\"'+canonicalOrbitSubtab(\"shipping\",target.dataset.moduleTab)+'\"]')?.click()},80);return}if(target.dataset.supportClose!==void 0){closeSupportModal();return}if(target.id===\"supportModalRefresh\"){state.currentSupportTicketId&&await openSupportConversation(state.currentSupportTicketId,target);return}if(target.id===\"supportModalReply\"){state.currentSupportTicketId&&await replyToSupport(state.currentSupportTicketId,target);return}if(target.id===\"supportModalResolve\"){state.currentSupportTicketId&&await updateSupportStatus(state.currentSupportTicketId,\"resolved\",target);return}if(target.id===\"supportModalReopen\"){state.currentSupportTicketId&&await updateSupportStatus(state.currentSupportTicketId,\"open\",target);return}if(target.dataset.supportOpen){await openSupportConversation(target.dataset.supportOpen,target);return}if(target.dataset.supportReply&&await replyToSupport(target.dataset.supportReply,target),target.dataset.supportStatus&&await updateSupportStatus(target.dataset.supportStatus,target.dataset.status||\"open\",target),target.dataset.refresh===\"attendance\"){setLoading(target,!0);try{await loadAttendance(),setNotice2(\"Attendance Centre refreshed.\")}finally{setLoading(target,!1)}return}if(target.dataset.refresh===\"eventbrite\"){setLoading(target,!0);try{await loadEventbrite(),setNotice2(\"Events Centre refreshed.\")}finally{setLoading(target,!1)}}if(target.dataset.refresh===\"shopify\"){const originalHtml=target.innerHTML,statusTarget=$2(\"ticketCheckoutsTable\");target.disabled=!0,target.dataset.refreshing=\"1\",target.classList.add(\"orbit-ticket-refresh-working\"),target.setAttribute(\"aria-busy\",\"true\"),target.innerHTML=\"<span class='orbit-mini-spinner' aria-hidden='true'></span><span>Refreshing tickets\\u2026</span>\",statusTarget&&statusTarget.setAttribute(\"aria-busy\",\"true\");try{await loadShopify(),setNotice2(\"Tickets refreshed.\")}finally{target.disabled=!1,target.dataset.refreshing=\"0\",target.classList.remove(\"orbit-ticket-refresh-working\"),target.removeAttribute(\"aria-busy\"),target.innerHTML=originalHtml,statusTarget&&statusTarget.removeAttribute(\"aria-busy\")}return}if(target.dataset.syncCheckout&&await syncCheckoutOrder(target.dataset.syncCheckout,target),target.dataset.forceFulfil&&await forceFulfilCheckout(target.dataset.forceFulfil,target),target.dataset.resendPublicTickets){await resendPublicTickets(target.dataset.resendPublicTickets,target);return}if(target.dataset.ticketQuickAction){openTicketAction(target.dataset.ticketQuickAction,target.dataset.checkoutId);return}if(target.dataset.issueCarerTicket){openTicketAction(\"carer\",target.dataset.issueCarerTicket);return}if(target.dataset.prepareEvent){await prepareAttendanceEvent(target,target.dataset.prepareEvent);return}if(target.dataset.attendanceEvent){activateModule(\"events\",\"attendance\");const sel=$2(\"attendanceEventSelect\");sel&&(sel.value=target.dataset.attendanceEvent),await loadAttendanceDetail(target.dataset.attendanceEvent);return}if(target.dataset.testFulfil&&await testFulfilCheckout(target.dataset.testFulfil,target),target.dataset.freeTestCheckout&&await createFreeTestCheckout(target.dataset.freeTestCheckout,target),target.dataset.downloadLabels&&downloadLabelsPdf(),target.dataset.packId&&target.dataset.packLabel===\"generate\"){const wasChecked=target.closest(\"tr\")?.querySelector(\".orbit-pack-select\")?.checked;document.querySelectorAll(\".orbit-pack-select\").forEach(input=>input.checked=!1);const rowCheck=target.closest(\"tr\")?.querySelector(\".orbit-pack-select\");rowCheck&&(rowCheck.checked=!0),await generateMonthlyDispatch(target),rowCheck&&(rowCheck.checked=!!wasChecked)}if(target.dataset.packId&&target.dataset.packStatus&&await updatePackStatus(target.dataset.packId,target.dataset.packStatus),target.dataset.drawId&&target.dataset.drawStatus&&await updateDrawStatus(target.dataset.drawId,target.dataset.drawStatus),target.dataset.goldenQr){await downloadGoldenTicketQr(target.dataset.ticketCode,target.dataset.goldenQr,target);return}if(target.dataset.goldenCopy!==void 0){await copyGoldenTicketClaimLink(target.dataset.goldenCopy,target);return}if(target.dataset.ticketCode&&target.dataset.ticketStatus&&await updateTicketStatus(target.dataset.ticketCode,target.dataset.ticketStatus),target.dataset.addressAction){const lookup=target.dataset.addressLookup||selectedMemberLookup,packId=target.dataset.addressPack||null;if(addressRecoveryContext={lookup,packId,delivery:null},target.dataset.addressAction===\"edit\"){openAddressRecovery(lookup,packId);return}openAddressRecovery(lookup,packId),await syncAddressSource(target.dataset.addressAction,target);return}if(target.dataset.memberBackSearch!==void 0){returnToMemberSearch();return}if(target.dataset.memberLoginAs){await loginAsMember(target.dataset.memberLoginAs,target);return}if(target.dataset.memberLookup){await loadMemberProfile(target.dataset.memberLookup,target);return}if(target.dataset.memberCommunicationResend){if(!selectedMemberLookup)throw new Error(\"Select a member first.\");if(!window.confirm(\"Resend this exact communication to the member and record the manual resend?\"))return;setLoading(target,!0);try{const data=await api(\"/api/admin/members/\"+encodeURIComponent(selectedMemberLookup)+\"/communications/\"+encodeURIComponent(target.dataset.memberCommunicationResend)+\"/resend\",{method:\"POST\",body:JSON.stringify({})});await loadMemberProfile(selectedMemberLookup),setNotice2(data.message||\"Communication resent.\")}finally{setLoading(target,!1)}}if(target.dataset.memberSummaryFilter){const statusSelect=$2(\"memberSearchStatus\"),searchInput=$2(\"memberSearchInput\");statusSelect&&(statusSelect.value=target.dataset.memberSummaryFilter),searchInput&&(searchInput.value=\"\"),await searchMembers(target)}if(target.dataset.dashboardMemberFilter){activateModule(\"members\");const statusSelect=$2(\"memberSearchStatus\"),searchInput=$2(\"memberSearchInput\");statusSelect&&(statusSelect.value=target.dataset.dashboardMemberFilter),searchInput&&(searchInput.value=\"\"),await searchMembers(null),document.getElementById(\"module-members\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"});return}if(target.dataset.memberPaneTab&&setActiveMemberPane(target.dataset.memberPaneTab),target.dataset.memberAction===\"refresh\"){await refreshSelectedMember(target);return}if(target.dataset.memberAction===\"archive\"){await archiveSelectedMember(target);return}target.dataset.memberAction===\"flag-support\"&&await flagSelectedMember(),target.dataset.memberAction===\"clear-support-flag\"&&await clearSelectedMemberFlag(),target.dataset.memberAction===\"set-stage\"&&await setSelectedMemberStage(!1,target),target.dataset.memberAction===\"set-stage-create-pack\"&&await setSelectedMemberStage(!0,target),target.dataset.memberAction===\"generate-pack\"&&await generatePackForSelectedMember(target),target.dataset.fulfilmentMemberQr&&await downloadMemberQr(\"png\",target,target.dataset.fulfilmentMemberQr,target.dataset.fulfilmentMemberQr),target.dataset.memberQr&&await downloadSelectedMemberQr(target.dataset.memberQr,target),target.dataset.loyaltyTest!==void 0&&await testSelectedMemberQr(target),target.dataset.loyaltyAdjust!==void 0&&await adjustSelectedMemberPoints(target),target.dataset.loyaltyReverse&&await reverseSelectedMemberPoints(target.dataset.loyaltyReverse,target),target.dataset.copyValue!==void 0&&await copyText(target.dataset.copyValue,target)}catch(err){setNotice2(err.message,!0)}})}function enforceMonthlyDrawSummaryLayout(){const summary=document.querySelector(\".orbit-monthly-draw-summary\");if(!summary)return;summary.style.setProperty(\"display\",\"grid\",\"important\"),summary.style.setProperty(\"grid-template-columns\",window.innerWidth<=760?\"1fr\":\"repeat(2, minmax(0, 1fr))\",\"important\"),summary.style.setProperty(\"gap\",\"14px\",\"important\"),summary.style.setProperty(\"align-items\",\"stretch\",\"important\");const cards=Array.from(summary.children);cards.forEach((card,index)=>{card.style.setProperty(\"min-width\",\"0\",\"important\"),card.style.setProperty(\"width\",\"auto\",\"important\"),card.style.setProperty(\"overflow\",\"hidden\",\"important\"),card.style.setProperty(\"grid-column\",index===cards.length-1?\"1 / -1\":\"auto\",\"important\"),card.querySelectorAll(\"span,strong,small\").forEach(node=>{node.style.setProperty(\"display\",\"block\",\"important\"),node.style.setProperty(\"min-width\",\"0\",\"important\"),node.style.setProperty(\"max-width\",\"100%\",\"important\"),node.style.setProperty(\"white-space\",\"normal\",\"important\"),node.style.setProperty(\"overflow-wrap\",\"anywhere\",\"important\"),node.style.setProperty(\"word-break\",\"break-word\",\"important\")})})}let loyaltyRewards=[],loyaltyOrders=[],loyaltyCategories=[],loyaltyEarningRules={showCheckIn:5,membershipReferral:10,membershipRebill:2,ticketReferral:2};function rewardState(reward){return reward.status?reward.status:reward.active===!0?\"active\":reward.active===!1&&reward.retired===!0?\"retired\":\"draft\"}function ensureLoyaltyOperationsV727(){const anchor=document.getElementById(\"loyaltyOperationsMountV728\");if(!anchor)return;const panel=document.createElement(\"div\");panel.id=\"loyaltyOperationsPanel\",panel.className=\"orbit-loyalty-workspace\",panel.innerHTML=\"<div class='orbit-panel-header orbit-loyalty-admin-config-v376'><div><p class='orbit-kicker'>Loyalty Store</p><h2>Rewards & Stock Control</h2><p>Manage the complete reward catalogue, drafts, stock and member redemptions from one workspace.</p></div><div class='orbit-action-row'><button type='button' id='createLoyaltyReward'>Create Reward</button><button type='button' id='refreshLoyaltyOperationsV727' class='secondary'>Refresh</button></div></div><div class='orbit-loyalty-summary orbit-loyalty-admin-config-v376'><article><span>Live rewards</span><strong id='loyaltyLiveCount'>\\u2014</strong></article><article><span>Draft rewards</span><strong id='loyaltyDraftCount'>\\u2014</strong></article><article><span>Low stock</span><strong id='loyaltyLowStockCount'>\\u2014</strong></article><article><span>Orders</span><strong id='loyaltyOrderCount'>\\u2014</strong></article></div><div id='loyaltyOperationsStatusV727' class='orbit-result' hidden></div><section class='orbit-loyalty-earning-manager orbit-loyalty-admin-config-v376'><div><h3>Points Earning Values</h3><p>Set how many points members earn for each qualifying action.</p></div><form id='loyaltyEarningRulesForm' class='orbit-form-grid'><label>Show check-in<input id='loyaltyRuleShowCheckIn' type='number' min='0'></label><label>Membership referral<input id='loyaltyRuleMembershipReferral' type='number' min='0'></label><label>Successful rebill<input id='loyaltyRuleMembershipRebill' type='number' min='0'></label><label>Ticket referral, per paid ticket<input id='loyaltyRuleTicketReferral' type='number' min='0'></label><button type='submit'>Save Point Values</button></form></section><section class='orbit-loyalty-category-manager orbit-loyalty-admin-config-v376'><div><h3>Reward Categories</h3><p>Create sections such as Slabs, Sealed and Other, then assign each reward in its editor.</p></div><form id='loyaltyCategoryForm'><input id='loyaltyCategoryName' maxlength='80' placeholder='New category name' required><button type='submit'>Add Category</button></form><div id='loyaltyCategoryList' class='orbit-loyalty-category-list'></div></section><section class='orbit-loyalty-pane active' data-loyalty-pane='live'><div class='orbit-subpanel-heading'><div><h3>Live Rewards & Stock Control</h3><p>Rewards currently visible to active members.</p></div></div><div id='loyaltyLiveRewards' class='orbit-reward-grid'>Loading rewards\\u2026</div></section><section class='orbit-loyalty-pane' data-loyalty-pane='drafts'><div class='orbit-subpanel-heading'><div><h3>Draft Rewards</h3><p>Prepare and review rewards before publishing them.</p></div></div><div id='loyaltyDraftRewards' class='orbit-reward-grid'>Loading drafts\\u2026</div></section><section class='orbit-loyalty-pane' data-loyalty-pane='history'><div class='orbit-subpanel-heading'><div><h3>Reward History</h3><p>Retired and hidden rewards kept for operational history.</p></div></div><div id='loyaltyRewardHistory' class='orbit-reward-grid'>Loading history\\u2026</div></section><section class='orbit-loyalty-pane' data-loyalty-pane='orders'><div class='orbit-subpanel-heading'><div><h3>Loyalty Orders</h3><p>Member redemptions and fulfilment status.</p></div></div><div id='loyaltyOrdersTableV727' class='orbit-table-wrap'>Loading orders\\u2026</div></section>\",anchor.replaceWith(panel),document.getElementById(\"refreshLoyaltyOperationsV727\")?.addEventListener(\"click\",function(){loadLoyaltyOperationsV727(this)}),document.getElementById(\"createLoyaltyReward\")?.addEventListener(\"click\",()=>openLoyaltyRewardDialog()),document.getElementById(\"loyaltyCategoryForm\")?.addEventListener(\"submit\",saveLoyaltyCategoryV205),document.getElementById(\"loyaltyEarningRulesForm\")?.addEventListener(\"submit\",saveLoyaltyEarningRulesV207),panel.addEventListener(\"click\",function(event){const edit=event.target.closest(\"[data-loyalty-edit]\");edit&&openLoyaltyRewardDialog(edit.dataset.loyaltyEdit);const status=event.target.closest(\"[data-loyalty-status]\");status&&updateLoyaltyRewardStatus(status.dataset.loyaltyStatus,status.dataset.status,status);const cancel=event.target.closest(\"[data-loyalty-order-cancel-v727]\");cancel&&cancelLoyaltyOrderV727(cancel);const deleteOrder=event.target.closest(\"[data-loyalty-order-delete-v350]\");deleteOrder&&deleteCancelledLoyaltyOrderV350(deleteOrder);const deleteDraft=event.target.closest(\"[data-loyalty-delete-draft]\");deleteDraft&&(event.preventDefault(),event.stopPropagation(),deleteDraftRewardV211(deleteDraft.dataset.loyaltyDeleteDraft,deleteDraft).catch(err=>setNotice2(err.message||err,!0)))}),bindLoyaltyDialog()}function loyaltyRewardCard(r){const status=rewardState(r),badge=status===\"active\"?\"success\":status===\"draft\"?\"warning\":\"neutral\",image=r.imageUrl?\"<img src='\"+esc(r.imageUrl)+\"' alt=''>\":\"<div class='orbit-reward-image-empty'>No image</div>\",draftDelete=status===\"draft\"?\"<button type='button' class='danger' data-loyalty-delete-draft='\"+esc(r.id)+\"'>Delete Draft</button>\":\"\",stateAction=status===\"active\"?\"<button type='button' class='secondary' data-loyalty-status='\"+esc(r.id)+\"' data-status='draft'>Unpublish</button>\":status===\"draft\"?\"<button type='button' class='secondary' data-loyalty-status='\"+esc(r.id)+\"' data-status='active'>Publish</button>\":\"<button type='button' class='secondary' data-loyalty-status='\"+esc(r.id)+\"' data-status='draft'>Restore to Draft</button>\";return\"<article class='orbit-reward-card'><div class='orbit-reward-image'>\"+image+\"</div><div class='orbit-reward-card-body'><div class='orbit-reward-card-heading'><div><h3>\"+esc(r.name)+\"</h3><span class='orbit-pill \"+badge+\"'>\"+esc(status.charAt(0).toUpperCase()+status.slice(1))+\"</span></div><small class='orbit-reward-category'>\"+esc(r.categoryName||\"Other\")+\"</small><p>\"+esc(String(r.description||\"No description added.\").replace(/<[^>]+>/g,\" \"))+\"</p></div><dl><div><dt>Points</dt><dd>\"+esc(r.pointsPrice)+\"</dd></div><div><dt>Stock</dt><dd>\"+esc(r.stock)+\"</dd></div><div><dt>Type</dt><dd>\"+(r.shippingRequired?\"Physical\":\"Digital\")+\"</dd></div></dl><div class='orbit-action-row'><button type='button' data-loyalty-edit='\"+esc(r.id)+\"'>View & Edit</button>\"+draftDelete+stateAction+\"</div></div></article>\"}function renderLoyaltyWorkspace(){const groups={live:[],drafts:[],history:[]};loyaltyRewards.forEach(r=>{const st=rewardState(r);(st===\"active\"?groups.live:st===\"draft\"?groups.drafts:groups.history).push(r)});const render=(id,items,empty)=>{const el=document.getElementById(id);el&&(el.innerHTML=items.length?items.map(loyaltyRewardCard).join(\"\"):\"<div class='orbit-empty-state'><strong>\"+esc(empty)+\"</strong><span>Create or move a reward here when needed.</span></div>\")};render(\"loyaltyLiveRewards\",groups.live,\"No live rewards\"),render(\"loyaltyDraftRewards\",groups.drafts,\"No draft rewards\"),render(\"loyaltyRewardHistory\",groups.history,\"No retired rewards\"),text(\"loyaltyLiveCount\",groups.live.length),text(\"loyaltyDraftCount\",groups.drafts.length),text(\"loyaltyLowStockCount\",groups.live.filter(r=>Number(r.stock)<=3).length),text(\"loyaltyOrderCount\",loyaltyOrders.length);const categoryList=document.getElementById(\"loyaltyCategoryList\");categoryList&&(categoryList.innerHTML=loyaltyCategories.length?loyaltyCategories.map(c=>\"<span><strong>\"+esc(c.name)+\"</strong><button type='button' class='secondary' data-loyalty-category-edit='\"+esc(c.id)+\"'>Rename</button><button type='button' class='secondary' data-loyalty-category-delete='\"+esc(c.id)+\"' aria-label='Delete \"+esc(c.name)+\"'>Delete</button></span>\").join(\"\"):\"<em>No custom categories yet. Uncategorised rewards appear under Other.</em>\"),categoryList?.querySelectorAll(\"[data-loyalty-category-edit]\").forEach(btn=>btn.addEventListener(\"click\",()=>renameLoyaltyCategoryV207(btn.dataset.loyaltyCategoryEdit,btn))),categoryList?.querySelectorAll(\"[data-loyalty-category-delete]\").forEach(btn=>btn.addEventListener(\"click\",()=>deleteLoyaltyCategoryV205(btn.dataset.loyaltyCategoryDelete,btn)));const ot=document.getElementById(\"loyaltyOrdersTableV727\");ot&&(ot.innerHTML=table([\"Order\",\"Member\",\"Contents\",\"Points\",\"Status\",\"Shipment\",\"Action\"],loyaltyOrders.map(function(o){const state2=String(o.status||\"\").toLowerCase(),canCancel=!/cancel|refund|dispatch|deliver/i.test(state2),canDelete=/cancel|refund/.test(state2),action=canCancel?\"<button type='button' class='secondary' data-loyalty-order-cancel-v727='\"+esc(o.id)+\"'>Cancel & Refund</button>\":canDelete?\"<button type='button' class='danger' data-loyalty-order-delete-v350='\"+esc(o.id)+\"'>Delete Cancelled Order</button>\":\"\\u2014\";return\"<tr><td><strong>\"+esc(o.orderNumber||o.id)+\"</strong><br><small>\"+esc(prettyDate(o.createdAt))+\"</small></td><td>\"+esc(o.memberNumber||\"\\u2014\")+\"<br><small>\"+esc(o.email||\"\\u2014\")+\"</small></td><td>\"+esc((o.items||[]).map(i=>i.quantity+\" \\xD7 \"+i.name).join(\", \")||\"\\u2014\")+\"</td><td>\"+esc(o.pointsTotal)+\"</td><td>\"+esc(humanDrawStatus(o.status))+\"</td><td>\"+esc(o.shipmentId||\"Digital\")+\"</td><td>\"+action+\"</td></tr>\"}),\"No loyalty orders yet.\")),openLoyaltyPane(state.currentLoyaltyPane||\"live\")}function openLoyaltyPane(pane){state.currentLoyaltyPane=pane||\"live\",document.querySelectorAll(\"[data-loyalty-pane]\").forEach(el=>el.classList.toggle(\"active\",el.dataset.loyaltyPane===state.currentLoyaltyPane)),document.querySelectorAll('[data-workspace-group=\"loyalty\"] [data-loyalty-open]').forEach(el=>el.classList.toggle(\"active\",el.dataset.loyaltyOpen===state.currentLoyaltyPane)),document.querySelectorAll(\".orbit-loyalty-admin-config-v376\").forEach(el=>el.hidden=state.currentLoyaltyPane!==\"live\");const paneEl=document.querySelector('[data-loyalty-pane=\"'+CSS.escape(state.currentLoyaltyPane)+'\"]');paneEl&&state.currentModule===\"loyalty\"&&requestAnimationFrame(()=>paneEl.scrollIntoView({behavior:\"smooth\",block:\"start\"}))}async function loadLoyaltyOperationsV727(button2){ensureLoyaltyOperationsV727(),button2&&setLoading(button2,!0);try{const[rd,od,cd,er]=await Promise.all([api(\"/api/admin/loyalty-store/rewards\"),api(\"/api/admin/loyalty-store/orders?limit=100\"),api(\"/api/admin/loyalty-store/categories\"),api(\"/api/admin/loyalty-store/earning-rules\")]);loyaltyRewards=rd.rewards||[],loyaltyOrders=od.orders||[],loyaltyCategories=cd.categories||[],loyaltyEarningRules=er.rules||loyaltyEarningRules,renderLoyaltyWorkspace(),[[\"loyaltyRuleShowCheckIn\",\"showCheckIn\"],[\"loyaltyRuleMembershipReferral\",\"membershipReferral\"],[\"loyaltyRuleMembershipRebill\",\"membershipRebill\"],[\"loyaltyRuleTicketReferral\",\"ticketReferral\"]].forEach(([id,key])=>{const el=document.getElementById(id);el&&(el.value=loyaltyEarningRules[key]??0)})}catch(err){const status=document.getElementById(\"loyaltyOperationsStatusV727\");status&&(status.hidden=!1,status.textContent=err.message||\"Could not load Loyalty operations.\")}finally{button2&&setLoading(button2,!1)}}async function saveLoyaltyEarningRulesV207(event){event.preventDefault();const button2=event.currentTarget.querySelector(\"button\");setLoading(button2,!0);try{const body={showCheckIn:Number(document.getElementById(\"loyaltyRuleShowCheckIn\").value),membershipReferral:Number(document.getElementById(\"loyaltyRuleMembershipReferral\").value),membershipRebill:Number(document.getElementById(\"loyaltyRuleMembershipRebill\").value),ticketReferral:Number(document.getElementById(\"loyaltyRuleTicketReferral\").value)};loyaltyEarningRules=(await api(\"/api/admin/loyalty-store/earning-rules\",{method:\"POST\",body:JSON.stringify(body)})).rules||body,setNotice2(\"Loyalty point values saved.\")}finally{setLoading(button2,!1)}}async function renameLoyaltyCategoryV207(id,button2){const category=loyaltyCategories.find(c=>String(c.id)===String(id));if(!category)return;const name=prompt(\"Rename this reward category:\",category.name);if(!(!name||name.trim()===category.name)){setLoading(button2,!0);try{await api(\"/api/admin/loyalty-store/categories\",{method:\"POST\",body:JSON.stringify({id,name:name.trim(),sortOrder:category.sortOrder||0})}),await loadLoyaltyOperationsV727(),setNotice2(\"Category renamed and assigned rewards preserved.\")}finally{setLoading(button2,!1)}}}async function saveLoyaltyCategoryV205(event){event.preventDefault();const input=document.getElementById(\"loyaltyCategoryName\"),button2=event.currentTarget.querySelector(\"button\"),name=input?.value.trim();if(name){setLoading(button2,!0);try{await api(\"/api/admin/loyalty-store/categories\",{method:\"POST\",body:JSON.stringify({name,sortOrder:loyaltyCategories.length})}),input&&(input.value=\"\"),await loadLoyaltyOperationsV727(),setNotice2(\"Reward category added.\")}finally{setLoading(button2,!1)}}}async function deleteLoyaltyCategoryV205(id,button2){if(confirm(\"Delete this empty reward category? Rewards must be moved out of it first.\")){setLoading(button2,!0);try{await api(\"/api/admin/loyalty-store/categories/\"+encodeURIComponent(id),{method:\"DELETE\"}),await loadLoyaltyOperationsV727(),setNotice2(\"Reward category deleted.\")}finally{setLoading(button2,!1)}}}function populateLoyaltyCategorySelectV205(selected){const select=document.getElementById(\"loyaltyRewardCategory\");select&&(select.innerHTML=\"<option value=''>Other</option>\"+loyaltyCategories.map(c=>\"<option value='\"+esc(c.id)+\"'>\"+esc(c.name)+\"</option>\").join(\"\"),select.value=selected||\"\")}function bindLoyaltyDialog(){const dialog=document.getElementById(\"loyaltyRewardDialog\");!dialog||dialog.dataset.bound||(dialog.dataset.bound=\"true\",document.getElementById(\"closeLoyaltyRewardDialog\")?.addEventListener(\"click\",()=>dialog.close()),document.getElementById(\"loyaltyRewardForm\")?.addEventListener(\"submit\",saveLoyaltyRewardV727),document.getElementById(\"deleteLoyaltyReward\")?.addEventListener(\"click\",deleteLoyaltyReward),document.getElementById(\"loyaltyRewardImage\")?.addEventListener(\"input\",renderLoyaltyImagePreview),document.querySelectorAll(\"[data-reward-format]\").forEach(function(button2){button2.addEventListener(\"click\",function(){document.getElementById(\"loyaltyRewardDescriptionEditor\")?.focus(),document.execCommand(button2.dataset.rewardFormat,!1,null),syncLoyaltyDescriptionV206()})}),document.getElementById(\"loyaltyRewardDescriptionEditor\")?.addEventListener(\"input\",syncLoyaltyDescriptionV206),document.getElementById(\"loyaltyRewardHtmlToggleV207\")?.addEventListener(\"click\",toggleLoyaltyHtmlV207))}function toggleLoyaltyHtmlV207(){const editor=document.getElementById(\"loyaltyRewardDescriptionEditor\"),source=document.getElementById(\"loyaltyRewardDescription\"),button2=document.getElementById(\"loyaltyRewardHtmlToggleV207\");if(!editor||!source)return;!source.hidden?(editor.innerHTML=source.value,source.hidden=!0,editor.hidden=!1,button2&&(button2.textContent=\"HTML\")):(source.value=editor.innerHTML,editor.hidden=!0,source.hidden=!1,button2&&(button2.textContent=\"Visual\"))}function syncLoyaltyDescriptionV206(){const editor=document.getElementById(\"loyaltyRewardDescriptionEditor\"),field=document.getElementById(\"loyaltyRewardDescription\");editor&&field&&(field.value=editor.innerHTML)}async function deleteDraftRewardV211(id,button2){if(!id)throw new Error(\"Orbit could not identify this draft reward.\");const reward=loyaltyRewards.find(r=>String(r.id)===String(id));if(reward&&rewardState(reward)!==\"draft\")throw new Error(\"Only draft rewards can be permanently deleted from this button.\");if(confirm(\"Permanently delete this draft reward? This cannot be undone.\")){setLoading(button2,!0);try{const data=await api(\"/api/admin/loyalty-store/rewards/\"+encodeURIComponent(id)+\"/delete\",{method:\"POST\",body:JSON.stringify({confirmPermanentDelete:!0})});if(data?.deleted!==!0)throw new Error(data?.error||\"Orbit did not confirm that the draft was deleted.\");if(await loadLoyaltyOperationsV727(),loyaltyRewards.some(r=>String(r.id)===String(id)))throw new Error(\"The draft still exists after the server confirmed deletion.\");setNotice2(\"Draft reward permanently deleted.\")}finally{setLoading(button2,!1)}}}function renderLoyaltyImagePreview(){const wrap=document.getElementById(\"loyaltyRewardImagePreview\"),img=wrap?.querySelector(\"img\"),url=document.getElementById(\"loyaltyRewardImage\")?.value.trim();!wrap||!img||(wrap.hidden=!url,url&&(img.src=url))}function openLoyaltyRewardDialog(id){const r=loyaltyRewards.find(x=>x.id===id)||null,dialog=document.getElementById(\"loyaltyRewardDialog\");if(!dialog)return;text(\"loyaltyRewardDialogTitle\",r?\"View & Edit Reward\":\"Create Reward\"),document.getElementById(\"loyaltyRewardId\").value=r?.id||\"\",document.getElementById(\"loyaltyRewardName\").value=r?.name||\"\",document.getElementById(\"loyaltyRewardPoints\").value=r?.pointsPrice||\"\",document.getElementById(\"loyaltyRewardStock\").value=r?.stock??0,document.getElementById(\"loyaltyRewardImage\").value=r?.imageUrl||\"\",document.getElementById(\"loyaltyRewardDescription\").value=r?.description||\"\";const descriptionEditor=document.getElementById(\"loyaltyRewardDescriptionEditor\");descriptionEditor&&(descriptionEditor.innerHTML=r?.description||\"\"),document.getElementById(\"loyaltyRewardPhysical\").checked=r?.shippingRequired!==!1,populateLoyaltyCategorySelectV205(r?.categoryId||\"\"),document.getElementById(\"loyaltyRewardStatus\").value=r?rewardState(r):\"draft\",document.getElementById(\"deleteLoyaltyReward\").hidden=!r,document.getElementById(\"loyaltyRewardDialogResult\").hidden=!0,renderLoyaltyImagePreview(),dialog.showModal()}async function saveLoyaltyRewardV727(event){event.preventDefault(),syncLoyaltyDescriptionV206();const button2=document.getElementById(\"saveLoyaltyReward\"),result=document.getElementById(\"loyaltyRewardDialogResult\");setLoading(button2,!0);try{const status=document.getElementById(\"loyaltyRewardStatus\").value,body={id:document.getElementById(\"loyaltyRewardId\").value||void 0,name:document.getElementById(\"loyaltyRewardName\").value,pointsPrice:Number(document.getElementById(\"loyaltyRewardPoints\").value),stock:Number(document.getElementById(\"loyaltyRewardStock\").value),imageUrl:document.getElementById(\"loyaltyRewardImage\").value,description:document.getElementById(\"loyaltyRewardDescription\").value,categoryId:document.getElementById(\"loyaltyRewardCategory\").value,physical:document.getElementById(\"loyaltyRewardPhysical\").checked,shippingRequired:document.getElementById(\"loyaltyRewardPhysical\").checked,status,active:status===\"active\",retired:status===\"retired\"};await api(\"/api/admin/loyalty-store/rewards\",{method:\"POST\",body:JSON.stringify(body)}),await loadLoyaltyOperationsV727(),document.getElementById(\"loyaltyRewardDialog\").close(),setNotice2(\"Reward saved successfully.\")}catch(err){result.hidden=!1,result.textContent=err.message}finally{setLoading(button2,!1)}}async function updateLoyaltyRewardStatus(id,status,button2){setLoading(button2,!0);try{await api(\"/api/admin/loyalty-store/rewards/\"+encodeURIComponent(id)+\"/status\",{method:\"POST\",body:JSON.stringify({status,active:status===\"active\"})}),await loadLoyaltyOperationsV727()}finally{setLoading(button2,!1)}}async function deleteLoyaltyReward(){const id=document.getElementById(\"loyaltyRewardId\").value;if(!id||!confirm(\"Delete this reward? Rewards with redemption history will be retired instead to preserve records.\"))return;const button2=document.getElementById(\"deleteLoyaltyReward\");setLoading(button2,!0);try{const data=await api(\"/api/admin/loyalty-store/rewards/\"+encodeURIComponent(id),{method:\"DELETE\"});await loadLoyaltyOperationsV727(),document.getElementById(\"loyaltyRewardDialog\").close(),setNotice2(data.retired?\"Reward retired because it has order history.\":\"Reward deleted.\")}finally{setLoading(button2,!1)}}async function cancelLoyaltyOrderV727(button2){if(!confirm(\"Cancel this loyalty order, restore stock and refund its points?\"))return;const note=prompt(\"Optional internal cancellation note:\")||\"\";setLoading(button2,!0);try{await api(\"/api/admin/loyalty-store/orders/\"+encodeURIComponent(button2.dataset.loyaltyOrderCancelV727)+\"/cancel\",{method:\"POST\",body:JSON.stringify({note})}),await loadLoyaltyOperationsV727(),await reloadSpecialShipments(),setNotice2(\"Loyalty order cancelled and points refunded.\")}finally{setLoading(button2,!1)}}async function deleteCancelledLoyaltyOrderV350(button2){const id=button2.dataset.loyaltyOrderDeleteV350;if(!(!id||!confirm(\"Permanently delete this CANCELLED loyalty order? The refunded points ledger is retained for audit.\"))){setLoading(button2,!0);try{await api(\"/api/admin/loyalty-store/orders/\"+encodeURIComponent(id),{method:\"DELETE\"}),await loadLoyaltyOperationsV727(),await reloadSpecialShipments(),setNotice2(\"Cancelled loyalty order permanently deleted. Refund audit history was retained.\")}finally{setLoading(button2,!1)}}}const websiteImageDraftsV728=new Map;function websiteImageUrlV367(slot){const key=String(slot?.key||\"\"),revision=Number(slot?.revision||0);return slot?.hasManagedImage&&key&&revision>0?API_BASE+\"/api/public/website-images/\"+encodeURIComponent(key)+\"/revision/\"+encodeURIComponent(revision):\"\"}function formatBytesV728(bytes){const n=Number(bytes||0);return n?n<1024?n+\" B\":n<1024*1024?(n/1024).toFixed(1)+\" KB\":(n/(1024*1024)).toFixed(2)+\" MB\":\"\\u2014\"}function imageSlotCardV728(slot){const fallback=(window.ORBIT_WEBSITE_IMAGE_FALLBACKS||{})[slot.key]||\"\",src=slot.hasManagedImage&&websiteImageUrlV367(slot)||fallback,exactSize=esc(slot.recommendedWidth)+\" \\xD7 \"+esc(slot.recommendedHeight)+\" px\",stateLabel=slot.hasManagedImage?\"Live managed image\":fallback?\"Using theme fallback\":\"No image\",previewMedia=src?\"<img src='\"+esc(src)+\"' alt='\"+esc(slot.name)+\" preview' decoding='async' data-website-image-preview-img>\":\"<div class='orbit-website-image-empty' data-website-image-empty>No image will display until a replacement is published.</div>\";return\"<article class='orbit-website-image-card' data-image-slot='\"+esc(slot.key)+\"'><div class='orbit-website-image-heading'><div><span>\"+esc(slot.group)+\"</span><h3>\"+esc(slot.name)+\"</h3><p>\"+esc(slot.location)+\"</p></div><b class='orbit-pill \"+(slot.hasManagedImage?\"success\":\"warning\")+\"'>\"+stateLabel+\"</b></div><div class='orbit-website-image-preview \"+(src?\"is-loading\":\"is-empty\")+\"' style='--orbit-image-ratio:\"+esc(slot.recommendedWidth)+\" / \"+esc(slot.recommendedHeight)+\"'>\"+previewMedia+\"<div class='orbit-image-draft-badge' hidden>Unsaved replacement</div></div><div class='orbit-image-specs'><span><strong>Current live size</strong>\"+exactSize+\"</span><span><strong>Required ratio</strong>\"+esc(slot.aspectLabel)+\"</span><span><strong>Saved file</strong>\"+(slot.hasManagedImage?esc((slot.width||\"?\")+\" \\xD7 \"+(slot.height||\"?\")+\" \\xB7 \"+formatBytesV728(slot.sizeBytes)):\"None\")+\"</span></div><small class='orbit-image-ratio-guidance'>Use \"+exactSize+\" for an exact replacement. A larger image with the same aspect ratio is also suitable and will preserve the current layout.</small><label class='orbit-image-file-picker'>Choose replacement<input type='file' accept='image/jpeg,image/png,image/webp' data-website-image-file='\"+esc(slot.key)+\"'></label><div class='orbit-image-upload-message' data-image-message='\"+esc(slot.key)+\"'>JPG, PNG or WebP. Maximum 8 MB.</div><div class='orbit-action-row'><button type='button' data-save-website-image='\"+esc(slot.key)+\"' disabled>Publish to Live Site</button><button type='button' class='secondary' data-clear-website-image='\"+esc(slot.key)+\"' disabled>Clear Selection</button><button type='button' class='secondary' data-restore-website-image='\"+esc(slot.key)+\"' \"+(slot.hasPreviousImage?\"\":\"disabled\")+\">Restore Previous</button></div><small class='orbit-image-saved-at'>\"+(slot.savedAt?\"Saved \"+esc(prettyDate(slot.savedAt))+\" \\xB7 revision \"+esc(slot.revision):\"No managed replacement saved yet.\")+\"</small></article>\"}async function loadWebsiteImagesV728(button2,attempt=0){button2&&button2.id===\"refreshWebsiteImagesButton\"&&setLoading(button2,!0);try{const slots=(await api(\"/api/admin/website-images\",{timeoutMs:25e3,cacheMs:15e3})).slots||[];websiteImageDraftsV728.clear();const grid=document.getElementById(\"websiteImagesGrid\");grid&&(grid.innerHTML=slots.map(imageSlotCardV728).join(\"\"),grid.querySelectorAll(\"[data-website-image-preview-img]\").forEach(function(img){const frame=img.closest(\".orbit-website-image-preview\"),finish=function(){frame?.classList.remove(\"is-loading\"),frame?.classList.add(\"is-loaded\")};img.complete&&img.naturalWidth?finish():(img.addEventListener(\"load\",finish,{once:!0}),img.addEventListener(\"error\",function(){frame?.classList.remove(\"is-loading\"),frame?.classList.add(\"is-error\")},{once:!0}))}));const summary=document.getElementById(\"websiteImagesSummary\");if(summary){const saved=slots.filter(s=>s.hasManagedImage).length;summary.innerHTML=\"<strong>\"+saved+\" of \"+slots.length+\" slots have managed previews</strong><span>Hero, final join and membership product images are independent slots even where the live theme currently reuses one file.</span>\"}const result=document.getElementById(\"websiteImagesResult\");return result&&(result.hidden=!0,result.classList.remove(\"error\")),bindWebsiteImagesV728(),slots}catch(err){if(attempt<2)return await new Promise(resolve=>setTimeout(resolve,700*(attempt+1))),loadWebsiteImagesV728(button2,attempt+1);const result=document.getElementById(\"websiteImagesResult\");result&&(result.hidden=!1,result.classList.add(\"error\"),result.textContent=err.message||\"Could not load website images.\");const grid=document.getElementById(\"websiteImagesGrid\");throw grid&&(grid.innerHTML=\"<div class='orbit-empty-state orbit-error-state'><strong>Website Images could not load</strong><span>\"+esc(err.message||err)+\"</span><button type='button' class='secondary' id='retryWebsiteImagesButton'>Try again</button></div>\"),document.getElementById(\"retryWebsiteImagesButton\")?.addEventListener(\"click\",()=>loadWebsiteImagesV728().catch(()=>{})),err}finally{button2&&button2.id===\"refreshWebsiteImagesButton\"&&setLoading(button2,!1)}}function bindWebsiteImagesV728(){document.querySelectorAll(\"[data-website-image-file]\").forEach(input=>input.addEventListener(\"change\",event=>prepareWebsiteImageV728(event.currentTarget))),document.querySelectorAll(\"[data-save-website-image]\").forEach(btn=>btn.addEventListener(\"click\",()=>saveWebsiteImageV728(btn))),document.querySelectorAll(\"[data-clear-website-image]\").forEach(btn=>btn.addEventListener(\"click\",()=>clearWebsiteImageDraftV728(btn.dataset.clearWebsiteImage))),document.querySelectorAll(\"[data-restore-website-image]\").forEach(btn=>btn.addEventListener(\"click\",()=>restoreWebsiteImageV728(btn)))}function prepareWebsiteImageV728(input){const key=input.dataset.websiteImageFile,file=input.files&&input.files[0],card=input.closest(\"[data-image-slot]\"),message=card?.querySelector(\"[data-image-message]\");if(!file)return;if(!/^image\\/(jpeg|png|webp)$/.test(file.type)){input.value=\"\",message&&(message.textContent=\"Choose a JPG, PNG or WebP image.\");return}if(file.size>8*1024*1024){input.value=\"\",message&&(message.textContent=\"This image is larger than the 8 MB limit.\");return}const reader=new FileReader;reader.onload=()=>{const img=new Image;img.onload=()=>{if(img.width<300||img.height<300){message&&(message.textContent=\"Image is too small. Minimum 300 \\xD7 300 px.\");return}websiteImageDraftsV728.set(key,{dataUrl:reader.result,fileName:file.name,width:img.width,height:img.height,sizeBytes:file.size});const preview=card?.querySelector(\".orbit-website-image-preview img\");preview&&(preview.src=reader.result);const badge=card?.querySelector(\".orbit-image-draft-badge\");badge&&(badge.hidden=!1),card?.querySelector(\"[data-save-website-image]\")?.removeAttribute(\"disabled\"),card?.querySelector(\"[data-clear-website-image]\")?.removeAttribute(\"disabled\"),message&&(message.textContent=\"Ready to save: \"+img.width+\" \\xD7 \"+img.height+\" \\xB7 \"+formatBytesV728(file.size)+\". This will publish to the live site after saving.\")},img.onerror=()=>{message&&(message.textContent=\"The selected image could not be read.\")},img.src=reader.result},reader.readAsDataURL(file)}function clearWebsiteImageDraftV728(key){websiteImageDraftsV728.delete(key),loadWebsiteImagesV728().catch(err=>setNotice2(err.message,!0))}async function saveWebsiteImageV728(button2){const key=button2.dataset.saveWebsiteImage,draft=websiteImageDraftsV728.get(key),card=button2.closest(\"[data-image-slot]\"),message=card?.querySelector(\"[data-image-message]\");if(draft){setLoading(button2,!0),message&&(message.textContent=\"Saving image and verifying database persistence\\u2026\");try{const saved=await api(\"/api/admin/website-images/\"+encodeURIComponent(key),{method:\"PUT\",body:JSON.stringify(draft)});if(!saved?.slot?.hasManagedImage||Number(saved.slot.width)!==Number(draft.width)||Number(saved.slot.height)!==Number(draft.height))throw new Error(\"Orbit could not verify the saved image. Please try again.\");const revision=Number(saved.slot.revision||0);let publicResponse=null;for(let attempt=0;attempt<3&&(attempt&&await new Promise(resolve=>setTimeout(resolve,500*(attempt+1))),publicResponse=await fetch(API_BASE+\"/api/public/website-images/\"+encodeURIComponent(key)+\"/revision/\"+encodeURIComponent(revision)+\"?verify=\"+Date.now(),{method:\"HEAD\",cache:\"no-store\",credentials:\"omit\",mode:\"cors\"}),!(publicResponse.ok&&Number(publicResponse.headers.get(\"X-Orbit-Image-Revision\")||0)===revision&&Number(publicResponse.headers.get(\"Content-Length\")||1)>0));attempt++);if(!publicResponse?.ok)throw new Error(\"Image saved but anonymous public delivery returned HTTP \"+(publicResponse?.status||\"unknown\")+\".\");if(Number(publicResponse.headers.get(\"X-Orbit-Image-Revision\")||0)!==revision)throw new Error(\"Image saved but the public route returned the wrong revision.\");websiteImageDraftsV728.delete(key),await loadWebsiteImagesV728();const refreshed=document.querySelector('[data-image-slot=\"'+CSS.escape(key)+'\"]'),refreshedMessage=refreshed?.querySelector(\"[data-image-message]\");if(refreshed){const preview=refreshed.querySelector(\".orbit-website-image-preview img\");if(preview){const refreshedSlot=Object.assign({},saved.slot,{key});preview.src=websiteImageUrlV367(refreshedSlot)||preview.src}}refreshedMessage&&(refreshedMessage.textContent=\"\\u2713 Saved successfully. Published and verified. Revision \"+revision+\" is now cached until this image changes again.\",refreshedMessage.classList.add(\"success\"));const result=document.getElementById(\"websiteImagesResult\");result&&(result.hidden=!1,result.classList.remove(\"error\"),result.classList.add(\"success\"),result.textContent=(saved.slot.name||\"Website image\")+\" saved and verified successfully.\"),setNotice2((saved.slot.name||\"Website image\")+\" saved and verified.\")}catch(err){message&&(message.textContent=err.message||\"The image could not be saved.\",message.classList.add(\"error\")),setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}}async function restoreWebsiteImageV728(button2){const key=button2.dataset.restoreWebsiteImage;if(confirm(\"Restore the previous managed image for this slot? The live website will use the restored image.\")){setLoading(button2,!0);try{await api(\"/api/admin/website-images/\"+encodeURIComponent(key)+\"/restore\",{method:\"POST\",body:\"{}\"}),setNotice2(\"Previous managed image restored.\"),await loadWebsiteImagesV728()}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}}document.getElementById(\"refreshWebsiteImagesButton\")?.addEventListener(\"click\",function(){loadWebsiteImagesV728(this).catch(function(err){setNotice2(err.message,!0)})});let currentBroadcastIdV73=\"\",currentNewsletterIdV73=\"\",engagementBroadcastsV731=[],engagementNewslettersV731=[];function engagementDateV73(value){return value?prettyDate(value):\"\\u2014\"}function setEngagementPaneV73(name){state.currentEngagementPane=name;const newsletterMode=name===\"newsletters\"||name===\"subscribers\";if(state.currentModule===\"engagement\"){const route=newsletterMode?\"member-newsletters\":\"member-broadcasts\";syncWorkspaceNavigation(\"engagement\",name,route),updateAdminRouteLocationV5991(route,\"engagement\",name,\"replace\")}document.querySelectorAll(\"[data-engagement-pane]\").forEach(function(p){p.hidden=p.dataset.engagementPane!==name}),document.querySelectorAll(\"[data-engagement-tab]\").forEach(function(b){const active=b.dataset.engagementTab===name;b.classList.toggle(\"active\",active),b.setAttribute(\"aria-selected\",active?\"true\":\"false\")}),document.querySelectorAll(\"[data-newsletter-tabs]\").forEach(function(t){t.hidden=!newsletterMode});const topPane=newsletterMode?\"newsletters\":\"broadcasts\";document.querySelectorAll('[data-workspace-group=\"marketing\"] [data-engagement-open]').forEach(function(b){b.classList.toggle(\"active\",b.dataset.engagementOpen===topPane)});const heading=document.getElementById(\"engagementHeading\"),description=document.getElementById(\"engagementDescription\");heading&&(heading.textContent=newsletterMode?\"Newsletters\":\"Broadcasts\"),description&&(description.textContent=newsletterMode?\"Create, send and manage Orbit newsletters and subscriber preferences.\":\"Send a clear announcement to members in their Orbit inbox, with optional email delivery.\");const sectionLabel=document.getElementById(\"orbitAdminSectionLabel\");sectionLabel&&(sectionLabel.textContent=newsletterMode?\"Newsletters\":\"Broadcasts\"),name===\"subscribers\"&&loadSubscribersV731().catch(function(err){setNotice2(err.message,!0)})}function valV731(id){return document.getElementById(id)?.value||\"\"}function setValV731(id,value){const el=document.getElementById(id);el&&(el.value=value||\"\")}function syncBroadcastAudienceV350(){const specific=valV731(\"broadcastAudience\")===\"specific\",field=document.getElementById(\"broadcastSpecificMemberFieldV350\");field&&(field.hidden=!specific);const input=document.getElementById(\"broadcastMemberLookupV350\");input&&(input.required=specific)}function broadcastPayloadV731(){return{id:currentBroadcastIdV73,title:valV731(\"broadcastTitle\"),message:valV731(\"broadcastMessage\"),audience:valV731(\"broadcastAudience\"),memberLookup:valV731(\"broadcastMemberLookupV350\"),priority:valV731(\"broadcastPriority\"),expiresAt:valV731(\"broadcastExpiresAt\"),linkLabel:valV731(\"broadcastLinkLabel\"),linkUrl:valV731(\"broadcastLinkUrl\"),emailEnabled:document.getElementById(\"broadcastEmailEnabled\")?.checked===!0,status:\"draft\"}}function newsletterPayloadV731(){return{id:currentNewsletterIdV73,campaignName:valV731(\"newsletterCampaignName\")||\"New newsletter\",title:valV731(\"newsletterTitle\"),subtitle:valV731(\"newsletterSubtitle\"),heroImageUrl:valV731(\"newsletterHeroImageUrl\"),bodyHtml:valV731(\"newsletterBodyHtml\"),bodyText:valV731(\"newsletterBodyText\"),audience:valV731(\"newsletterAudience\"),scheduleAt:valV731(\"newsletterScheduleAt\"),status:\"draft\"}}function resetBroadcastV731(){currentBroadcastIdV73=\"\",[\"broadcastTitle\",\"broadcastMessage\",\"broadcastExpiresAt\",\"broadcastLinkLabel\",\"broadcastLinkUrl\",\"broadcastMemberLookupV350\"].forEach(function(id){setValV731(id,\"\")}),setValV731(\"broadcastAudience\",\"active\"),syncBroadcastAudienceV350(),setValV731(\"broadcastPriority\",\"normal\");const email=document.getElementById(\"broadcastEmailEnabled\");email&&(email.checked=!1),document.getElementById(\"broadcastEditorMode\").textContent=\"New broadcast\",document.getElementById(\"broadcastEditorId\").textContent=\"Not saved\",document.getElementById(\"deleteBroadcastButton\").disabled=!0,document.getElementById(\"broadcastResult\").textContent=\"New broadcast ready.\"}function openBroadcastV731(id){const x=engagementBroadcastsV731.find(function(row){return row.id===id});if(!x)return;currentBroadcastIdV73=x.id,setValV731(\"broadcastTitle\",x.title),setValV731(\"broadcastMessage\",x.message),setValV731(\"broadcastAudience\",x.audience||\"active\"),setValV731(\"broadcastMemberLookupV350\",x.member_lookup||\"\"),syncBroadcastAudienceV350(),setValV731(\"broadcastPriority\",x.priority||\"normal\"),setValV731(\"broadcastExpiresAt\",x.expires_at?String(x.expires_at).slice(0,10):\"\"),setValV731(\"broadcastLinkLabel\",x.link_label),setValV731(\"broadcastLinkUrl\",x.link_url);const email=document.getElementById(\"broadcastEmailEnabled\");email&&(email.checked=x.email_enabled===!0),document.getElementById(\"broadcastEditorMode\").textContent=x.status===\"published\"?\"Published broadcast\":\"Editing draft\",document.getElementById(\"broadcastEditorId\").textContent=x.id,document.getElementById(\"deleteBroadcastButton\").disabled=x.status===\"published\",document.getElementById(\"broadcastResult\").textContent=x.status===\"published\"?\"Published broadcasts are viewable for audit. Saving creates no duplicate notification until you explicitly publish a new draft.\":\"Draft opened. Edit any field, then save or publish.\",window.scrollTo({top:document.querySelector('[data-engagement-pane=\"broadcasts\"]')?.offsetTop||0,behavior:\"smooth\"})}const orbitNewsletterTemplatesV317={\"new-show\":{label:\"New Show Announcement\",title:\"A new Orbit Card Show is coming\",subtitle:\"Save the date. Tickets are now live.\",html:\"<div style='text-align:center;padding:8px 0 18px'><p style='margin:0 0 8px;color:#1487b8;font-weight:800;letter-spacing:.12em;font-size:12px'>NEW SHOW ANNOUNCEMENT</p><h2 style='margin:0;font-size:28px;line-height:1.15;color:#13243d'>[VENUE] \\xB7 [DATE]</h2></div><p>We are excited to confirm the next <strong>Orbit Card Show</strong>.</p><div style='background:#f2f8fc;border-radius:14px;padding:18px 20px;margin:20px 0'><p style='margin:0 0 7px'><strong>\\u{1F4CD} Where:</strong> [Venue]</p><p style='margin:0 0 7px'><strong>\\u{1F4C5} When:</strong> [Date]</p><p style='margin:0'><strong>\\u2B50 What to expect:</strong> [Tables / headline features]</p></div><p>[One short, high-energy reason people should come.]</p><p style='text-align:center;margin:28px 0'><a href='[TICKET LINK]' style='display:inline-block;background:#087aa8;color:#fff;text-decoration:none;padding:14px 24px;border-radius:8px;font-weight:800'>VIEW TICKETS &amp; EVENT DETAILS</a></p><p style='color:#687385;font-size:13px'>We will share more vendors, prizes and show-day details as the event gets closer.</p>\",text:`A new Orbit Card Show is coming\n\n[VENUE] \\xB7 [DATE]\n\nWhere: [Venue]\nWhen: [Date]\nWhat to expect: [Tables / headline features]\n\n[One short, high-energy reason people should come.]\n\nTickets: [TICKET LINK]`},\"event-reminder\":{label:\"Show Reminder\",title:\"Orbit Card Show is almost here\",subtitle:\"Everything you need before show day.\",html:\"<div style='text-align:center;padding:8px 0 18px'><p style='margin:0 0 8px;color:#b54708;font-weight:800;letter-spacing:.12em;font-size:12px'>THIS WEEKEND</p><h2 style='margin:0;font-size:28px;color:#13243d'>[VENUE] \\xB7 [DATE]</h2></div><p>Show day is nearly here. <strong>[Short FOMO / vendor / feature message]</strong></p><p style='text-align:center;margin:26px 0'><a href='[TICKET LINK]' style='display:inline-block;background:#087aa8;color:white;text-decoration:none;padding:14px 26px;border-radius:8px;font-weight:800'>GET YOUR TICKETS</a></p><div style='border-top:1px solid #dce5ed;border-bottom:1px solid #dce5ed;padding:18px 0;margin:22px 0'><p><strong>Doors:</strong> [Times]</p><p><strong>Travel / parking:</strong> [Useful information]</p></div><p>See you there.</p>\",text:`Orbit Card Show is almost here\n\nVenue: [Venue]\nDate: [Date]\nDoors: [Times]\n\n[Short FOMO / vendor / feature message]\n\nTickets: [TICKET LINK]\nTravel / parking: [Useful information]`},\"new-feature\":{label:\"New Feature\",title:\"Something new has landed at Orbit\",subtitle:\"A new Collectors Club benefit is ready to use.\",html:\"<p style='color:#087aa8;font-weight:800;letter-spacing:.12em;font-size:12px'>NEW MEMBER FEATURE</p><h2 style='font-size:28px;color:#13243d;margin-top:6px'>Meet [FEATURE NAME]</h2><p>We have added <strong>[FEATURE NAME]</strong> to Orbit Collectors Club.</p><p>[Explain the benefit in one clear paragraph focused on what the member gains.]</p><div style='background:#f2f8fc;border-radius:14px;padding:20px;margin:22px 0'><h3 style='margin-top:0;color:#13243d'>Why you\\u2019ll use it</h3><ul><li>[Benefit 1]</li><li>[Benefit 2]</li><li>[Benefit 3]</li></ul></div><p style='text-align:center'><a href='[MEMBERS AREA LINK]' style='display:inline-block;background:#087aa8;color:#fff;text-decoration:none;padding:14px 24px;border-radius:8px;font-weight:800'>OPEN THE MEMBERS AREA</a></p>\",text:`Something new has landed at Orbit\n\nMeet [FEATURE NAME]\n\n[Explain the benefit.]\n\nWhy you'll use it:\n\\u2022 [Benefit 1]\n\\u2022 [Benefit 2]\n\\u2022 [Benefit 3]\n\n[MEMBERS AREA LINK]`},prize:{label:\"Prize Announcement\",title:\"A new Orbit prize has landed\",subtitle:\"Here is what members can win next.\",html:\"<div style='text-align:center'><p style='color:#9a6700;font-weight:900;letter-spacing:.12em;font-size:12px'>PRIZE REVEAL</p><h2 style='font-size:30px;color:#13243d;margin:6px 0 12px'>[PRIZE]</h2><p>[One exciting line explaining why this is a great chase.]</p></div><div style='background:#fff8df;border:1px solid #f1d98a;border-radius:14px;padding:20px;margin:24px 0'><p><strong>Eligibility:</strong> [Who is included and when]</p><p style='margin-bottom:0'><strong>Draw date:</strong> [Date]</p></div><p>[Value / rarity / prize detail]</p><p style='text-align:center'><a href='[PRIZE LINK]' style='display:inline-block;background:#13243d;color:#fff;text-decoration:none;padding:14px 24px;border-radius:8px;font-weight:800'>SEE THE PRIZE</a></p>\",text:`A new Orbit prize has landed\n\nPrize: [PRIZE]\n[Why this prize is exciting]\n\nEligibility: [Who is included and when]\nDraw date: [Date]\n\n[PRIZE LINK]`},winner:{label:\"Winner News\",title:\"We have an Orbit winner\",subtitle:\"Congratulations to this month\\u2019s winner.\",html:\"<div style='text-align:center;padding:6px 0 18px'><p style='color:#087aa8;font-weight:900;letter-spacing:.12em;font-size:12px'>WINNER ANNOUNCEMENT</p><h2 style='font-size:30px;color:#13243d;margin:6px 0'>Congratulations!</h2><p><strong>[WINNER NAME / MEMBER NUMBER]</strong> has won <strong>[PRIZE]</strong>.</p></div><p>[Short winner / draw detail]</p><div style='background:#f2f8fc;border-radius:14px;padding:18px 20px;margin:22px 0;text-align:center'><strong>The next member prize is already on the way.</strong></div><p style='text-align:center'><a href='[PRIZES LINK]' style='display:inline-block;background:#087aa8;color:#fff;text-decoration:none;padding:14px 24px;border-radius:8px;font-weight:800'>SEE CURRENT PRIZES</a></p>\",text:`We have an Orbit winner\n\nCongratulations to [WINNER NAME / MEMBER NUMBER], winner of [PRIZE].\n\n[Short winner / draw detail]\n\nThe next member prize is already on the way.\n\n[PRIZES LINK]`},\"club-update\":{label:\"Collectors Club Update\",title:\"Your Orbit Collectors Club update\",subtitle:\"What is new, what is coming and what members should know.\",html:\"<p style='color:#087aa8;font-weight:900;letter-spacing:.12em;font-size:12px'>MEMBER UPDATE</p><h2 style='font-size:28px;color:#13243d;margin-top:6px'>Here\\u2019s what\\u2019s happening at Orbit</h2><div style='border-left:4px solid #20b8e6;padding:2px 0 2px 18px;margin:24px 0'><h3 style='margin:0 0 6px;color:#13243d'>What\\u2019s new</h3><p style='margin:0'>[Update 1]</p></div><div style='border-left:4px solid #d4a72c;padding:2px 0 2px 18px;margin:24px 0'><h3 style='margin:0 0 6px;color:#13243d'>Coming next</h3><p style='margin:0'>[Update 2]</p></div><div style='background:#f4f6f8;border-radius:14px;padding:18px 20px;margin:24px 0'><strong>Member reminder</strong><p style='margin-bottom:0'>[Useful reminder / event / prize / fulfilment note]</p></div><p style='text-align:center'><a href='[MEMBERS AREA LINK]' style='display:inline-block;background:#087aa8;color:#fff;text-decoration:none;padding:14px 24px;border-radius:8px;font-weight:800'>OPEN MEMBERS AREA</a></p>\",text:`Your Orbit Collectors Club update\n\nWHAT'S NEW\n[Update 1]\n\nCOMING NEXT\n[Update 2]\n\nMEMBER REMINDER\n[Useful reminder]\n\n[MEMBERS AREA LINK]`}},orbitNewsletterTemplateDefaultsV375=JSON.parse(JSON.stringify(orbitNewsletterTemplatesV317));let orbitSelectedNewsletterTemplateV375=\"\",newsletterMasterEditingV542=!1;function applyNewsletterTemplateOverridesV375(rows){Object.keys(orbitNewsletterTemplateDefaultsV375).forEach(function(key){orbitNewsletterTemplatesV317[key]=JSON.parse(JSON.stringify(orbitNewsletterTemplateDefaultsV375[key]))}),(rows||[]).forEach(function(row){const template=orbitNewsletterTemplatesV317[row.key];template&&(row.title&&(template.title=row.title),row.subtitle!==void 0&&(template.subtitle=row.subtitle||\"\"),row.html&&(template.html=row.html),row.text!==void 0&&(template.text=row.text||\"\"))})}function syncNewsletterMasterControlsV375(){const selected=!!orbitSelectedNewsletterTemplateV375&&newsletterMasterEditingV542,save=document.getElementById(\"saveNewsletterMasterTemplateV375\"),reset=document.getElementById(\"resetNewsletterMasterTemplateV375\");save&&(save.disabled=!selected),reset&&(reset.disabled=!selected)}function newsletterPreviewEscapeV323(value){return String(value??\"\").replace(/[&<>\"']/g,function(ch){return{\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"}[ch]})}function newsletterPreviewBodyV323(value){return String(value||\"\").replace(/<script[\\s\\S]*?<\\/script>/gi,\"\")}function syncNewsletterReceivedCanvasV327(){const editor=document.getElementById(\"newsletterWysiwyg\"),source=document.getElementById(\"newsletterBodyHtml\");editor&&source&&!editor.matches(\":focus\")&&(editor.innerHTML=source.value||\"\");const title=document.getElementById(\"newsletterCanvasTitle\"),subtitle=document.getElementById(\"newsletterCanvasSubtitle\"),hero=document.getElementById(\"newsletterCanvasHero\");title&&(title.textContent=String(valV731(\"newsletterTitle\")||\"\").trim()||\"Your newsletter subject\"),subtitle&&(subtitle.textContent=String(valV731(\"newsletterSubtitle\")||\"\").trim()||\"Preview text will appear here.\");const heroUrl=String(valV731(\"newsletterHeroImageUrl\")||\"\").trim();hero&&(hero.hidden=!heroUrl,heroUrl&&(hero.src=heroUrl))}function persistNewsletterCanvasV327(){const editor=document.getElementById(\"newsletterWysiwyg\"),source=document.getElementById(\"newsletterBodyHtml\");editor&&source&&!editor.hidden&&(source.value=editor.innerHTML),updateNewsletterStudioV323()}window.orbitV75SyncNewsletterEditor=syncNewsletterReceivedCanvasV327;function newsletterInsertHtmlV327(html){const editor=document.getElementById(\"newsletterWysiwyg\");editor&&(editor.focus(),document.execCommand(\"insertHTML\",!1,html),persistNewsletterCanvasV327())}function insertNewsletterBlockV327(type){if(type===\"text\")return newsletterInsertHtmlV327(\"<p>Write your message here.</p>\");if(type===\"heading\")return newsletterInsertHtmlV327(\"<h2 style='color:#13243d;font-size:26px;line-height:1.2'>Your heading</h2>\");if(type===\"button\")return newsletterInsertHtmlV327(\"<p style='text-align:center;margin:26px 0'><a href='https://' style='display:inline-block;background:#087aa8;color:#fff;text-decoration:none;padding:14px 24px;border-radius:8px;font-weight:800'>BUTTON TEXT</a></p>\");if(type===\"divider\")return newsletterInsertHtmlV327(\"<hr style='border:0;border-top:1px solid #dce5ed;margin:26px 0'>\");if(type===\"spacer\")return newsletterInsertHtmlV327(\"<div style='height:28px;line-height:28px'>&nbsp;</div>\");if(type===\"columns\")return newsletterInsertHtmlV327(\"<table role='presentation' width='100%' cellspacing='0' cellpadding='0' style='border-collapse:collapse;margin:20px 0'><tr><td width='50%' valign='top' style='padding:14px;background:#f2f8fc'><strong>Column one</strong><p>Add content here.</p></td><td width='4%'></td><td width='46%' valign='top' style='padding:14px;background:#f7f7f7'><strong>Column two</strong><p>Add content here.</p></td></tr></table>\");if(type===\"image\"){const url=prompt(\"Paste the public image URL to insert:\");if(url&&/^https?:\\/\\//i.test(url.trim()))return newsletterInsertHtmlV327(\"<p style='text-align:center;margin:22px 0'><img src='\"+newsletterPreviewEscapeV323(url.trim())+\"' alt='' style='max-width:100%;height:auto;border-radius:12px'></p>\")}}function setNewsletterEditorModeV327(mode){const shell=document.querySelector(\"[data-newsletter-editor-shell]\");shell&&shell.classList.toggle(\"is-mobile\",mode===\"mobile\"),document.querySelectorAll(\"[data-newsletter-editor-mode]\").forEach(function(button2){button2.classList.toggle(\"active\",button2.dataset.newsletterEditorMode===mode)})}function bindNewsletterDesignerV327(){const editor=document.getElementById(\"newsletterWysiwyg\");editor&&!editor.dataset.v327Bound&&(editor.dataset.v327Bound=\"true\",editor.addEventListener(\"input\",persistNewsletterCanvasV327),editor.addEventListener(\"blur\",persistNewsletterCanvasV327)),document.querySelectorAll(\"[data-newsletter-insert]\").forEach(function(button2){button2.dataset.v327Bound||(button2.dataset.v327Bound=\"true\",button2.addEventListener(\"click\",function(){insertNewsletterBlockV327(button2.dataset.newsletterInsert)}))}),document.querySelectorAll(\"[data-newsletter-editor-mode]\").forEach(function(button2){button2.dataset.v327Bound||(button2.dataset.v327Bound=\"true\",button2.addEventListener(\"click\",function(){setNewsletterEditorModeV327(button2.dataset.newsletterEditorMode||\"desktop\")}))}),document.querySelectorAll(\"[data-wysiwyg-command]\").forEach(function(button2){button2.dataset.v327Bound||(button2.dataset.v327Bound=\"true\",button2.addEventListener(\"click\",function(){editor?.focus(),document.execCommand(button2.dataset.wysiwygCommand,!1,null),persistNewsletterCanvasV327()}))}),document.querySelectorAll(\"[data-wysiwyg-block]\").forEach(function(button2){button2.dataset.v327Bound||(button2.dataset.v327Bound=\"true\",button2.addEventListener(\"click\",function(){editor?.focus(),document.execCommand(\"formatBlock\",!1,button2.dataset.wysiwygBlock),persistNewsletterCanvasV327()}))}),document.querySelectorAll(\"[data-wysiwyg-link]\").forEach(function(button2){button2.dataset.v327Bound||(button2.dataset.v327Bound=\"true\",button2.addEventListener(\"click\",function(){const url=prompt(\"Paste the link URL:\",\"https://\");url&&(editor?.focus(),document.execCommand(\"createLink\",!1,url),persistNewsletterCanvasV327())}))});const toggle=document.getElementById(\"toggleNewsletterHtml\");toggle&&!toggle.dataset.v327Bound&&(toggle.dataset.v327Bound=\"true\",toggle.addEventListener(\"click\",function(){const source=document.getElementById(\"newsletterBodyHtml\");if(!editor||!source)return;source.hidden?(source.value=editor.innerHTML,editor.hidden=!0,source.hidden=!1,toggle.textContent=\"Visual\"):(editor.innerHTML=source.value,source.hidden=!0,editor.hidden=!1,toggle.textContent=\"HTML\",persistNewsletterCanvasV327())})),syncNewsletterReceivedCanvasV327()}function updateNewsletterStudioV323(){const title=String(valV731(\"newsletterTitle\")||\"\").trim(),subtitle=String(valV731(\"newsletterSubtitle\")||\"\").trim(),hero=String(valV731(\"newsletterHeroImageUrl\")||\"\").trim(),body=String(valV731(\"newsletterBodyHtml\")||\"\").trim(),audience=String(valV731(\"newsletterAudience\")||\"active\"),schedule=String(valV731(\"newsletterScheduleAt\")||\"\").trim(),canvasTitle=document.getElementById(\"newsletterCanvasTitle\"),canvasSubtitle=document.getElementById(\"newsletterCanvasSubtitle\"),canvasHero=document.getElementById(\"newsletterCanvasHero\");canvasTitle&&(canvasTitle.textContent=title||\"Your newsletter subject\"),canvasSubtitle&&(canvasSubtitle.textContent=subtitle||\"Preview text will appear here.\"),canvasHero&&(canvasHero.hidden=!hero,hero&&(canvasHero.src=hero));const statusMap={audience:audience===\"all\"?\"All subscribed members\":\"Active subscribed members\",from:\"Orbit\",subject:title||\"Needs a subject\",content:body?\"Content ready\":\"Needs content\",send:schedule?\"Scheduled \"+schedule.replace(\"T\",\" \"):\"Send manually\"};Object.keys(statusMap).forEach(function(key){const status=document.querySelector('[data-newsletter-step-status=\"'+key+'\"]');status&&(status.textContent=statusMap[key])});const readiness={audience:!!audience,from:!0,subject:!!title,content:!!body,send:!!schedule};Object.keys(readiness).forEach(function(key){const step=document.querySelector('[data-newsletter-step=\"'+key+'\"]');step&&step.classList.toggle(\"is-ready\",readiness[key])});const ready=Object.values(readiness).filter(Boolean).length,progress=document.getElementById(\"newsletterSetupProgress\");progress&&(progress.textContent=ready+\"/5 ready\");const bar=document.getElementById(\"newsletterSetupProgressBar\");bar&&(bar.style.width=ready/5*100+\"%\");const iframe=document.getElementById(\"newsletterLivePreview\");if(iframe){const safeTitle=newsletterPreviewEscapeV323(title||\"Your newsletter subject\"),safeSubtitle=newsletterPreviewEscapeV323(subtitle||\"Preview text will appear here.\"),safeHero=hero?newsletterPreviewEscapeV323(hero):\"\",content=newsletterPreviewBodyV323(body||\"<p>Choose a template or start writing to see the campaign appear here.</p>\"),logoUrl=newsletterPreviewEscapeV323(document.querySelector(\".orbit-newsletter-v327-logo\")?.src||\"\");iframe.srcdoc='<!doctype html><html><head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width,initial-scale=1\"><style>html,body{margin:0;background:#eef2f6;font-family:Arial,sans-serif;color:#142033}body{padding:18px}.email{max-width:700px;margin:0 auto;background:#fff;border:1px solid #dce2ea;border-radius:20px;overflow:hidden}.header{padding:28px 32px;background:#07172d;color:#fff}.logo{display:block;max-width:210px;max-height:76px;object-fit:contain;margin-bottom:18px}.eyebrow{font-size:11px;letter-spacing:.18em;color:#74e6ff;font-weight:800}.header h1{font-size:34px;line-height:1.1;margin:9px 0 0}.subtitle{font-size:17px;color:#d7e7f5;margin:10px 0 0}.hero{display:block;width:100%;height:auto}.content{padding:34px;font-size:16px;line-height:1.7}.content h1,.content h2,.content h3{color:#13243d}.content a{color:#087aa8}.footer{padding:20px 34px;border-top:1px solid #e8ebef;color:#687385;font-size:12px}</style></head><body><div class=\"email\"><div class=\"header\">'+(logoUrl?'<img class=\"logo\" src=\"'+logoUrl+'\" alt=\"Orbit Card Show\">':\"\")+'<div class=\"eyebrow\">ORBIT COLLECTORS CLUB</div><h1>'+safeTitle+'</h1><p class=\"subtitle\">'+safeSubtitle+\"</p></div>\"+(safeHero?'<img class=\"hero\" src=\"'+safeHero+'\" alt=\"\">':\"\")+'<div class=\"content\">'+content+'</div><div class=\"footer\">Orbit Collectors Club \\xB7 Subscriber footer and unsubscribe link are added automatically.</div></div></body></html>'}}function setNewsletterTemplateActiveV323(key){orbitSelectedNewsletterTemplateV375=key||\"\",key||(newsletterMasterEditingV542=!1),document.querySelectorAll(\"[data-newsletter-master-card]\").forEach(card=>card.classList.toggle(\"is-selected\",card.dataset.newsletterMasterCard===key)),document.querySelectorAll(\"[data-newsletter-template]\").forEach(function(button2){button2.classList.toggle(\"is-selected\",!!key&&button2.dataset.newsletterTemplate===key)}),syncNewsletterMasterControlsV375()}function setNewsletterPreviewModeV323(mode){const wrap=document.querySelector(\"[data-newsletter-preview-wrap]\");wrap&&wrap.classList.toggle(\"is-mobile\",mode===\"mobile\"),document.querySelectorAll(\"[data-newsletter-preview-mode]\").forEach(function(button2){button2.classList.toggle(\"active\",button2.dataset.newsletterPreviewMode===mode)})}window.orbitV323UpdateNewsletterStudio=updateNewsletterStudioV323,document.addEventListener(\"input\",function(event){event.target?.closest('[data-engagement-pane=\"newsletters\"]')&&setTimeout(updateNewsletterStudioV323,0)}),document.addEventListener(\"change\",function(event){event.target?.closest('[data-engagement-pane=\"newsletters\"]')&&setTimeout(updateNewsletterStudioV323,0)}),document.querySelectorAll(\"[data-newsletter-preview-mode]\").forEach(function(button2){button2.addEventListener(\"click\",function(){setNewsletterPreviewModeV323(button2.dataset.newsletterPreviewMode||\"desktop\")})}),setTimeout(function(){bindNewsletterDesignerV327(),updateNewsletterStudioV323()},0);function newsletterDraftHasContentV317(){return[\"newsletterTitle\",\"newsletterSubtitle\",\"newsletterBodyHtml\",\"newsletterBodyText\"].some(function(id){return String(valV731(id)||\"\").trim().length>0})}function applyNewsletterTemplateV317(key,editMaster=!1){const template=orbitNewsletterTemplatesV317[key];if(!template||(currentNewsletterIdV73||newsletterDraftHasContentV317())&&!confirm(\"Replace the current editor contents with the \\u201C\"+template.label+\"\\u201D template? A saved newsletter is never deleted, but unsaved edits in the editor will be replaced.\"))return;currentNewsletterIdV73=\"\",setNewsletterHeroV74(\"\"),setValV731(\"newsletterTitle\",template.title),setValV731(\"newsletterSubtitle\",template.subtitle),setValV731(\"newsletterBodyHtml\",template.html),setValV731(\"newsletterBodyText\",template.text),setValV731(\"newsletterAudience\",\"active\"),setValV731(\"newsletterScheduleAt\",\"\");const editorId=document.getElementById(\"newsletterEditorId\"),result=document.getElementById(\"newsletterResult\"),status=document.getElementById(\"newsletterTemplateStatus\");editorId&&(editorId.textContent=\"Not saved\"),[\"previewNewsletterButton\",\"downloadNewsletterPdfButton\",\"testNewsletterButton\",\"sendNewsletterButton\",\"scheduleNewsletterButton\",\"deleteNewsletterButton\"].forEach(function(id){const el=document.getElementById(id);el&&(el.disabled=!0)});const deleteButton=document.getElementById(\"deleteNewsletterButton\");deleteButton&&(deleteButton.textContent=\"Delete Draft\",deleteButton.dataset.newsletterStatus=\"draft\"),result&&(result.textContent=\"Template loaded. Edit it, save the draft, then use Preview or Send Test before scheduling/sending.\"),status&&(status.textContent=template.label+\" loaded into a new unsaved draft. The live preview is ready beside the editor.\"),newsletterMasterEditingV542=editMaster,setNewsletterTemplateActiveV323(key),editMaster&&(status&&(status.textContent=\"Editing the \\u201C\"+template.label+\"\\u201D master. Use Save editor as selected master when ready. No campaign has been saved or sent.\"),editorId&&(editorId.textContent=\"Master template editing\")),window.orbitV75SyncNewsletterEditor&&setTimeout(window.orbitV75SyncNewsletterEditor,0),setTimeout(updateNewsletterStudioV323,0),document.getElementById(\"newsletterTitle\")?.focus()}function startNewNewsletterV382(){const desiredName=valV731(\"newsletterCampaignName\")||\"New newsletter\";resetNewsletterV731(desiredName);const pane=document.querySelector('[data-engagement-pane=\"newsletters\"]');pane&&(pane.hidden=!1);const result=document.getElementById(\"newsletterResult\");result&&(result.textContent=\"New campaign ready. Choose a template or start writing below.\"),setNotice2(\"New newsletter campaign ready.\");const target=document.getElementById(\"newsletterTitle\")||document.querySelector(\".orbit-newsletter-v323-builder\");target&&setTimeout(function(){target.scrollIntoView({behavior:\"smooth\",block:\"center\"}),target.focus?.()},0)}function resetNewsletterV731(campaignName=\"New newsletter\"){currentNewsletterIdV73=\"\",setNewsletterHeroV74(\"\"),[\"newsletterTitle\",\"newsletterSubtitle\",\"newsletterBodyHtml\",\"newsletterBodyText\",\"newsletterScheduleAt\"].forEach(function(id){setValV731(id,\"\")}),setValV731(\"newsletterAudience\",\"active\"),setValV731(\"newsletterCampaignName\",campaignName||\"New newsletter\"),document.getElementById(\"newsletterEditorId\").textContent=\"Not saved\",[\"previewNewsletterButton\",\"downloadNewsletterPdfButton\",\"testNewsletterButton\",\"sendNewsletterButton\",\"scheduleNewsletterButton\",\"deleteNewsletterButton\"].forEach(function(id){const el=document.getElementById(id);el&&(el.disabled=!0)});const deleteButton=document.getElementById(\"deleteNewsletterButton\");deleteButton&&(deleteButton.textContent=\"Delete Draft\",deleteButton.dataset.newsletterStatus=\"draft\"),document.getElementById(\"newsletterResult\").textContent=\"Choose a template or start a new campaign.\";const templateStatus=document.getElementById(\"newsletterTemplateStatus\");templateStatus&&(templateStatus.textContent=\"Preview and send-test remain separate safety steps. Choose a template to load a new unsaved campaign.\"),setNewsletterTemplateActiveV323(\"\"),window.orbitV75SyncNewsletterEditor&&setTimeout(window.orbitV75SyncNewsletterEditor,0),setTimeout(updateNewsletterStudioV323,0)}function openNewsletterV731(id){const x=engagementNewslettersV731.find(function(row){return row.id===id});if(!x)return;currentNewsletterIdV73=x.id,setValV731(\"newsletterCampaignName\",x.campaign_name||x.campaignName||x.title||\"Newsletter campaign\"),setValV731(\"newsletterTitle\",x.title),setValV731(\"newsletterSubtitle\",x.subtitle),setNewsletterHeroV74(x.hero_image_url||\"\"),setValV731(\"newsletterBodyHtml\",x.body_html),setValV731(\"newsletterBodyText\",x.body_text),setValV731(\"newsletterAudience\",x.audience||\"active\"),setValV731(\"newsletterScheduleAt\",x.schedule_at?String(x.schedule_at).slice(0,16):\"\"),document.getElementById(\"newsletterEditorId\").textContent=x.id,[\"previewNewsletterButton\",\"downloadNewsletterPdfButton\",\"testNewsletterButton\",\"sendNewsletterButton\",\"scheduleNewsletterButton\"].forEach(function(id2){const el=document.getElementById(id2);el&&(el.disabled=!1)});const deleteButton=document.getElementById(\"deleteNewsletterButton\");deleteButton&&(deleteButton.disabled=!1,deleteButton.textContent=x.status===\"sent\"?\"Remove Sent\":\"Delete Draft\",deleteButton.dataset.newsletterStatus=x.status||\"draft\"),document.getElementById(\"newsletterResult\").textContent=\"Campaign opened. Use the live preview, then send a private test before scheduling or sending.\",setNewsletterTemplateActiveV323(\"\"),window.orbitV75SyncNewsletterEditor&&setTimeout(window.orbitV75SyncNewsletterEditor,0),setTimeout(updateNewsletterStudioV323,0),window.scrollTo({top:document.querySelector('[data-engagement-pane=\"newsletters\"]')?.offsetTop||0,behavior:\"smooth\"})}async function loadEngagementV73(button2){button2&&setLoading(button2,!0);try{const results=await Promise.all([api(\"/api/admin/broadcasts?limit=50\"),api(\"/api/admin/newsletters?limit=50\"),api(\"/api/admin/newsletter-templates\")]);engagementBroadcastsV731=results[0].broadcasts||[],engagementNewslettersV731=results[1].newsletters||[],applyNewsletterTemplateOverridesV375(results[2].overrides||[]);const broadcastRow=function(x){return\"<tr><td><strong>\"+esc(x.title)+\"</strong><br><small>\"+esc((x.message||\"\").slice(0,120))+\"</small></td><td>\"+esc(x.audience||\"active\")+'</td><td><span class=\"orbit-priority-chip '+esc(x.priority||\"normal\")+'\">'+esc(x.priority||\"normal\")+\"</span></td><td>\"+esc(x.recipient_count||0)+\"</td><td>\"+esc(engagementDateV73(x.updated_at))+'</td><td><button type=\"button\" class=\"secondary\" data-open-broadcast-v731=\"'+esc(x.id)+'\">'+(x.status===\"draft\"?\"Open / Edit\":\"View\")+\"</button></td></tr>\"},drafts=document.getElementById(\"broadcastDraftsTable\");drafts&&(drafts.innerHTML=table([\"Title\",\"Audience\",\"Priority\",\"Recipients\",\"Updated\",\"Actions\"],engagementBroadcastsV731.filter(x=>x.status===\"draft\").map(broadcastRow),\"No broadcast drafts.\"));const published=document.getElementById(\"broadcastPublishedTable\");published&&(published.innerHTML=table([\"Title\",\"Audience\",\"Priority\",\"Recipients\",\"Published\",\"Actions\"],engagementBroadcastsV731.filter(x=>x.status!==\"draft\").map(broadcastRow),\"No published broadcasts.\"));const nt=document.getElementById(\"newslettersTable\");nt&&(nt.innerHTML=table([\"Newsletter\",\"Status\",\"Recipients\",\"Updated\",\"Actions\"],engagementNewslettersV731.map(function(x){return\"<tr><td><strong>\"+esc(x.campaign_name||x.title||\"Newsletter campaign\")+\"</strong><br><small>Subject: \"+esc(x.title||\"\\u2014\")+(x.subtitle?\" \\xB7 \"+esc(x.subtitle):\"\")+\"</small></td><td>\"+esc(x.status||\"draft\")+(x.schedule_at?\"<br><small>\"+esc(engagementDateV73(x.schedule_at))+\"</small>\":\"\")+\"</td><td>\"+esc(x.recipient_count||0)+\"</td><td>\"+esc(engagementDateV73(x.updated_at))+'</td><td><button type=\"button\" class=\"secondary\" data-open-newsletter-v731=\"'+esc(x.id)+'\">Open / Edit</button> <a class=\"orbit-button-link\" target=\"_blank\" rel=\"noopener\" href=\"'+adminDownloadUrlV73(\"/api/admin/newsletters/\"+encodeURIComponent(x.id)+\"/preview\")+'\">Preview</a> <button type=\"button\" class=\"secondary orbit-newsletter-delete-draft-v385\" data-delete-newsletter-v382=\"'+esc(x.id)+'\">'+(x.status===\"sent\"?\"Remove\":\"Delete\")+\"</button></td></tr>\"}),\"No newsletters yet.\"))}catch(err){setNotice2(err.message,!0)}finally{button2&&setLoading(button2,!1)}}async function saveBroadcastV73(button2,quiet){setLoading(button2,!0);const result=document.getElementById(\"broadcastResult\");try{const data=await api(\"/api/admin/broadcasts\",{method:\"POST\",body:JSON.stringify(broadcastPayloadV731())});if(currentBroadcastIdV73=data.broadcast.id,document.getElementById(\"broadcastEditorMode\").textContent=\"Editing draft\",document.getElementById(\"broadcastEditorId\").textContent=data.broadcast.id,document.getElementById(\"deleteBroadcastButton\").disabled=!1,!quiet){const savedTitle=data.broadcast.title||\"Broadcast\";resetBroadcastV731(),result&&(result.textContent=\"Draft saved: \"+savedTitle+\". It is available in the list below.\")}return await loadEngagementV73(),data.broadcast}catch(err){throw result&&(result.textContent=err.message),err}finally{setLoading(button2,!1)}}async function publishBroadcastV73(button2){if(!await resolveBroadcastLinkV74()||!confirm(\"Save these exact fields and publish this announcement now? In-app notifications are created immediately and optional emails will be sent.\"))return;setLoading(button2,!0);const result=document.getElementById(\"broadcastResult\");try{currentBroadcastIdV73=(await api(\"/api/admin/broadcasts\",{method:\"POST\",body:JSON.stringify(broadcastPayloadV731())})).broadcast.id;const data=await api(\"/api/admin/broadcasts/\"+encodeURIComponent(currentBroadcastIdV73)+\"/publish\",{method:\"POST\",body:\"{}\"}),publishedMessage=\"Published to \"+(data.broadcast.recipient_count||0)+\" members. Emails sent: \"+(data.broadcast.email_sent_count||0)+\", skipped: \"+(data.broadcast.email_skipped_count||0)+\", failed: \"+(data.broadcast.email_failed_count||0)+\".\";resetBroadcastV731(),result&&(result.textContent=publishedMessage),await Promise.all([loadEngagementV73(),loadCommunications(),loadOperationsV74()])}catch(err){result&&(result.textContent=err.message)}finally{setLoading(button2,!1)}}async function deleteBroadcastV731(button2){if(!(!currentBroadcastIdV73||!confirm(\"Delete this saved draft?\"))){setLoading(button2,!0);try{await api(\"/api/admin/broadcasts/\"+encodeURIComponent(currentBroadcastIdV73)+\"/delete\",{method:\"POST\",body:\"{}\"}),resetBroadcastV731(),await loadEngagementV73()}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}}async function saveNewsletterV73(button2,quiet){setLoading(button2,!0);const result=document.getElementById(\"newsletterResult\");try{const data=await api(\"/api/admin/newsletters\",{method:\"POST\",body:JSON.stringify(newsletterPayloadV731())});return currentNewsletterIdV73=data.newsletter.id,setValV731(\"newsletterCampaignName\",data.newsletter.campaign_name||valV731(\"newsletterCampaignName\")||\"Newsletter campaign\"),document.getElementById(\"newsletterEditorId\").textContent=data.newsletter.id,[\"previewNewsletterButton\",\"downloadNewsletterPdfButton\",\"testNewsletterButton\",\"sendNewsletterButton\",\"scheduleNewsletterButton\",\"deleteNewsletterButton\"].forEach(function(id){const el=document.getElementById(id);el&&(el.disabled=!1)}),result&&!quiet&&(result.textContent=\"Newsletter draft saved. It can now be reopened, tested, scheduled or sent.\"),setTimeout(updateNewsletterStudioV323,0),await loadEngagementV73(),data.newsletter}catch(err){throw result&&(result.textContent=err.message),err}finally{setLoading(button2,!1)}}function adminDownloadUrlV73(path){return API_BASE+path+(path.includes(\"?\")?\"&\":\"?\")+\"secret=\"+encodeURIComponent(secret)+adminSessionQueryV329()}async function ensureNewsletterSavedV731(button2){const saved=await api(\"/api/admin/newsletters\",{method:\"POST\",body:JSON.stringify(newsletterPayloadV731())});return currentNewsletterIdV73=saved.newsletter.id,saved.newsletter}async function testNewsletterV73(button2){const email=valV731(\"newsletterTestEmail\");if(!email)return setNotice2(\"Enter the exact test email address for this open newsletter.\",!0);setLoading(button2,!0);try{await ensureNewsletterSavedV731(button2);const data=await api(\"/api/admin/newsletters/\"+encodeURIComponent(currentNewsletterIdV73)+\"/test-send\",{method:\"POST\",body:JSON.stringify({email})});document.getElementById(\"newsletterResult\").textContent=\"Test of \\u201C\"+valV731(\"newsletterTitle\")+\"\\u201D sent only to \"+email+\". Sent: \"+data.result.sent+\", failed: \"+data.result.failed+\".\",await Promise.all([loadEngagementV73(),loadCommunications()])}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}async function sendNewsletterV73(button2){if(confirm(\"Save and send this open newsletter to the selected subscribed audience now?\")){setLoading(button2,!0);try{await ensureNewsletterSavedV731(button2);const data=await api(\"/api/admin/newsletters/\"+encodeURIComponent(currentNewsletterIdV73)+\"/send\",{method:\"POST\",body:JSON.stringify({audience:valV731(\"newsletterAudience\")||\"active\"})});document.getElementById(\"newsletterResult\").textContent=\"Newsletter sent: \"+data.result.sent+\". Unsubscribed skipped: \"+data.result.skipped+\". Failed: \"+data.result.failed+\".\",await Promise.all([loadEngagementV73(),loadCommunications(),loadSubscribersV731()])}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}}async function scheduleNewsletterV731(button2){const scheduleAt=valV731(\"newsletterScheduleAt\");if(!scheduleAt)return setNotice2(\"Choose a future schedule date and time.\",!0);if(confirm(\"Save and schedule this open newsletter for \"+scheduleAt+\"?\")){setLoading(button2,!0);try{await ensureNewsletterSavedV731(button2);const data=await api(\"/api/admin/newsletters/\"+encodeURIComponent(currentNewsletterIdV73)+\"/schedule\",{method:\"POST\",body:JSON.stringify({scheduleAt,audience:valV731(\"newsletterAudience\")||\"active\"})});document.getElementById(\"newsletterResult\").textContent=\"Scheduled for \"+engagementDateV73(data.newsletter.schedule_at)+\".\",await loadEngagementV73()}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}}async function deleteNewsletterV731(button2){if(!currentNewsletterIdV73)return;const sent=(button2?.dataset?.newsletterStatus||engagementNewslettersV731.find(x=>x.id===currentNewsletterIdV73)?.status||\"draft\")===\"sent\";if(confirm(sent?\"Remove this sent newsletter from Campaign History? Delivery/audit evidence will be retained.\":\"Delete this newsletter draft permanently?\")){setLoading(button2,!0);try{const result=await api(\"/api/admin/newsletters/\"+encodeURIComponent(currentNewsletterIdV73)+\"/delete\",{method:\"POST\",body:\"{}\"});resetNewsletterV731(),await loadEngagementV73(),setNotice2(sent?\"Sent newsletter removed from Campaign History; audit evidence retained.\":\"Newsletter draft deleted.\")}catch(err){setNotice2(err.message,!0)}finally{setLoading(button2,!1)}}}async function deleteNewsletterDraftFromListV382(id,button2){if(!id)return;const sent=engagementNewslettersV731.find(x=>x.id===id)?.status===\"sent\";if(confirm(sent?\"Remove this sent newsletter from Campaign History? Delivery/audit evidence will be retained.\":\"Delete this newsletter draft permanently?\")){setLoading(button2,!0);try{await api(\"/api/admin/newsletters/\"+encodeURIComponent(id)+\"/delete\",{method:\"POST\",body:\"{}\"}),currentNewsletterIdV73===id&&resetNewsletterV731(),await loadEngagementV73(),setNotice2(sent?\"Sent newsletter removed from Campaign History; audit evidence retained.\":\"Newsletter draft deleted.\")}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}}async function loadSubscribersV731(button2){button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/newsletter-preferences\"),summary=document.getElementById(\"newsletterSubscriberSummary\");summary&&(summary.innerHTML='<div class=\"orbit-communications-status-card configured\"><span>Subscribed</span><strong>'+esc(data.subscribed||0)+'</strong><small>Automatic default for members</small></div><div class=\"orbit-communications-status-card warning\"><span>Unsubscribed</span><strong>'+esc(data.unsubscribed||0)+\"</strong><small>Marketing emails skipped</small></div>\");const target=document.getElementById(\"newsletterSubscribersTable\");target&&(target.innerHTML=table([\"Email\",\"Member\",\"Status\",\"Unsubscribed\",\"Updated\"],(data.items||[]).map(function(x){return\"<tr><td>\"+esc(x.email)+\"</td><td>\"+esc(x.member_number||\"\\u2014\")+(x.member_status?'<small style=\"display:block\">'+esc(x.member_status)+\"</small>\":\"\")+\"</td><td><strong>\"+(x.marketing_unsubscribed?\"Unsubscribed\":\"Subscribed\")+\"</strong></td><td>\"+esc(engagementDateV73(x.unsubscribed_at))+\"</td><td>\"+esc(engagementDateV73(x.updated_at))+\"</td></tr>\"}),\"No member email preferences found.\"))}finally{button2&&setLoading(button2,!1)}}async function saveNewsletterMasterTemplateV375(button2){const key=orbitSelectedNewsletterTemplateV375;if(!key||!newsletterMasterEditingV542)return setNotice2(\"Choose Edit master on a newsletter template first.\",!0);window.orbitV75SyncNewsletterEditor&&window.orbitV75SyncNewsletterEditor();const payload={title:valV731(\"newsletterTitle\"),subtitle:valV731(\"newsletterSubtitle\"),html:valV731(\"newsletterBodyHtml\"),text:valV731(\"newsletterBodyText\")};if(!payload.title.trim()||!payload.html.trim())return setNotice2(\"The selected master template needs a subject/title and newsletter content before it can be saved.\",!0);if(confirm(\"Replace the \\u201C\"+orbitNewsletterTemplatesV317[key].label+\"\\u201D master template with the exact contents currently in the editor?\")){setLoading(button2,!0);try{const data=await api(\"/api/admin/newsletter-templates/\"+encodeURIComponent(key),{method:\"POST\",body:JSON.stringify(payload),cacheMs:0});Object.assign(orbitNewsletterTemplatesV317[key],{title:data.template.title,subtitle:data.template.subtitle||\"\",html:data.template.html,text:data.template.text||\"\"});const status=document.getElementById(\"newsletterTemplateStatus\");status&&(status.textContent=orbitNewsletterTemplatesV317[key].label+\" master template saved. New newsletters will load this version.\"),setNotice2(\"Newsletter master template saved \\u2713\")}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}}async function resetNewsletterMasterTemplateV375(button2){const key=orbitSelectedNewsletterTemplateV375;if(!key||!newsletterMasterEditingV542)return;const label=orbitNewsletterTemplatesV317[key].label;if(confirm(\"Reset the \\u201C\"+label+\"\\u201D master template to the Orbit default?\")){setLoading(button2,!0);try{await api(\"/api/admin/newsletter-templates/\"+encodeURIComponent(key)+\"/reset\",{method:\"POST\",body:\"{}\",cacheMs:0}),orbitNewsletterTemplatesV317[key]=JSON.parse(JSON.stringify(orbitNewsletterTemplateDefaultsV375[key]));const template=orbitNewsletterTemplatesV317[key];currentNewsletterIdV73=\"\",setNewsletterHeroV74(\"\"),setValV731(\"newsletterTitle\",template.title),setValV731(\"newsletterSubtitle\",template.subtitle),setValV731(\"newsletterBodyHtml\",template.html),setValV731(\"newsletterBodyText\",template.text),setNewsletterTemplateActiveV323(key),window.orbitV75SyncNewsletterEditor&&setTimeout(window.orbitV75SyncNewsletterEditor,0),setTimeout(updateNewsletterStudioV323,0);const status=document.getElementById(\"newsletterTemplateStatus\");status&&(status.textContent=label+\" reset to the Orbit default and loaded into the editor.\"),setNotice2(\"Newsletter master template reset \\u2713\")}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}}document.getElementById(\"saveNewsletterMasterTemplateV375\")?.addEventListener(\"click\",function(){saveNewsletterMasterTemplateV375(this)}),document.getElementById(\"resetNewsletterMasterTemplateV375\")?.addEventListener(\"click\",function(){resetNewsletterMasterTemplateV375(this)}),document.querySelectorAll(\"[data-newsletter-template]\").forEach(function(btn){btn.addEventListener(\"click\",function(){applyNewsletterTemplateV317(btn.dataset.newsletterTemplate)})}),document.querySelectorAll(\"[data-newsletter-master-edit-v542]\").forEach(button2=>button2.addEventListener(\"click\",()=>applyNewsletterTemplateV317(button2.dataset.newsletterMasterEditV542,!0)));let templatePreviewRequestV542=0;async function previewNewsletterTemplateV542(key){const template=orbitNewsletterTemplatesV317[key];if(!template)return;const dialog=$2(\"newsletterTemplatePreviewV542\"),frame=$2(\"newsletterTemplatePreviewFrameV542\"),request=++templatePreviewRequestV542;text(\"newsletterTemplatePreviewTitleV542\",template.label),text(\"newsletterTemplatePreviewStatusV542\",\"Loading preview\\u2026\"),frame.hidden=!0,frame.removeAttribute(\"srcdoc\"),dialog.open||dialog.showModal();try{const result=await api(\"/api/admin/newsletter-template-preview\",{method:\"POST\",body:JSON.stringify({key,title:template.title,subtitle:template.subtitle,html:template.html,text:template.text}),cacheMs:0});if(request!==templatePreviewRequestV542||!dialog.open)return;if(typeof result.html!=\"string\")throw new Error(\"The email preview was not returned.\");const policy=`<meta http-equiv=\"Content-Security-Policy\" content=\"default-src 'none'; img-src https: data:; style-src 'unsafe-inline'; script-src 'none'; form-action 'none'; base-uri 'none'\">`;frame.srcdoc=result.html.replace(/<head[^>]*>/i,match=>match+policy),frame.hidden=!1,text(\"newsletterTemplatePreviewStatusV542\",\"Preview of the saved master. No email has been sent.\")}catch(error){request===templatePreviewRequestV542&&text(\"newsletterTemplatePreviewStatusV542\",\"Preview could not load. Close and try again. \"+error.message)}}document.querySelectorAll(\"[data-newsletter-template-preview-v542]\").forEach(button2=>button2.addEventListener(\"click\",()=>previewNewsletterTemplateV542(button2.dataset.newsletterTemplatePreviewV542))),document.querySelector(\"[data-newsletter-preview-close-v542]\")?.addEventListener(\"click\",()=>{$2(\"newsletterTemplatePreviewV542\").close(),templatePreviewRequestV542++}),document.querySelectorAll(\"[data-template-preview-width-v542]\").forEach(button2=>button2.addEventListener(\"click\",()=>{$2(\"newsletterTemplatePreviewFrameV542\").style.maxWidth=button2.dataset.templatePreviewWidthV542===\"mobile\"?\"375px\":\"760px\"})),document.getElementById(\"newsletterBlankTemplateButton\")?.addEventListener(\"click\",function(){if((currentNewsletterIdV73||newsletterDraftHasContentV317())&&!confirm(\"Clear the current editor and start a new blank newsletter? Saved newsletters remain in history.\"))return;resetNewsletterV731();const status=document.getElementById(\"newsletterTemplateStatus\");status&&(status.textContent=\"Blank newsletter ready. Nothing has been saved or sent.\")}),document.querySelectorAll(\"[data-engagement-tab]\").forEach(function(btn){btn.addEventListener(\"click\",function(){setEngagementPaneV73(btn.dataset.engagementTab)})}),document.querySelectorAll(\"[data-broadcast-list-tab]\").forEach(function(btn){btn.addEventListener(\"click\",function(){const name=btn.dataset.broadcastListTab;document.querySelectorAll(\"[data-broadcast-list-tab]\").forEach(b=>b.classList.toggle(\"active\",b===btn)),document.querySelectorAll(\"[data-broadcast-list-pane]\").forEach(p=>p.hidden=p.dataset.broadcastListPane!==name)})}),document.getElementById(\"refreshEngagementButton\")?.addEventListener(\"click\",function(){loadEngagementV73(this)}),document.getElementById(\"refreshSubscribersButton\")?.addEventListener(\"click\",function(){loadSubscribersV731(this)});let orbitServerClockBaseV74=0,orbitServerClockPerfV74=0,operationsItemsV74=[],mediaItemsV74=[];function formatServerTimeV74(ms){try{return new Intl.DateTimeFormat(\"en-GB\",{timeZone:\"Europe/London\",weekday:\"short\",day:\"2-digit\",month:\"short\",year:\"numeric\",hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\",hour12:!1,timeZoneName:\"short\"}).format(new Date(ms))}catch{return new Date(ms).toLocaleString(\"en-GB\")}}function tickServerTimeV74(){const el=document.getElementById(\"orbitServerTime\");!el||!orbitServerClockBaseV74||(el.textContent=\"Server: \"+formatServerTimeV74(orbitServerClockBaseV74+(performance.now()-orbitServerClockPerfV74)))}async function syncServerTimeV74(){const el=document.getElementById(\"orbitServerTime\");try{const data=await api(\"/api/admin/v74/server-time\");orbitServerClockBaseV74=Date.parse(data.iso),orbitServerClockPerfV74=performance.now(),tickServerTimeV74()}catch{el&&(el.textContent=\"Server time unavailable\")}}function navigateV74(module,search){if(module===\"development\"){activateModule(\"development\"),setDevelopmentTab(\"verification\"),window.setTimeout(()=>document.getElementById(\"orbitVerificationPanel\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"}),120);return}activateModule(module),module===\"automation\"&&setPrizeArea(\"golden\"),search&&setTimeout(function(){const candidates={members:\"memberSearchInput\",shopify:\"shopifyCheckoutSearch\",support:\"supportSearchInput\",shipping:\"fulfilmentSearchInput\",loyalty:\"loyaltyOrderSearch\"},el=document.getElementById(candidates[module]||\"\");el&&(el.value=search,el.dispatchEvent(new Event(\"input\",{bubbles:!0})),el.dispatchEvent(new Event(\"change\",{bubbles:!0})),el.focus())},140)}let globalSearchTimerV74,globalSearchIndexV83=-1,globalSearchRequestV834=0;const orbitSearchCommandsV834=[{title:\"Home Dashboard\",subtitle:\"Home \\xB7 Command Centre\",keywords:\"home dashboard command centre today health\",module:\"dashboard\"},{title:\"Task Centre\",subtitle:\"Home \\xB7 Outstanding operational actions\",keywords:\"tasks operations inbox urgent actions\",module:\"operations\"},{title:\"Members\",subtitle:\"Customers \\xB7 Search and manage members\",keywords:\"customers members subscriptions active pending\",module:\"members\"},{title:\"Messages\",subtitle:\"Customers \\xB7 Member support conversations\",keywords:\"support messages conversations inbox tickets\",module:\"support\"},{title:\"Tickets\",subtitle:\"Sales \\xB7 Ticket administration\",keywords:\"sales tickets checkout order refund reissue\",module:\"shopify\"},{title:\"Events\",subtitle:\"Sales \\xB7 Eventbrite events\",keywords:\"events eventbrite shows sales\",module:\"events\"},{title:\"Fulfilment\",subtitle:\"Fulfilment \\xB7 Parcels, labels and dispatch\",keywords:\"shipping parcels labels dispatch monthly loyalty prizes\",module:\"shipping\"},{title:\"Box Accounting\",subtitle:\"Members Club \\xB7 Inventory, costs and box profitability\",keywords:\"inventory stock packs slabs grading collector bonus accounting parcel cost\",module:\"box-inventory\"},{title:\"Monthly Draw\",subtitle:\"Prizes \\xB7 Draw Automation\",keywords:\"monthly draw automatic prizes winners schedule\",module:\"automation\",prizeArea:\"monthly\",drawPane:\"automation\"},{title:\"Golden Tickets\",subtitle:\"Prizes \\xB7 Golden Ticket administration\",keywords:\"golden tickets prize claims winners\",module:\"automation\",prizeArea:\"golden\"},{title:\"Live Rewards\",subtitle:\"Loyalty \\xB7 Published rewards\",keywords:\"loyalty live rewards points store\",module:\"loyalty\",loyaltyPane:\"live\"},{title:\"Draft Rewards\",subtitle:\"Loyalty \\xB7 Draft rewards\",keywords:\"loyalty draft rewards\",module:\"loyalty\",loyaltyPane:\"drafts\"},{title:\"Reward History\",subtitle:\"Loyalty \\xB7 Reward history\",keywords:\"loyalty reward history points\",module:\"loyalty\",loyaltyPane:\"history\"},{title:\"Loyalty Orders\",subtitle:\"Loyalty \\xB7 Reward fulfilment orders\",keywords:\"loyalty orders fulfilment rewards\",module:\"loyalty\",loyaltyPane:\"orders\"},{title:\"Broadcasts\",subtitle:\"Marketing \\xB7 Member broadcasts\",keywords:\"marketing communications broadcasts notifications\",module:\"engagement\",engagementPane:\"broadcasts\"},{title:\"Newsletters\",subtitle:\"Marketing \\xB7 Email newsletters\",keywords:\"marketing newsletter email campaigns\",module:\"engagement\",engagementPane:\"newsletters\"},{title:\"Performance Overview\",subtitle:\"Performance \\xB7 Business overview\",keywords:\"performance metrics overview analytics\",module:\"performance\"},{title:\"Activity\",subtitle:\"Performance \\xB7 Member and system activity\",keywords:\"activity audit timeline\",module:\"activity\"},{title:\"Reports\",subtitle:\"Performance \\xB7 Reports\",keywords:\"reports performance export\",module:\"reports\"},{title:\"Website Images\",subtitle:\"Content \\xB7 Public website images\",keywords:\"content website images homepage\",module:\"website-images\"},{title:\"Monthly Content Images\",subtitle:\"Content \\xB7 Monthly pack images\",keywords:\"content monthly images packs\",module:\"content\"},{title:\"Media Library\",subtitle:\"Content \\xB7 Managed images\",keywords:\"content media library uploads\",module:\"media\"},{title:\"Backend Diagnostics\",subtitle:\"System \\xB7 Backend settings and diagnostics\",keywords:\"backend health api version diagnostics settings\",module:\"settings\",anchor:\"settingsBackendCard\"},{title:\"MongoDB\",subtitle:\"System \\xB7 Database connection\",keywords:\"mongodb mongo database connection latency credentials settings\",module:\"settings\",anchor:\"settingsMongoCard\"},{title:\"Recharge\",subtitle:\"System \\xB7 Membership billing connection\",keywords:\"recharge subscription billing settings\",module:\"settings\",anchor:\"settingsRechargeCard\"},{title:\"Scheduler\",subtitle:\"System \\xB7 Scheduler status and controls\",keywords:\"scheduler automation jobs cron settings\",module:\"settings\",anchor:\"settingsSchedulerCard\"},{title:\"Eventbrite Connection\",subtitle:\"System \\xB7 Eventbrite integration\",keywords:\"eventbrite connection events integration settings\",module:\"settings\",anchor:\"settingsEventbriteCard\"},{title:\"Shopify Connection\",subtitle:\"System \\xB7 Shopify ticket connection\",keywords:\"shopify store checkout webhook settings\",module:\"settings\",anchor:\"settingsShopifyCard\"},{title:\"Shipping and Labels\",subtitle:\"System \\xB7 ShipEngine and label settings\",keywords:\"shipengine shipping labels postage test mode settings\",module:\"settings\",anchor:\"shippingSettingsPanel\"},{title:\"Email Delivery\",subtitle:\"System \\xB7 Resend and email settings\",keywords:\"resend email delivery communications settings\",module:\"settings\",anchor:\"settingsResendCard\"},{title:\"Scanner\",subtitle:\"System \\xB7 Door-entry scanner diagnostics\",keywords:\"scanner entry qr diagnostics settings\",module:\"settings\",anchor:\"settingsScannerCard\"},{title:\"Developer & Testing\",subtitle:\"System \\xB7 Recovery and simulation tools\",keywords:\"developer testing diagnostics simulation maintenance\",module:\"testing\"}];function closeGlobalSearchV83(){const input=document.getElementById(\"orbitGlobalSearch\"),box=document.getElementById(\"orbitGlobalSearchResults\");box&&(box.hidden=!0,box.innerHTML=\"\"),input&&input.setAttribute(\"aria-expanded\",\"false\"),globalSearchIndexV83=-1}function selectGlobalSearchResultV83(index){const items=Array.from(document.querySelectorAll(\"#orbitGlobalSearchResults .orbit-search-result\"));items.length&&(globalSearchIndexV83=Math.max(0,Math.min(index,items.length-1)),items.forEach((item,i)=>{item.classList.toggle(\"keyboard-active\",i===globalSearchIndexV83),item.setAttribute(\"aria-selected\",i===globalSearchIndexV83?\"true\":\"false\")}),items[globalSearchIndexV83].scrollIntoView({block:\"nearest\"}))}function commandMatchesV834(q){const terms=q.toLowerCase().split(/\\s+/).filter(Boolean);return orbitSearchCommandsV834.filter(function(item){const hay=(item.title+\" \"+item.subtitle+\" \"+item.keywords).toLowerCase();return terms.every(term=>hay.includes(term))}).slice(0,10)}function searchResultButtonV834(x){return'<button type=\"button\" role=\"option\" aria-selected=\"false\" class=\"orbit-search-result\" data-v74-module=\"'+esc(x.module||\"dashboard\")+'\" data-v74-search=\"'+esc(x.search||x.id||\"\")+'\" data-v834-anchor=\"'+esc(x.anchor||\"\")+'\" data-v834-prize-area=\"'+esc(x.prizeArea||\"\")+'\" data-v834-draw-pane=\"'+esc(x.drawPane||\"\")+'\" data-v834-loyalty-pane=\"'+esc(x.loyaltyPane||\"\")+'\" data-v834-engagement-pane=\"'+esc(x.engagementPane||\"\")+'\"><span class=\"orbit-search-result-icon\" aria-hidden=\"true\">'+esc(x.icon||\"\\u2197\")+\"</span><span><strong>\"+esc(x.title||\"Result\")+\"</strong><small>\"+esc(x.subtitle||\"\")+\"</small></span></button>\"}async function runGlobalSearchV74(){const input=document.getElementById(\"orbitGlobalSearch\"),box=document.getElementById(\"orbitGlobalSearchResults\"),q=(input?.value||\"\").trim();if(!box||!input)return;if(q.length<2){closeGlobalSearchV83();return}const requestId=++globalSearchRequestV834,commands=commandMatchesV834(q);box.hidden=!1,input.setAttribute(\"aria-expanded\",\"true\"),box.innerHTML='<div class=\"orbit-search-loading\"><span class=\"orbit-mini-spinner\" aria-hidden=\"true\"></span><span>Searching Orbit OS\\u2026</span></div>';let dataGroups=[],backendError=\"\";try{const data=await api(\"/api/admin/v74/search?q=\"+encodeURIComponent(q)+\"&limit=10\");dataGroups=Array.isArray(data.groups)?data.groups:[]}catch(err){backendError=err.message||\"Live record search is unavailable.\"}if(requestId!==globalSearchRequestV834)return;const groups=[];commands.length&&groups.push({label:\"Pages & settings\",items:commands}),dataGroups.forEach(function(group){Array.isArray(group.items)&&group.items.length&&groups.push(group)}),groups.length?box.innerHTML=groups.map(function(g){return'<section class=\"orbit-search-group\"><h4>'+esc(g.label||\"Results\")+\"</h4>\"+g.items.map(searchResultButtonV834).join(\"\")+\"</section>\"}).join(\"\")+(backendError?'<div class=\"orbit-search-warning\">Live records could not be searched: '+esc(backendError)+' <button type=\"button\" class=\"orbit-search-inline-retry\" data-retry-global-search>Retry</button></div>':\"\"):backendError?box.innerHTML='<div class=\"orbit-empty\"><strong>Search could not load</strong><span>'+esc(backendError)+'</span><button type=\"button\" class=\"secondary\" data-retry-global-search>Retry</button></div>':box.innerHTML='<div class=\"orbit-empty\"><strong>No results found</strong><span>No Orbit records or settings matched \\u201C'+esc(q)+\"\\u201D.</span></div>\",globalSearchIndexV83=-1}function navigateSearchResultV834(button2){const module=button2.dataset.v74Module||\"dashboard\",search=button2.dataset.v74Search||\"\";activateModule(module),module===\"automation\"&&(setPrizeArea(button2.dataset.v834PrizeArea||\"monthly\"),button2.dataset.v834DrawPane&&setDrawPane(button2.dataset.v834DrawPane)),module===\"loyalty\"&&button2.dataset.v834LoyaltyPane&&openLoyaltyPane(button2.dataset.v834LoyaltyPane),module===\"engagement\"&&button2.dataset.v834EngagementPane&&setEngagementPaneV73(button2.dataset.v834EngagementPane);const anchor=button2.dataset.v834Anchor||\"\";anchor&&window.setTimeout(function(){const node=document.getElementById(anchor);node&&(document.querySelectorAll(\".orbit-settings-focus\").forEach(n=>n.classList.remove(\"orbit-settings-focus\")),node.classList.add(\"orbit-settings-focus\"),node.scrollIntoView({behavior:\"smooth\",block:\"start\"}))},180),search&&window.setTimeout(function(){const candidates={members:\"memberSearchInput\",shopify:\"shopifyCheckoutSearch\",support:\"supportSearchInput\",shipping:\"fulfilmentSearchInput\",loyalty:\"loyaltyOrderSearch\"},el=document.getElementById(candidates[module]||\"\");el&&(el.value=search,el.dispatchEvent(new Event(\"input\",{bubbles:!0})),el.dispatchEvent(new Event(\"change\",{bubbles:!0})),el.focus())},180)}function operationalTaskItemsV81(items){const seen=new Set;return(items||[]).filter(function(item){const type=String(item.type||\"\").toLowerCase(),key=[type,item.record||\"\",item.title||\"\",item.subtitle||\"\"].join(\"|\");return seen.has(key)?!1:(seen.add(key),!0)})}function workspaceTaskItemsV6001(items){const workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599()),allowed={\"card-shows\":new Set([\"shopify\",\"events\",\"vendors\",\"advertising\",\"finance\",\"performance\",\"reports\",\"seo\"]),\"members-club\":new Set([\"members\",\"support\",\"shipping\",\"fulfilment\",\"box-inventory\",\"automation\",\"loyalty\",\"engagement\",\"comms\",\"content\",\"media\",\"website-images\"]),directory:new Set([\"directory\"]),development:new Set([\"development\",\"settings\",\"intelligence\",\"testing\",\"storage\",\"activity\"])}[workspace]||new Set;return operationalTaskItemsV81(items).filter(item=>allowed.has(String(item.module||\"\").toLowerCase()))}function syncOperationsCopyV6001(){const section=document.querySelector('[data-module=\"operations\"]'),workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599()),label=businessWorkspaceConfigV599[workspace]?.label||\"Orbit\";if(!section)return;const kicker=section.querySelector(\".orbit-kicker\"),title=section.querySelector(\"h2\"),copy=section.querySelector(\".orbit-panel-header p:not(.orbit-kicker)\");kicker&&(kicker.textContent=label.toUpperCase()+\" TASKS\"),title&&(title.textContent=label+\" Tasks\"),copy&&(copy.textContent=workspace===\"card-shows\"?\"Only event, ticket, vendor and show issues appear here.\":workspace===\"members-club\"?\"Only member, support, fulfilment, billing, prize, loyalty and Club communication issues appear here.\":workspace===\"directory\"?\"Only CardShowIndex and Directory issues appear here.\":\"Only engineering, system and Development work appears here.\")}function renderOperationsV74(){syncOperationsCopyV6001();const workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599()),type=document.getElementById(\"operationsTypeFilter\")?.value||\"\",priority=document.getElementById(\"operationsPriorityFilter\")?.value||\"\",q=(document.getElementById(\"operationsSearch\")?.value||\"\").toLowerCase();let taskRows=workspaceTaskItemsV6001(operationsItemsV74);workspace===\"development\"&&Number(state.acceptanceReadyCount||0)>0&&taskRows.unshift({id:\"acceptance-testing\",priority:\"important\",title:state.acceptanceReadyCount+\" acceptance test\"+(state.acceptanceReadyCount===1?\"\":\"s\")+\" waiting\",type:\"acceptance testing\",subtitle:\"Verify the latest Orbit OS fixes in the built-in queue.\",created_at:new Date().toISOString(),module:\"development\",record:\"\"});const rows=taskRows.filter(function(x){return(!type||x.type===type)&&(!priority||x.priority===priority)&&(!q||JSON.stringify(x).toLowerCase().includes(q))}),target=document.getElementById(\"operationsInboxTable\");target&&(target.innerHTML=table([\"Priority\",\"Issue\",\"Customer / detail\",\"Age\",\"Action\"],rows.map(function(x){const remove=x.type===\"acceptance testing\"?\"\":'<button type=\"button\" class=\"secondary\" data-dismiss-operation=\"'+esc(x.id||\"\")+'\">Remove</button>',memberLookup=x.memberLookup||x.record||\"\",open=x.type===\"delivery\"?'<button type=\"button\" class=\"secondary\" data-member-lookup=\"'+esc(memberLookup)+'\">Open Member</button><button type=\"button\" class=\"secondary\" data-delivery-task-repair=\"'+esc(memberLookup)+'\">Validate Address</button>':x.type===\"support\"&&x.supportTicketId?'<button type=\"button\" class=\"secondary\" data-v518-task-support=\"'+esc(x.supportTicketId)+'\">Reply</button>':x.module===\"members\"&&memberLookup?'<button type=\"button\" class=\"secondary\" data-v517-task-member=\"'+esc(memberLookup)+'\">Open Member</button>':'<button type=\"button\" class=\"secondary\" data-v74-module=\"'+esc(x.module)+'\" data-v74-search=\"'+esc(x.record||\"\")+'\">Open</button>';return'<tr><td><span class=\"orbit-priority-chip '+esc(x.priority)+'\">'+esc(x.priority)+\"</span></td><td><strong>\"+esc(x.title)+\"</strong><br><small>\"+esc(x.type)+\"</small></td><td>\"+esc(x.subtitle||\"\\u2014\")+\"</td><td>\"+esc(engagementDateV73(x.created_at))+'</td><td><div class=\"orbit-action-row\">'+open+remove+\"</div></td></tr>\"}),rows.length?\"No tasks match these filters.\":\"No unresolved \"+(businessWorkspaceConfigV599[workspace]?.label||\"workspace\")+\" tasks.\"))}async function dismissOperationV255(button2){const taskId=button2&&button2.dataset&&button2.dataset.dismissOperation;if(taskId&&confirm(\"Remove this item from the task box? This only dismisses the Admin task; it does not delete the underlying customer or operational record.\")){setLoading(button2,!0);try{await api(\"/api/admin/v74/operations-inbox/\"+encodeURIComponent(taskId)+\"/dismiss\",{method:\"POST\",body:JSON.stringify({reason:\"Dismissed from Admin task box\"})}),operationsItemsV74=operationsItemsV74.filter(function(x){return String(x.id||\"\")!==String(taskId)}),await loadOperationsV74(),setNotice2(\"Task removed from the Admin task box.\")}catch(err){setNotice2(err.message||\"Could not remove task.\",!0)}finally{setLoading(button2,!1)}}}let operationsRefreshPromiseV539=null;function renderTaskCountV539(){const development=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())===\"development\",ready=state.operationsCountLoadedV539&&(!development||state.acceptanceCountLoadedV539),failed=state.operationsCountErrorV539||development&&state.acceptanceCountErrorV539,value=ready?Number(state.operationsTaskCount||0)+(development?Number(state.acceptanceReadyCount||0):0):\"\\u2014\";text(\"opsCountTotal\",value),text(\"dashboardTaskTotal\",value),text(\"homeTasksBadgeV539\",value);const label=failed?\"Task count unavailable. Open Tasks to retry.\":ready?development?\"Development tasks and ready operator acceptance tests. Held tests are excluded.\":\"Tasks scoped to the current workspace.\":\"Checking tasks\\u2026\";text(\"homeTasksStatusV539\",label);const badge=$2(\"homeTasksBadgeV539\");return badge&&(badge.title=label,badge.setAttribute(\"aria-label\",ready?value+\" outstanding tasks\":label)),value}let acceptanceCountReadV542=0;async function refreshAcceptanceTaskCountV296(forceFresh=!1){const read=++acceptanceCountReadV542;if(canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())!==\"development\")return state.acceptanceReadyCount=0,state.acceptanceCountLoadedV539=!0,state.acceptanceCountErrorV539=!1,renderOperationsV74(),renderTaskCountV539();try{const data=await api(\"/api/admin/development-notes?status=\"+encodeURIComponent(\"Ready for Testing\")+(forceFresh?\"&refresh=\"+Date.now():\"\"),{cacheMs:0,timeoutMs:12e3});if(read!==acceptanceCountReadV542)return;if(!Array.isArray(data.notes))throw new Error(\"Acceptance task count was not returned.\");return state.acceptanceReadyCount=data.notes.filter(n=>operatorAcceptanceItemV559(n)&&!acceptanceHeldV500(n)).length,state.acceptanceCountLoadedV539=!0,state.acceptanceCountErrorV539=!1,renderOperationsV74(),renderTaskCountV539()}catch(error){if(read!==acceptanceCountReadV542)return;throw state.acceptanceCountLoadedV539=!1,state.acceptanceCountErrorV539=!0,renderTaskCountV539(),error}}async function refreshOperationsWorkspaceV296(button2){if(operationsRefreshPromiseV539&&!button2)return operationsRefreshPromiseV539;renderTaskCountV539();const promise=Promise.all([loadOperationsV74(button2),refreshAcceptanceTaskCountV296()]);operationsRefreshPromiseV539=promise;try{return await promise}finally{operationsRefreshPromiseV539===promise&&(operationsRefreshPromiseV539=null),renderTaskCountV539()}}let operationsReadV542=0;async function loadOperationsV74(button2,forceFresh=!1){const read=++operationsReadV542;button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/v74/operations-inbox\"+(button2?\"?reconcile=1\":forceFresh?\"?refresh=\"+Date.now():\"\"),{cacheMs:0,timeoutMs:12e3});if(read!==operationsReadV542)return;if(!Array.isArray(data.items))throw new Error(\"Task inbox was not returned.\");operationsItemsV74=data.items,state.operationsCountLoadedV539=!0,state.operationsCountErrorV539=!1;const visible=workspaceTaskItemsV6001(operationsItemsV74);state.operationsTaskCount=visible.length,renderTaskCountV539(),document.getElementById(\"opsCountUrgent\").textContent=visible.filter(x=>x.priority===\"urgent\").length,document.getElementById(\"opsCountImportant\").textContent=visible.filter(x=>x.priority===\"important\").length;const select=document.getElementById(\"operationsTypeFilter\");if(select){const current=select.value;select.innerHTML='<option value=\"\">All types</option>'+Array.from(new Set(visible.map(x=>x.type))).sort().map(x=>'<option value=\"'+esc(x)+'\">'+esc(x)+\"</option>\").join(\"\"),select.value=current}if(renderOperationsV74(),button2&&data.directSignupReconciliation){const r=data.directSignupReconciliation;Number(r.verified||0)>0?setNotice2(\"Refreshed tasks \\xB7 \"+Number(r.verified||0)+\" historical signup/rebill warning\"+(Number(r.verified||0)===1?\"\":\"s\")+\" reviewed and cleared.\"):r.success===!1&&Array.isArray(r.errors)&&r.errors.length&&setNotice2(\"Tasks refreshed. Some Shopify billing checks could not be re-read; unresolved warnings were kept.\",!0)}}catch(err){if(read!==operationsReadV542)return;state.operationsCountLoadedV539=!1,state.operationsCountErrorV539=!0,renderTaskCountV539(),setNotice2(err.message,!0)}finally{button2&&setLoading(button2,!1)}}async function loadMissionControlV74(){try{return await refreshOperationsWorkspaceV296()}catch{}}function fileToDataUrlV74(file){return new Promise(function(resolve,reject){const reader=new FileReader;reader.onload=()=>resolve(reader.result),reader.onerror=()=>reject(new Error(\"Could not read the selected image.\")),reader.readAsDataURL(file)})}function mediaUrlV74(x){return x.url+(x.url.includes(\"?\")?\"&\":\"?\")+\"v=\"+encodeURIComponent(x.updated_at||x.id)}function mediaScopeV6001(){return canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())===\"directory\"?\"directory\":\"members-club\"}function syncMediaScopeCopyV6001(){const directory=mediaScopeV6001()===\"directory\";text(\"mediaLibraryKickerV6001\",directory?\"CardShowIndex Assets\":\"Members Club Assets\"),text(\"mediaLibraryTitleV6001\",directory?\"Directory Media\":\"Media Library\"),text(\"mediaLibraryDescriptionV6001\",directory?\"Event artwork, fallback assets and CardShowIndex media only. Members Club images never appear here.\":\"Upload and manage Members Club images only. CardShowIndex and Directory media are kept in the Directory workspace.\")}function renderMediaV74(){syncMediaScopeCopyV6001();const target=document.getElementById(\"mediaLibraryGrid\");target&&(target.innerHTML=mediaItemsV74.length?mediaItemsV74.map(function(x){return'<article class=\"orbit-media-card\"><img src=\"'+esc(mediaUrlV74(x))+'\" alt=\"\"><div class=\"orbit-media-card-body\"><strong>'+esc(x.title||x.filename)+\"</strong><small>\"+esc(x.filename)+\" \\xB7 \"+Math.round(Number(x.size_bytes||0)/1024)+\" KB</small><small>\"+esc((x.tags||[]).join(\", \"))+'</small><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-use-media-v74=\"'+esc(x.id)+'\">Use</button><button type=\"button\" class=\"secondary\" data-copy-media-v74=\"'+esc(x.id)+'\">Copy URL</button><button type=\"button\" class=\"secondary\" data-delete-media-v74=\"'+esc(x.id)+'\">Delete</button></div></div></article>'}).join(\"\"):'<div class=\"orbit-empty\">No managed images yet.</div>')}async function loadMediaV74(button2){button2&&setLoading(button2,!0);try{const q=document.getElementById(\"mediaSearchInput\")?.value||\"\";mediaItemsV74=(await api(\"/api/admin/media?scope=\"+encodeURIComponent(mediaScopeV6001())+\"&q=\"+encodeURIComponent(q))).items||[],renderMediaV74()}catch(err){setNotice2(err.message,!0)}finally{button2&&setLoading(button2,!1)}}async function uploadMediaV74(button2,fileOverride){const input=document.getElementById(\"mediaUploadInput\"),file=fileOverride||input?.files?.[0];if(!file)return setNotice2(\"Choose an image first.\",!0);if(file.size>5*1024*1024)return setNotice2(\"Images must be 5 MB or smaller.\",!0);setLoading(button2,!0);try{const dataUrl=await fileToDataUrlV74(file),image=new Image,dimensions=await new Promise(function(resolve){image.onload=()=>resolve({width:image.naturalWidth,height:image.naturalHeight}),image.onerror=()=>resolve({}),image.src=dataUrl}),data=await api(\"/api/admin/media\",{method:\"POST\",body:JSON.stringify({filename:file.name,title:document.getElementById(\"mediaUploadTitle\")?.value||file.name,tags:document.getElementById(\"mediaUploadTags\")?.value||\"\",scope:mediaScopeV6001(),dataUrl,width:dimensions.width,height:dimensions.height})});return document.getElementById(\"mediaLibraryResult\").textContent=\"Uploaded \"+data.item.filename+\". It is now available for reuse.\",input&&(input.value=\"\"),await loadMediaV74(),data.item}catch(err){throw setNotice2(err.message,!0),err}finally{setLoading(button2,!1)}}function setNewsletterHeroV74(url){setValV731(\"newsletterHeroImageUrl\",url||\"\");const img=document.getElementById(\"newsletterHeroPreview\");img&&(img.src=url||\"\",img.hidden=!url)}async function resolveBroadcastLinkV74(){const input=document.getElementById(\"broadcastLinkUrl\"),result=document.getElementById(\"broadcastResult\");if(!input||!input.value.trim())return!0;try{const data=await api(\"/api/admin/v74/action-url/resolve\",{method:\"POST\",body:JSON.stringify({url:input.value})});return input.value=data.resolved,result&&(result.textContent=\"Action link resolves to: \"+data.resolved),!0}catch(err){return result&&(result.textContent=err.message),input.focus(),!1}}async function applyTicketActionV74(button2){const id=(document.getElementById(\"ticketAdminCheckoutId\")?.value||\"\").trim(),action=document.getElementById(\"ticketAdminAction\")?.value,reason=(document.getElementById(\"ticketAdminReason\")?.value||\"\").trim();if(!id||!reason)return setNotice2(\"Checkout ID and operator reason are required.\",!0);if(confirm(\"Apply this \"+action+\" action to checkout \"+id+\"? This is recorded in the permanent audit history.\")){setLoading(button2,!0);try{const payload={action,reason,email:document.getElementById(\"ticketAdminEmail\")?.value||\"\",ticketType:document.getElementById(\"ticketAdminType\")?.value||\"\"};await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(id)+\"/admin-action\",{method:\"POST\",body:JSON.stringify(payload)}),document.getElementById(\"ticketAdminResult\").textContent=\"Controlled ticket action completed and recorded: \"+action+\".\"}catch(err){document.getElementById(\"ticketAdminResult\").textContent=err.message}finally{setLoading(button2,!1)}}}document.getElementById(\"broadcastAudience\")?.addEventListener(\"change\",syncBroadcastAudienceV350),document.getElementById(\"newBroadcastButton\")?.addEventListener(\"click\",resetBroadcastV731),document.getElementById(\"saveBroadcastButton\")?.addEventListener(\"click\",function(){saveBroadcastV73(this)}),document.getElementById(\"publishBroadcastButton\")?.addEventListener(\"click\",function(){publishBroadcastV73(this)}),document.getElementById(\"deleteBroadcastButton\")?.addEventListener(\"click\",function(){deleteBroadcastV731(this)}),document.getElementById(\"newNewsletterButton\")?.addEventListener(\"click\",startNewNewsletterV382),document.getElementById(\"saveNewsletterButton\")?.addEventListener(\"click\",function(){saveNewsletterV73(this)}),document.getElementById(\"previewNewsletterButton\")?.addEventListener(\"click\",async function(){try{await ensureNewsletterSavedV731(this),window.open(adminDownloadUrlV73(\"/api/admin/newsletters/\"+encodeURIComponent(currentNewsletterIdV73)+\"/preview\"),\"_blank\",\"noopener\")}catch(err){setNotice2(err.message,!0)}}),document.getElementById(\"downloadNewsletterPdfButton\")?.addEventListener(\"click\",async function(){try{await ensureNewsletterSavedV731(this),window.open(adminDownloadUrlV73(\"/api/admin/newsletters/\"+encodeURIComponent(currentNewsletterIdV73)+\"/pdf\"),\"_blank\",\"noopener\")}catch(err){setNotice2(err.message,!0)}}),document.getElementById(\"testNewsletterButton\")?.addEventListener(\"click\",function(){testNewsletterV73(this)}),document.getElementById(\"scheduleNewsletterButton\")?.addEventListener(\"click\",function(){scheduleNewsletterV731(this)}),document.getElementById(\"sendNewsletterButton\")?.addEventListener(\"click\",function(){sendNewsletterV73(this)}),document.getElementById(\"deleteNewsletterButton\")?.addEventListener(\"click\",function(){deleteNewsletterV731(this)}),document.getElementById(\"broadcastsTable\")?.addEventListener(\"click\",function(e){const b=e.target.closest(\"[data-open-broadcast-v731]\");b&&openBroadcastV731(b.dataset.openBroadcastV731)}),document.getElementById(\"newslettersTable\")?.addEventListener(\"click\",function(e){const del=e.target.closest(\"[data-delete-newsletter-v382]\");if(del){deleteNewsletterDraftFromListV382(del.dataset.deleteNewsletterV382,del);return}const b=e.target.closest(\"[data-open-newsletter-v731]\");b&&openNewsletterV731(b.dataset.openNewsletterV731)}),document.getElementById(\"orbitGlobalSearch\")?.addEventListener(\"input\",function(){clearTimeout(globalSearchTimerV74),globalSearchTimerV74=setTimeout(runGlobalSearchV74,250)}),document.getElementById(\"orbitGlobalSearch\")?.addEventListener(\"focus\",function(){(this.value||\"\").trim().length>=2&&runGlobalSearchV74()}),document.getElementById(\"orbitGlobalSearch\")?.addEventListener(\"keydown\",function(e){const items=document.querySelectorAll(\"#orbitGlobalSearchResults .orbit-search-result\");e.key===\"ArrowDown\"?(e.preventDefault(),selectGlobalSearchResultV83(globalSearchIndexV83+1)):e.key===\"ArrowUp\"?(e.preventDefault(),selectGlobalSearchResultV83(globalSearchIndexV83-1)):e.key===\"Enter\"&&items.length?(e.preventDefault(),items[Math.max(globalSearchIndexV83,0)]?.click()):e.key===\"Escape\"&&closeGlobalSearchV83()}),document.getElementById(\"orbitGlobalSearchResults\")?.addEventListener(\"click\",function(e){if(e.target.closest(\"[data-retry-global-search]\")){runGlobalSearchV74();return}const b=e.target.closest(\"[data-v74-module]\");b&&(navigateSearchResultV834(b),closeGlobalSearchV83())}),document.addEventListener(\"keydown\",function(e){if((e.ctrlKey||e.metaKey)&&String(e.key).toLowerCase()===\"k\"){e.preventDefault();const input=document.getElementById(\"orbitGlobalSearch\");input&&(input.focus(),input.select(),(input.value||\"\").trim().length>=2&&runGlobalSearchV74())}}),document.addEventListener(\"click\",function(e){const health=e.target.closest(\"[data-health-module]\");health&&(activateModule(health.dataset.healthModule||\"settings\"),health.dataset.healthDrawPane&&(setPrizeArea(\"monthly\"),setDrawPane(health.dataset.healthDrawPane)),window.setTimeout(function(){document.querySelectorAll(\".orbit-settings-focus\").forEach(function(node){node.classList.remove(\"orbit-settings-focus\")});const anchor=document.getElementById(health.dataset.healthAnchor||\"\");health.dataset.healthModule===\"settings\"&&anchor&&setSettingsPane(anchor.id,{scroll:!1}),anchor&&(anchor.classList.add(\"orbit-settings-focus\"),anchor.scrollIntoView({behavior:\"smooth\",block:\"start\"}))},160)),e.target.closest(\"[data-settings-pane]\")&&setSettingsPane(\"\",{scroll:!0});const settingsJump=e.target.closest(\"[data-settings-jump]\");if(settingsJump){const anchor=document.getElementById(settingsJump.dataset.settingsJump||\"\");document.querySelectorAll(\".orbit-settings-focus\").forEach(function(node){node.classList.remove(\"orbit-settings-focus\")}),anchor&&setSettingsPane(anchor.id,{scroll:!0})}const integrationRefresh=e.target.closest(\"[data-integration-refresh]\");if(integrationRefresh){setLoading(integrationRefresh,!0);const kind=integrationRefresh.dataset.integrationRefresh;let task;kind===\"shopify\"?task=loadShopify():kind===\"eventbrite\"?task=loadEventbrite():kind===\"resend\"?task=loadCommunications():kind===\"scheduler\"?task=Promise.all([loadBackendHealth(),loadScheduler()]):kind===\"labels\"?task=Promise.all([loadBackendHealth(),loadShippingConfig()]):task=loadBackendHealth(),Promise.resolve(task).then(function(){setNotice2(kind.charAt(0).toUpperCase()+kind.slice(1)+\" diagnostics refreshed.\")}).catch(function(err){setNotice2(\"Diagnostic failed: \"+(err.message||err),!0)}).finally(function(){setLoading(integrationRefresh,!1)})}const repair=e.target.closest(\"[data-repair-module]\");repair&&(activateModule(repair.dataset.repairModule),repair.dataset.repairDrawPane&&(setPrizeArea(\"monthly\"),setDrawPane(repair.dataset.repairDrawPane)),window.setTimeout(function(){const anchor=document.getElementById(repair.dataset.repairAnchor||\"\");anchor&&anchor.scrollIntoView({behavior:\"smooth\",block:\"start\"})},140));const homeLink=e.target.closest(\"[data-home-link-module]\");if(homeLink){const module=homeLink.dataset.homeLinkModule,tab=homeLink.dataset.homeLinkTab||\"\";activateModule(module,tab||void 0,{historyMode:\"push\"}),window.setTimeout(function(){if(module===\"members\"&&homeLink.dataset.homeMemberStatus){const status=document.getElementById(\"memberSearchStatus\");status&&(status.value=homeLink.dataset.homeMemberStatus),searchMembers(null)}module===\"shipping\"&&homeLink.dataset.homeShippingTab&&document.querySelector('[data-shipping-tab=\"'+canonicalOrbitSubtab(\"shipping\",homeLink.dataset.homeShippingTab)+'\"]')?.click(),document.querySelector(\".orbit-module.active\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"})},120)}if(!e.target.closest(\".orbit-admin-global-search\")){const b=document.getElementById(\"orbitGlobalSearchResults\");b&&(b.hidden=!0)}const taskMember=e.target.closest(\"[data-v517-task-member]\");if(taskMember){const lookup=taskMember.dataset.v517TaskMember;if(!lookup)return;activateModule(\"members\"),window.setTimeout(function(){loadMemberProfile(lookup,taskMember).catch(function(err){setNotice2(err.message||String(err),!0)})},120);return}const taskSupport=e.target.closest(\"[data-v518-task-support]\");if(taskSupport){const ticketId=taskSupport.dataset.v518TaskSupport;if(!ticketId)return;activateModule(\"support\"),window.setTimeout(function(){loadSupportInbox(null,!0).then(function(){return openSupportConversation(ticketId,taskSupport)}).catch(function(err){setNotice2(err.message||String(err),!0)})},120);return}const deliveryRepair=e.target.closest(\"[data-delivery-task-repair]\");if(deliveryRepair){const lookup=deliveryRepair.dataset.deliveryTaskRepair;if(!lookup)return;setLoading(deliveryRepair,!0),api(\"/api/admin/members/\"+encodeURIComponent(lookup)+\"/repair-address\",{method:\"POST\",body:JSON.stringify({source:\"all\"})}).then(function(result){return result.afterComplete?setNotice2(\"Delivery address validated. The task will clear automatically.\"):setNotice2(\"No complete delivery address was found. Open the member profile to review or edit it.\",!0),refreshOperationsWorkspaceV296()}).catch(function(err){setNotice2(err.message||String(err),!0)}).finally(function(){setLoading(deliveryRepair,!1)});return}const dismiss=e.target.closest(\"[data-dismiss-operation]\");if(dismiss){dismissOperationV255(dismiss);return}const nav=e.target.closest(\"[data-v74-module]\");nav&&navigateV74(nav.dataset.v74Module,nav.dataset.v74Search)}),document.getElementById(\"refreshOperationsInbox\")?.addEventListener(\"click\",function(){refreshOperationsWorkspaceV296(this)}),[\"operationsTypeFilter\",\"operationsPriorityFilter\",\"operationsSearch\"].forEach(id=>document.getElementById(id)?.addEventListener(id===\"operationsSearch\"?\"input\":\"change\",renderOperationsV74)),document.getElementById(\"refreshMediaLibrary\")?.addEventListener(\"click\",function(){loadMediaV74(this)}),document.getElementById(\"searchMediaButton\")?.addEventListener(\"click\",function(){loadMediaV74(this)}),document.getElementById(\"uploadMediaButton\")?.addEventListener(\"click\",function(){uploadMediaV74(this)}),document.getElementById(\"mediaLibraryGrid\")?.addEventListener(\"click\",async function(e){const use=e.target.closest(\"[data-use-media-v74]\"),copy=e.target.closest(\"[data-copy-media-v74]\"),del=e.target.closest(\"[data-delete-media-v74]\"),id=(use||copy||del)?.dataset.useMediaV74||(use||copy||del)?.dataset.copyMediaV74||(use||copy||del)?.dataset.deleteMediaV74,item=mediaItemsV74.find(x=>x.id===id);if(item&&(use&&(setNewsletterHeroV74(item.url),activateModule(\"engagement\"),document.querySelector('[data-engagement-tab=\"newsletters\"]')?.click(),document.getElementById(\"newsletterResult\").textContent=\"Selected managed image: \"+item.title),copy&&(navigator.clipboard?.writeText(item.url),document.getElementById(\"mediaLibraryResult\").textContent=\"Managed image URL copied.\"),del)){if(!confirm(\"Delete this unused managed image? Orbit will block deletion if it is referenced by a newsletter or website slot.\"))return;try{await api(\"/api/admin/media/\"+encodeURIComponent(id)+\"/delete\",{method:\"POST\",body:\"{}\"}),await loadMediaV74()}catch(err){setNotice2(err.message,!0)}}}),document.getElementById(\"newsletterHeroUpload\")?.addEventListener(\"change\",async function(){const file=this.files?.[0];if(file)try{const item=await uploadMediaV74(document.getElementById(\"chooseNewsletterMediaButton\"),file);setNewsletterHeroV74(item.url),document.getElementById(\"newsletterResult\").textContent=\"Hero uploaded and selected. Save the newsletter to keep it.\"}catch{}}),document.getElementById(\"chooseNewsletterMediaButton\")?.addEventListener(\"click\",function(){activateModule(\"media\"),document.getElementById(\"mediaLibraryResult\").textContent=\"Choose Use on an image to assign it to the newsletter hero.\",loadMediaV74()}),document.getElementById(\"clearNewsletterHeroButton\")?.addEventListener(\"click\",function(){setNewsletterHeroV74(\"\")}),document.getElementById(\"newsletterHeroImageUrl\")?.addEventListener(\"input\",function(){setNewsletterHeroV74(this.value.trim())}),document.getElementById(\"ticketAdminAction\")?.addEventListener(\"change\",function(){document.getElementById(\"ticketAdminEmailWrap\").hidden=this.value!==\"recipient\",document.getElementById(\"ticketAdminTypeWrap\").hidden=this.value!==\"type\"}),document.getElementById(\"applyTicketAdminAction\")?.addEventListener(\"click\",function(){applyTicketActionV74(this)});let orbitKnowledgePages=[],orbitKnowledgeCurrent=null,orbitKnowledgeLoaded=!1;const orbitKnowledgePageCache=new Map,ORBIT_KNOWLEDGE_INDEX_STORAGE_KEY=\"orbit-intelligence-index-v124\";function readOrbitKnowledgeIndexCache(){try{const cached=JSON.parse(sessionStorage.getItem(ORBIT_KNOWLEDGE_INDEX_STORAGE_KEY)||\"null\");return!cached||!Array.isArray(cached.pages)||!cached.pages.length?[]:normaliseOrbitKnowledgePages(cached.pages)}catch{return[]}}function writeOrbitKnowledgeIndexCache(pages){try{sessionStorage.setItem(ORBIT_KNOWLEDGE_INDEX_STORAGE_KEY,JSON.stringify({savedAt:Date.now(),pages}))}catch{}}let orbitKnowledgeSearchTimer=null;function orbitMarkdown(markdown){const source=String(markdown||\"\").replace(/\\r\\n/g,`\n`),lines=esc(source).split(`\n`);let html=\"\",inList=!1,inCode=!1;function closeList(){inList&&(html+=\"</ul>\",inList=!1)}function inline(value){return value.replace(/`([^`]+)`/g,\"<code>$1</code>\").replace(/\\*\\*([^*]+)\\*\\*/g,\"<strong>$1</strong>\").replace(/\\[([^\\]]+)\\]\\(([^)]+)\\)/g,'<a href=\"$2\" target=\"_blank\" rel=\"noopener\">$1</a>')}return lines.forEach(function(line){if(line.trim().startsWith(\"```\")){closeList(),inCode?(html+=\"</code></pre>\",inCode=!1):(html+=\"<pre><code>\",inCode=!0);return}if(inCode){html+=line+`\n`;return}if(/^###\\s+/.test(line)){closeList(),html+=\"<h3>\"+inline(line.replace(/^###\\s+/,\"\"))+\"</h3>\";return}if(/^##\\s+/.test(line)){closeList(),html+=\"<h2>\"+inline(line.replace(/^##\\s+/,\"\"))+\"</h2>\";return}if(/^#\\s+/.test(line)){closeList(),html+=\"<h1>\"+inline(line.replace(/^#\\s+/,\"\"))+\"</h1>\";return}if(/^[-*]\\s+/.test(line)){inList||(html+=\"<ul>\",inList=!0),html+=\"<li>\"+inline(line.replace(/^[-*]\\s+/,\"\"))+\"</li>\";return}if(/^\\d+\\.\\s+/.test(line)){closeList(),html+=\"<p class='orbit-numbered-line'>\"+inline(line)+\"</p>\";return}if(!line.trim()){closeList();return}closeList(),html+=\"<p>\"+inline(line)+\"</p>\"}),closeList(),inCode&&(html+=\"</code></pre>\"),html}const orbitReferenceCacheV702={engineeringManual:null,incidents:null,protectedSystems:null};let orbitKnowledgeViewV702=\"handbook\";function orbitReferenceDateV702(value){if(!value)return\"Current release\";const date=new Date(value);return Number.isFinite(date.getTime())?date.toLocaleString(\"en-GB\",{dateStyle:\"medium\",timeStyle:\"short\"}):String(value)}async function loadOrbitReferenceV702(section,force=!1){const key=section===\"engineering-manual\"?\"engineeringManual\":section===\"protected-systems\"?\"protectedSystems\":\"incidents\";if(orbitReferenceCacheV702[key]&&!force)return orbitReferenceCacheV702[key];const reference=(await api(\"/api/admin/intelligence/reference/\"+encodeURIComponent(section),{cacheMs:0,timeoutMs:2e4}))?.reference||null;if(!reference)throw new Error(\"Orbit returned no \"+section.replace(/-/g,\" \")+\" data.\");return orbitReferenceCacheV702[key]=reference,reference}function setKnowledgeViewV702(view){const wanted=view===\"engineering-manual\"?\"engineering-manual\":\"handbook\";orbitKnowledgeViewV702=wanted,document.querySelectorAll(\"[data-reference-knowledge-view-v702]\").forEach(node=>{node.hidden=node.dataset.referenceKnowledgeViewV702!==wanted}),document.querySelectorAll(\"[data-reference-knowledge-open-v702]\").forEach(button2=>{const active=button2.dataset.referenceKnowledgeOpenV702===wanted;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active))});try{sessionStorage.setItem(\"orbit-knowledge-view-v702\",wanted)}catch{}state.adminAuthenticated&&(wanted===\"engineering-manual\"?loadEngineeringManualV702(!1).catch(err=>renderReferenceErrorV702(\"orbitEngineeringManualArticleV702\",err)):loadOrbitIntelligence().catch(renderOrbitIntelligenceError))}function renderReferenceErrorV702(id,error){const target=$2(id);target&&(target.innerHTML=`<div class=\"orbit-reference-empty-v702 is-error\"><strong>Could not load this reference</strong><span>${esc(error?.message||String(error))}</span></div>`)}function renderEngineeringManualV702(reference,query=\"\"){const article=$2(\"orbitEngineeringManualArticleV702\"),nav=$2(\"orbitEngineeringManualNavV702\"),summary=$2(\"orbitEngineeringManualSummaryV702\"),updated=$2(\"orbitEngineeringManualUpdatedV702\"),title=$2(\"orbitEngineeringManualTitleV702\");if(title&&(title.textContent=reference.title||\"Engineering Manual\"),summary&&(summary.textContent=`${reference.summary||\"Protected engineering reference.\"} ${Number(reference.sectionCount||0).toLocaleString(\"en-GB\")} sections \\xB7 ${Number(reference.wordCount||0).toLocaleString(\"en-GB\")} words.`),updated&&(updated.textContent=\"Updated \"+orbitReferenceDateV702(reference.updatedAt)),article&&(article.innerHTML=orbitMarkdown(reference.markdown||\"\"),Array.from(article.querySelectorAll(\"h1,h2,h3\")).forEach((heading,index)=>{heading.id=\"orbit-engineering-heading-v702-\"+index})),nav){const q=String(query||\"\").trim().toLowerCase(),sections=(reference.sections||[]).map((section,index)=>({...section,index})).filter(section=>!q||`${section.title} ${section.summary}`.toLowerCase().includes(q));nav.innerHTML=sections.length?sections.map(section=>`<button type=\"button\" data-engineering-heading-v702=\"${section.index}\" class=\"level-${Number(section.level||2)}\"><strong>${esc(section.title)}</strong>${section.summary?`<span>${esc(section.summary)}</span>`:\"\"}</button>`).join(\"\"):'<div class=\"orbit-reference-empty-v702\"><strong>No matching manual sections</strong><span>Try a different search term.</span></div>'}}async function loadEngineeringManualV702(force=!1){const reference=await loadOrbitReferenceV702(\"engineering-manual\",force);return renderEngineeringManualV702(reference,$2(\"orbitEngineeringManualSearchV702\")?.value||\"\"),reference}function incidentStateV702(status){const value=String(status||\"recorded\").toLowerCase();return[\"open\",\"monitoring\"].includes(value)?\"attention\":\"settled\"}function renderIncidentMetricsV702(reference){const target=$2(\"orbitIncidentMetricsV702\"),c=reference.counts||{};target&&(target.innerHTML=`<article><small>Recorded incidents</small><strong>${Number(c.total||0).toLocaleString(\"en-GB\")}</strong><span>Across the retained engineering record</span></article><article><small>Open / monitoring</small><strong>${Number(c.openOrMonitoring||0).toLocaleString(\"en-GB\")}</strong><span>Worth checking again</span></article><article><small>Deployment incidents</small><strong>${Number(c.deployment||0).toLocaleString(\"en-GB\")}</strong><span>Captured by deployment forensics</span></article><article><small>Engineering log</small><strong>${Number(c.engineeringLog||0).toLocaleString(\"en-GB\")}</strong><span>Historical lessons and recoveries</span></article>`)}function incidentDetailRowV702(label,value){return value?`<section><h4>${esc(label)}</h4><p>${esc(value)}</p></section>`:\"\"}function renderIncidentsV702(){const reference=orbitReferenceCacheV702.incidents;if(!reference)return;renderIncidentMetricsV702(reference);const q=String($2(\"orbitIncidentSearchV702\")?.value||\"\").trim().toLowerCase(),filter=$2(\"orbitIncidentStatusV702\")?.value||\"all\";let rows=Array.isArray(reference.incidents)?reference.incidents:[];rows=rows.filter(row=>{const stateValue=incidentStateV702(row.status);return filter===\"open\"&&stateValue!==\"attention\"||filter===\"recorded\"&&stateValue!==\"settled\"?!1:q?[row.title,row.version,row.affectedArea,row.symptom,row.rootCause,row.resolution,row.lessons,row.regressionProtection].join(\" \").toLowerCase().includes(q):!0});const count=$2(\"orbitIncidentResultCountV702\");count&&(count.textContent=`${rows.length.toLocaleString(\"en-GB\")} shown`);const target=$2(\"orbitIncidentListV702\");if(target){if(!rows.length){target.innerHTML='<div class=\"orbit-reference-empty-v702\"><strong>No incidents match that filter</strong><span>Clear the search or show all statuses.</span></div>';return}target.innerHTML=rows.map((row,index)=>{const stateValue=incidentStateV702(row.status),badge=stateValue===\"attention\"?\"Open / monitoring\":\"Recorded\",date=row.date?orbitReferenceDateV702(row.date):\"Date not recorded\";return`<details class=\"orbit-incident-card-v702\"${index===0&&stateValue===\"attention\"?\" open\":\"\"}><summary><div class=\"orbit-reference-card-icon-v702\">${stateValue===\"attention\"?\"!\":\"\\u2713\"}</div><div class=\"orbit-reference-card-title-v702\"><div><span class=\"orbit-reference-status-v702 ${stateValue}\">${badge}</span>${row.version?`<span class=\"orbit-reference-version-v702\">${esc(row.version)}</span>`:\"\"}</div><strong>${esc(row.title||\"Recorded incident\")}</strong><small>${esc(date)} \\xB7 ${esc(row.affectedArea||row.source||\"Orbit OS\")}</small></div><span class=\"orbit-reference-chevron-v702\">\\u2304</span></summary><div class=\"orbit-incident-detail-v702\">${incidentDetailRowV702(\"What happened\",row.symptom)}${incidentDetailRowV702(\"Root cause\",row.rootCause)}${incidentDetailRowV702(\"Recovery / resolution\",row.resolution)}${incidentDetailRowV702(\"Lessons learned\",row.lessons)}${incidentDetailRowV702(\"Regression protection\",row.regressionProtection)}<footer>${esc(row.source||\"Incident record\")}${row.deploymentId?` \\xB7 ${esc(row.deploymentId)}`:\"\"}</footer></div></details>`}).join(\"\")}}async function loadOrbitIncidentsV702(force=!1){const reference=await loadOrbitReferenceV702(\"incidents\",force);return renderIncidentsV702(),reference}function protectionDocumentTitleV702(file){return String(file||\"\").replace(/^PROTECTED_/,\"\").replace(/\\.md$/i,\"\").replace(/_/g,\" \").replace(/\\b\\w/g,c=>c.toUpperCase())}function renderProtectedSystemsV702(reference){const c=reference.counts||{},metrics=$2(\"orbitProtectedMetricsV702\");metrics&&(metrics.innerHTML=`<article><small>Core protected systems</small><strong>${Number(c.registry||0)}</strong><span>Explicit mandatory proof rules</span></article><article><small>Protection manuals</small><strong>${Number(c.protectionDocuments||0)}</strong><span>Detailed guardrails available here</span></article><article><small>Specialist protections</small><strong>${Number(c.specialistProtections||0)}</strong><span>Domain-specific safety rules</span></article><article><small>Visible gaps</small><strong>${Number(c.visibleGaps||0)}</strong><span>${Number(c.visibleGaps||0)?\"Review these mappings\":\"No current mapping gaps\"}</span></article>`);const gaps=$2(\"orbitProtectedGapsV702\"),gapRows=Array.isArray(reference.gaps)?reference.gaps:[];gaps&&(gaps.hidden=!gapRows.length,gaps.innerHTML=gapRows.length?`<strong>\\u26A0 ${gapRows.length} protection documentation gap${gapRows.length===1?\"\":\"s\"}</strong>${gapRows.map(g=>`<span><b>${esc(g.title)}</b> \\u2014 ${esc(g.detail)}</span>`).join(\"\")}`:\"\");const systems=$2(\"orbitProtectedSystemListV702\");systems&&(systems.innerHTML=(reference.systems||[]).map(system=>`<article class=\"orbit-protected-system-card-v702\"><header><span class=\"orbit-reference-status-v702 ${system.documented?\"settled\":\"attention\"}\">${system.documented?\"Protected\":\"Check mapping\"}</span><strong>${esc(system.name)}</strong></header><p>${esc(system.requiredProof||\"Protected proof rule not described.\")}</p><footer>${(system.documentation||[]).length?(system.documentation||[]).map(file=>`<span>\\u{1F4C4} ${esc(protectionDocumentTitleV702(file))}</span>`).join(\"\"):\"No dedicated manual mapped\"}</footer></article>`).join(\"\")||'<div class=\"orbit-reference-empty-v702\"><strong>No protected registry records found</strong></div>');const docs=$2(\"orbitProtectedDocumentListV702\");docs&&(docs.innerHTML=(reference.documents||[]).map(doc=>`<details class=\"orbit-protected-doc-v702\"><summary><div class=\"orbit-reference-card-icon-v702\">\\u{1F6E1}</div><div><strong>${esc(doc.title)}</strong><span>${esc(doc.summary||\"Protected system rules\")}</span><small>${esc(doc.file)} \\xB7 ${esc(orbitReferenceDateV702(doc.updatedAt))}</small></div><span class=\"orbit-reference-chevron-v702\">\\u2304</span></summary><article class=\"orbit-markdown orbit-reference-markdown-v702\">${orbitMarkdown(doc.markdown||\"\")}</article></details>`).join(\"\"))}async function loadProtectedSystemsV702(force=!1){const reference=await loadOrbitReferenceV702(\"protected-systems\",force);return renderProtectedSystemsV702(reference),reference}function orbitIntelligenceBriefMarkdownV552(markdown){let readable=String(markdown||\"\").replace(/\\r\\n?/g,`\n`);return readable=readable.replace(/([^\\n])\\s+(#{2,3}\\s+)/g,`$1\n\n$2`),readable=readable.replace(/\\*\\*([^*\\n]{55,})\\*\\*/g,function(_,body){return body.trim()}),readable=readable.split(`\n`).map(function(line){const trimmed=line.trim(),match=trimmed.match(/^\\*\\*(.+)\\*\\*$/);return!match||match[1].trim().length<36?line:line.slice(0,line.indexOf(trimmed))+match[1].trim()}).join(`\n`),orbitMarkdown(readable)}const orbitIntelligenceBriefMarkdownV549=orbitIntelligenceBriefMarkdownV552,orbitKnowledgeCollapsed=new Set;let orbitKnowledgeCollapseInitialised=!1;function initialiseOrbitKnowledgeCollapse(pages){orbitKnowledgeCollapseInitialised||(orbitKnowledgeCollapsed.clear(),Object.keys(groupOrbitKnowledgePages(pages)).forEach(function(category){orbitKnowledgeCollapsed.add(category)}),orbitKnowledgeCollapseInitialised=!0)}function normaliseOrbitKnowledgePages(pages){const seen=new Set,clean=[];return(Array.isArray(pages)?pages:[]).forEach(function(source){if(!source||typeof source!=\"object\")return;const slug=String(source.slug||\"\").trim(),title=String(source.title||\"\").trim();if(!slug||!title||seen.has(slug))return;seen.add(slug);const page={...source,slug,title,category:String(source.category||\"Other\").trim()||\"Other\",summary:String(source.summary||\"\"),order:Number.isFinite(Number(source.order))?Number(source.order):9999};Object.prototype.hasOwnProperty.call(source,\"content\")&&(page.content=String(source.content||\"\")),clean.push(page)}),clean}function groupOrbitKnowledgePages(pages){const groups={};return normaliseOrbitKnowledgePages(pages).forEach(function(page){(groups[page.category]||=[]).push(page)}),groups}function orbitCategoryIcon(category){return{\"Start Here\":\"\\u25CE\",\"White Paper\":\"\\u25A4\",Architecture:\"\\u25C7\",\"Business Rules\":\"\\u25A6\",Operations:\"\\u2197\",\"Platform Guides\":\"\\u25A3\",\"Customer Experience\":\"\\u2661\",\"Technical Reference\":\"\\u2318\",Engineering:\"\\u2699\",Governance:\"\\u2713\",\"Release Operations\":\"\\u21E7\",\"Orbit Intelligence\":\"\\u2726\",\"Business Decisions\":\"\\u25C6\",\"Admin Playbooks\":\"\\u2611\"}[category]||\"\\u2022\"}function renderOrbitKnowledgeNav(pages){const target=document.getElementById(\"orbitKnowledgeNav\");if(!target)return;const count=document.getElementById(\"orbitKnowledgeCount\");if(count&&(count.textContent=pages.length+\" approved page\"+(pages.length===1?\"\":\"s\")),!pages.length){target.innerHTML=\"<p class='orbit-muted orbit-knowledge-empty'>No matching chapters.</p>\";return}const groups=groupOrbitKnowledgePages(pages);target.innerHTML=Object.keys(groups).map(function(category){const categoryId=\"orbit-cat-\"+category.toLowerCase().replace(/[^a-z0-9]+/g,\"-\"),collapsed=orbitKnowledgeCollapsed.has(category);return\"<section class='orbit-knowledge-group \"+(collapsed?\"is-collapsed\":\"\")+\"' data-orbit-category='\"+esc(category)+\"'><button type='button' class='orbit-knowledge-group-toggle' aria-expanded='\"+!collapsed+\"' aria-controls='\"+categoryId+\"'><span class='orbit-knowledge-group-icon'>\"+orbitCategoryIcon(category)+\"</span><strong>\"+esc(category)+\"</strong><span class='orbit-knowledge-group-count'>\"+groups[category].length+\"</span><span class='orbit-knowledge-chevron'>\\u2304</span></button><div class='orbit-knowledge-group-pages' id='\"+categoryId+\"'>\"+groups[category].map(function(page){return\"<button type='button' class='orbit-knowledge-page \"+(orbitKnowledgeCurrent?.slug===page.slug?\"active\":\"\")+\"' data-orbit-page='\"+esc(page.slug)+\"'><span>\"+esc(page.title)+\"</span><small>\"+esc(page.summary||\"\")+\"</small></button>\"}).join(\"\")+\"</div></section>\"}).join(\"\")}function relatedOrbitKnowledgePages(page){if(!page)return[];const words=(page.title+\" \"+page.summary).toLowerCase().split(/[^a-z0-9\u00A3]+/).filter(word=>word.length>4);return normaliseOrbitKnowledgePages(orbitKnowledgePages).filter(candidate=>candidate.slug!==page.slug).map(candidate=>{let score=candidate.category===page.category?4:0;const haystack=(candidate.title+\" \"+candidate.summary).toLowerCase();return words.forEach(word=>{haystack.includes(word)&&(score+=1)}),{candidate,score}}).filter(item=>item.score>0).sort((a,b)=>b.score-a.score||a.candidate.order-b.candidate.order).slice(0,4).map(item=>item.candidate)}function renderOrbitRelatedPages(page){const related=relatedOrbitKnowledgePages(page);return related.length?\"<nav class='orbit-related-pages' aria-label='Related handbook pages'><h2>Related pages</h2><div>\"+related.map(item=>\"<button type='button' data-orbit-page='\"+esc(item.slug)+\"'><strong>\"+esc(item.title)+\"</strong><span>\"+esc(item.summary||item.category)+\"</span></button>\").join(\"\")+\"</div></nav>\":\"\"}async function fetchOrbitKnowledgePage(slug){const key=String(slug||\"\").trim();if(!key)return null;if(orbitKnowledgePageCache.has(key))return orbitKnowledgePageCache.get(key);const request=api(\"/api/admin/intelligence/pages/\"+encodeURIComponent(key)).then(data=>data.page).catch(err=>{throw orbitKnowledgePageCache.delete(key),err});orbitKnowledgePageCache.set(key,request);const page=await request;return orbitKnowledgePageCache.set(key,page),page}async function showOrbitKnowledgePage(page){if(!page||typeof page!=\"object\"||!String(page.slug||\"\").trim()){const fallback=normaliseOrbitKnowledgePages(orbitKnowledgePages)[0];if(!fallback)return;page=fallback}const metadata=page;orbitKnowledgeCurrent=metadata;const category=document.getElementById(\"orbitKnowledgeCategory\"),title=document.getElementById(\"orbitKnowledgeTitle\"),summary=document.getElementById(\"orbitKnowledgeSummary\"),article=document.getElementById(\"orbitKnowledgeArticle\"),edit=document.getElementById(\"editOrbitKnowledgeButton\");category&&(category.textContent=metadata.category||\"Knowledge Base\"),title&&(title.textContent=metadata.title||\"Untitled\"),summary&&(summary.textContent=metadata.summary||\"\");const updated=document.getElementById(\"orbitKnowledgeUpdated\");updated&&(updated.textContent=metadata.updatedAt?\"Updated \"+new Date(metadata.updatedAt).toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"short\",year:\"numeric\"}):\"Built-in reference\"),article&&(article.innerHTML=\"<div class='orbit-knowledge-loading' role='status'>Loading chapter\\u2026</div>\"),edit&&(edit.hidden=!0),document.querySelectorAll(\"#orbitKnowledgeNav .orbit-knowledge-page\").forEach(function(button2){const active=button2.dataset.orbitPage===metadata.slug;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-current\",active?\"page\":\"false\")});try{const fullPage=metadata.content!==void 0?metadata:await fetchOrbitKnowledgePage(metadata.slug);if(!fullPage||orbitKnowledgeCurrent?.slug!==metadata.slug)return;orbitKnowledgeCurrent=fullPage,article&&(article.innerHTML=orbitMarkdown(fullPage.content||\"\")+renderOrbitRelatedPages(fullPage)),edit&&(edit.hidden=!1);const index=orbitKnowledgePages.findIndex(item=>item.slug===fullPage.slug);index>=0&&(orbitKnowledgePages[index]={...orbitKnowledgePages[index],...fullPage});const next=orbitKnowledgePages[index+1];if(next&&!orbitKnowledgePageCache.has(next.slug)){const prefetch=()=>fetchOrbitKnowledgePage(next.slug).catch(()=>{});\"requestIdleCallback\"in window?window.requestIdleCallback(prefetch,{timeout:1800}):setTimeout(prefetch,900)}}catch(err){article&&(article.innerHTML=\"<p class='error'>Could not load this handbook page: \"+esc(err.message||err)+\"</p>\")}}function buildOrbitKnowledgeExport(pages,heading,instruction){const sections=(pages||[]).map(function(page){return\"# \"+page.title+`\n\nCategory: `+(page.category||\"Knowledge Base\")+`\nSummary: `+(page.summary||\"\")+`\n\n`+(page.content||\"\")});return[\"# \"+heading,\"\",instruction||\"\",\"\"].concat(sections).join(`\n\n---\n\n`)}async function copyOrbitText(text2,successMessage){await navigator.clipboard.writeText(text2),setNotice2(successMessage||\"Copied to clipboard.\")}async function copyOrbitActivePage(){orbitKnowledgeCurrent&&await copyOrbitText(buildOrbitKnowledgeExport([orbitKnowledgeCurrent],\"ORBIT OS \\u2014 ACTIVE HANDBOOK PAGE\",\"Use this approved page as reference. Verify implemented behaviour against current supplied source files.\"),\"Active handbook page copied.\")}async function copyOrbitCompleteHandbook(){const button2=document.getElementById(\"copyOrbitCompleteHandbookButton\"),original=button2?.textContent;button2&&(button2.disabled=!0,button2.textContent=\"Loading handbook\\u2026\");try{const metadata=normaliseOrbitKnowledgePages(orbitKnowledgePages),fullPages=(await Promise.all(metadata.map(page=>fetchOrbitKnowledgePage(page.slug)))).filter(Boolean);await copyOrbitText(buildOrbitKnowledgeExport(fullPages,\"ORBIT OS \\u2014 COMPLETE APPROVED HANDBOOK\",\"Treat this export as operating context. Current supplied live source files remain authoritative for implemented behaviour. Do not guess unseen code.\"),\"Complete approved handbook copied.\")}finally{button2&&(button2.disabled=!1,button2.textContent=original||\"Copy full handbook\")}}async function loadOrbitIntelligence(force){if(orbitKnowledgeLoaded&&!force){const existing=normaliseOrbitKnowledgePages(orbitKnowledgePages);orbitKnowledgePages=existing,!orbitKnowledgeCurrent&&existing[0]&&await showOrbitKnowledgePage(existing[0]);return}if(!force&&!orbitKnowledgePages.length){const cachedPages=normaliseOrbitKnowledgePages(readOrbitKnowledgeIndexCache()).sort(function(a,b){return a.order-b.order||a.title.localeCompare(b.title)});if(cachedPages.length){orbitKnowledgePages=cachedPages,initialiseOrbitKnowledgeCollapse(orbitKnowledgePages),renderOrbitKnowledgeNav(orbitKnowledgePages);const cachedPreferred=cachedPages.find(function(page){return page.content!==void 0})||cachedPages[0];cachedPreferred&&showOrbitKnowledgePage(cachedPreferred).catch(function(){})}}const data=await api(\"/api/admin/intelligence/index\"),freshPages=normaliseOrbitKnowledgePages(data&&data.pages).sort(function(a,b){return a.order-b.order||a.title.localeCompare(b.title)});if(!freshPages.length)throw new Error(\"The Knowledge Base returned no valid chapters. Refresh again or check the backend handbook index.\");orbitKnowledgePages=freshPages,writeOrbitKnowledgeIndexCache(freshPages),orbitKnowledgeLoaded=!0,initialiseOrbitKnowledgeCollapse(orbitKnowledgePages),renderOrbitKnowledgeNav(orbitKnowledgePages);const currentSlug=orbitKnowledgeCurrent&&orbitKnowledgeCurrent.slug?String(orbitKnowledgeCurrent.slug):\"\",preferred=currentSlug&&orbitKnowledgePages.find(function(p){return p.slug===currentSlug})||orbitKnowledgePages[0]||null;preferred&&(!orbitKnowledgeCurrent||orbitKnowledgeCurrent.slug!==preferred.slug||force)&&await showOrbitKnowledgePage(preferred)}function renderOrbitIntelligenceError(err){const answer=document.getElementById(\"orbitIntelligenceAnswer\"),article=document.getElementById(\"orbitKnowledgeArticle\"),message=esc(err?.message||String(err));answer&&!orbitIntelligenceConversation.length&&(answer.innerHTML=\"<p class='orbit-chat-warning-v543'>The handbook could not load. You can still ask a question; any unavailable sources will be identified.</p>\"),article&&(article.innerHTML=\"<p class='error'>Could not load the Knowledge Base: \"+message+\"</p>\")}let orbitIntelligenceConversation=[],orbitChatBusyV543=!1,orbitChatGenerationV543=0,orbitChatProgressV548=\"\";function orbitSuggestedPrompts(){return[\"How is website traffic looking?\",\"How did we do at the last show?\",\"How does Upgrade Now work in Orbit OS?\",\"What outstanding development work is still open?\"]}function setOrbitChatBusyV543(value,progress){orbitChatBusyV543=value,orbitChatProgressV548=value?String(progress||orbitChatProgressV548||\"Checking Orbit\\u2026\"):\"\";const button2=$2(\"askOrbitIntelligenceButton\");button2&&(button2.disabled=value,button2.textContent=value?\"Checking Orbit\\u2026\":\"Ask Orbit\"),$2(\"orbitIntelligenceAnswer\")?.setAttribute(\"aria-busy\",String(value)),renderOrbitConversation()}function setOrbitChatProgressV548(message){orbitChatBusyV543&&(orbitChatProgressV548=String(message||\"\"),renderOrbitConversation())}function orbitReplyModeV543(message){return message.mode===\"ai\"?\"AI reply\"+(message.model?\" \\xB7 \"+message.model:\"\"):message.mode===\"ai-partial\"?\"AI reply \\xB7 incomplete\":message.mode===\"error\"?\"Request failed\":\"Read-only fallback \\xB7 AI unavailable\"}function renderOrbitConversation(){const answer=$2(\"orbitIntelligenceAnswer\");if(answer){if(!orbitIntelligenceConversation.length){answer.innerHTML=\"<p>Ask about Orbit OS, then follow up naturally. Live records are read only; unavailable information will be identified rather than guessed.</p><div class='orbit-chat-suggestions'>\"+orbitSuggestedPrompts().map(q=>\"<button type='button' data-orbit-question='\"+esc(q)+\"'>\"+esc(q)+\"</button>\").join(\"\")+\"</div>\";return}answer.innerHTML=orbitIntelligenceConversation.map(message=>{const assistant=message.role===\"assistant\",body=assistant?orbitMarkdown(message.content):\"<p>\"+esc(message.content)+\"</p>\",citations=(message.citations||[]).filter(c=>c&&c.slug&&c.title).slice(0,5).map(c=>\"<button type='button' data-orbit-page='\"+esc(c.slug)+\"'>\"+esc(c.title)+\"</button>\").join(\"\"),sources=(message.sourceStatus||[]).slice(0,12).map(source=>esc(source.label)+(source.status===\"available\"?\"\":\" (unavailable)\")).join(\" \\xB7 \"),timing=assistant&&message.timing&&typeof message.timing==\"object\"?message.timing:null,timingText=timing?(Number(timing.totalMs||0)/1e3).toFixed(1)+\"s total \\xB7 \"+esc(timing.plannerMode||\"planner\")+(Number.isFinite(Number(timing.planningMs))?\" \\xB7 plan \"+(Number(timing.planningMs)/1e3).toFixed(1)+\"s\":\"\")+(Number.isFinite(Number(timing.sourceReadMs))?\" \\xB7 sources \"+(Number(timing.sourceReadMs)/1e3).toFixed(1)+\"s\":\"\")+(Number.isFinite(Number(timing.modelMs))?\" \\xB7 answer \"+(Number(timing.modelMs)/1e3).toFixed(1)+\"s\":\"\"):\"\";return\"<article class='orbit-chat-message orbit-chat-\"+(assistant?\"assistant\":\"user\")+\"'><strong>\"+(assistant?\"Orbit\":\"You\")+\"</strong>\"+(assistant?\"<small class='orbit-chat-mode-v543'>\"+esc(orbitReplyModeV543(message))+\"</small>\":\"\")+(timingText?\"<small class='orbit-chat-timing-v548'>\"+timingText+\"</small>\":\"\")+(message.warning?\"<p class='orbit-chat-warning-v543' role='status'>\"+esc(message.warning)+\"</p>\":\"\")+\"<div>\"+body+\"</div>\"+(sources?\"<details class='orbit-chat-source-status-v543'><summary>Read-only sources supplied</summary><p>\"+sources+\"</p></details>\":\"\")+(citations?\"<div class='orbit-ai-sources'><strong>Reference pages</strong>\"+citations+\"</div>\":\"\")+\"</article>\"}).join(\"\")+(orbitChatBusyV543?\"<article class='orbit-chat-message orbit-chat-assistant orbit-chat-progress-v548' aria-live='polite'><strong>Orbit</strong><div><span class='orbit-chat-progress-dot-v548' aria-hidden='true'></span>\"+esc(orbitChatProgressV548||\"Checking Orbit\\u2026\")+\"</div></article>\":\"\"),answer.scrollTop=answer.scrollHeight}}async function askOrbitIntelligence(question){const input=$2(\"orbitIntelligenceQuestion\"),mode=$2(\"orbitIntelligenceMode\"),status=$2(\"orbitIntelligenceConnectionStateV543\"),value=String(question||input?.value||\"\").trim();if(!value||orbitChatBusyV543)return;if(value.length>6e3){setNotice2(\"Please keep each question below 6,000 characters.\",!0);return}const generation=orbitChatGenerationV543,history2=orbitIntelligenceConversation.filter(m=>m.role===\"user\"||[\"ai\",\"ai-partial\"].includes(m.mode)).slice(-40).map(m=>({role:m.role,content:m.content}));orbitIntelligenceConversation.push({role:\"user\",content:value}),renderOrbitConversation(),input&&(input.value=\"\"),setOrbitChatBusyV543(!0,\"Checking what this question needs\\u2026\");const progressTimers=[setTimeout(()=>{generation===orbitChatGenerationV543&&setOrbitChatProgressV548(\"Reading the most relevant Orbit sources\\u2026\")},1200),setTimeout(()=>{generation===orbitChatGenerationV543&&setOrbitChatProgressV548(\"Still working \\u2014 this question needs a deeper Orbit check\\u2026\")},5e3)];try{const activeWorkspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599()),contextualQuestion=`Active Admin workspace: ${businessWorkspaceConfigV599[activeWorkspace]?.label||\"Orbit OS\"}. Use this only as navigation/business context; the operator's question is:\n\n${value}`,data=await api(\"/api/admin/intelligence/ask\",{method:\"POST\",body:JSON.stringify({question:contextualQuestion,history:history2}),timeoutMs:1e5,cacheMs:0});if(generation!==orbitChatGenerationV543)return;if(typeof data.answer!=\"string\"||!data.answer.trim())throw new Error(\"No readable reply was returned. Please try again.\");orbitIntelligenceConversation.push({role:\"assistant\",content:data.answer,citations:Array.isArray(data.citations)?data.citations:[],mode:data.mode,model:data.model,warning:data.warning,sourceStatus:Array.isArray(data.sourceStatus)?data.sourceStatus:[],timing:data.timing&&typeof data.timing==\"object\"?data.timing:null}),orbitAiStatusGenerationV544++,showOrbitAiConnectionV544({connected:data.mode===\"ai\",configured:data.connectionStatus!==\"not_configured\",status:data.connectionStatus||data.mode,title:[\"ai\",\"ai-partial\"].includes(data.mode)?\"AI responded\":\"AI unavailable\",message:data.warning||orbitReplyModeV543(data),model:data.model}),renderOrbitConversation()}catch(error){if(generation!==orbitChatGenerationV543)return;orbitIntelligenceConversation.push({role:\"assistant\",mode:\"error\",content:\"That request did not complete. Your question has been restored below so you can try again.\",warning:error.message||\"Please try again.\",citations:[]}),input&&!input.value&&(input.value=value),mode&&(mode.textContent=\"Request failed. No AI answer was returned.\"),status&&(status.textContent=\"AI connection not verified\"),renderOrbitConversation()}finally{progressTimers.forEach(clearTimeout),generation===orbitChatGenerationV543&&setOrbitChatBusyV543(!1)}}function newOrbitConversationV543(){orbitChatGenerationV543++,orbitIntelligenceConversation=[],setOrbitChatBusyV543(!1),renderOrbitConversation();const input=$2(\"orbitIntelligenceQuestion\");input&&(input.value=\"\",input.focus()),setOrbitIntelligenceTab(\"assistant\")}let orbitAiStatusGenerationV544=0;function showOrbitAiConnectionV544(connection){const panel=$2(\"orbitAiConnectionPanelV544\"),setup=$2(\"orbitAiSetupV544\"),status=$2(\"orbitIntelligenceConnectionStateV543\"),mode=$2(\"orbitIntelligenceMode\"),missing=connection.status===\"not_configured\",verified=connection.connected===!0;panel&&(panel.dataset.state=verified?\"verified\":missing?\"not_configured\":connection.status||\"not_checked\"),status&&(status.textContent=connection.title||(verified?\"AI connection verified\":missing?\"AI setup required\":connection.status===\"not_checked\"?\"AI configured \\xB7 not checked\":\"AI connection needs attention\")),mode&&(mode.textContent=String(connection.message||\"The connection has not been verified.\")+(connection.model?\" Model: \"+connection.model+\".\":\"\")),setup&&(setup.hidden=verified,missing&&(setup.open=!0))}async function loadOrbitAiConfigurationV544(){const generation=++orbitAiStatusGenerationV544;try{const data=await api(\"/api/admin/intelligence/connection-status\",{cacheMs:0,timeoutMs:15e3});if(generation!==orbitAiStatusGenerationV544)return;if(!data.connection)throw new Error(\"No configuration status returned.\");showOrbitAiConnectionV544(data.connection)}catch{generation===orbitAiStatusGenerationV544&&showOrbitAiConnectionV544({status:\"status_unavailable\",message:\"Server configuration could not be read. Use Check AI connection to try again.\"})}}$2(\"checkOrbitAiConnectionV543\")?.addEventListener(\"click\",async function(){const button2=this;if(button2.disabled)return;const generation=++orbitAiStatusGenerationV544;button2.disabled=!0,button2.textContent=\"Checking AI\\u2026\",showOrbitAiConnectionV544({title:\"Checking AI connection\\u2026\",status:\"checking\",message:\"Waiting for a small test reply from the configured model. No customer information is included.\"});try{const data=await api(\"/api/admin/intelligence/connection-check\",{method:\"POST\",body:\"{}\",timeoutMs:35e3,cacheMs:0});if(generation!==orbitAiStatusGenerationV544)return;if(!data.connection)throw new Error(\"No connection result was returned.\");showOrbitAiConnectionV544(data.connection)}catch{generation===orbitAiStatusGenerationV544&&showOrbitAiConnectionV544({status:\"check_failed\",message:\"The connection check did not complete. Please try again.\"})}finally{button2.disabled=!1,button2.textContent=\"Check AI connection\"}});function openOrbitKnowledgeEditor(){if(!orbitKnowledgeCurrent)return;document.getElementById(\"orbitKnowledgeEditTitle\").value=orbitKnowledgeCurrent.title||\"\",document.getElementById(\"orbitKnowledgeEditSummary\").value=orbitKnowledgeCurrent.summary||\"\",document.getElementById(\"orbitKnowledgeEditContent\").value=orbitKnowledgeCurrent.content||\"\";const result=document.getElementById(\"orbitKnowledgeEditResult\");result&&(result.hidden=!0),document.getElementById(\"orbitKnowledgeEditDialog\")?.showModal()}async function saveOrbitKnowledgePage(){if(!orbitKnowledgeCurrent)return;const button2=document.getElementById(\"saveOrbitKnowledgeButton\"),result=document.getElementById(\"orbitKnowledgeEditResult\");button2&&(button2.disabled=!0,button2.textContent=\"Saving\\u2026\");try{const data=await api(\"/api/admin/intelligence/pages/\"+encodeURIComponent(String(orbitKnowledgeCurrent&&orbitKnowledgeCurrent.slug||\"\")),{method:\"PUT\",body:JSON.stringify({title:document.getElementById(\"orbitKnowledgeEditTitle\").value,summary:document.getElementById(\"orbitKnowledgeEditSummary\").value,content:document.getElementById(\"orbitKnowledgeEditContent\").value})});orbitKnowledgeCurrent=data.page,orbitKnowledgePageCache.set(data.page.slug,data.page),orbitKnowledgePages=orbitKnowledgePages.map(p=>p.slug===data.page.slug?{...p,...data.page}:p),showOrbitKnowledgePage(data.page),result&&(result.hidden=!1,result.classList.remove(\"error\"),result.textContent=\"Official page saved.\")}catch(err){result&&(result.hidden=!1,result.classList.add(\"error\"),result.textContent=err.message||err)}finally{button2&&(button2.disabled=!1,button2.textContent=\"Save approved page\")}}async function copyOrbitThreadBootstrap(){const button2=document.getElementById(\"copyOrbitHandoverButton\"),priority=[\"new-thread-bootstrap\",\"source-of-truth-and-release-workflow\",\"system-architecture\",\"membership-lifecycle\",\"customer-journeys\",\"admin-os\",\"acceptance-testing\",\"roadmap\",\"decision-log\",\"release-notes\"],metadata=normaliseOrbitKnowledgePages(orbitKnowledgePages).sort((a,b)=>{const ai=priority.indexOf(a.slug),bi=priority.indexOf(b.slug);return(ai<0?999:ai)-(bi<0?999:bi)||(a.order||0)-(b.order||0)});button2&&(button2.disabled=!0,button2.textContent=\"Building bootstrap\\u2026\");const sections=(await Promise.all(metadata.map(page=>fetchOrbitKnowledgePage(page.slug)))).map(function(p){return\"## \"+p.title+`\nCategory: `+p.category+`\nSummary: `+(p.summary||\"\")+`\n\n`+(p.content||\"\")}),text2=[\"# ORBIT OS \\u2014 NEW THREAD BOOTSTRAP\",\"\",\"Treat this approved Orbit Intelligence export as the operating context. The currently supplied live backend, Shopify theme and Android scanner files remain the sole source of truth for implemented behaviour. Do not guess unseen code. Use replacement-files-only delivery and preserve unrelated functionality.\",\"\"].concat(sections).join(`\n\n---\n\n`);try{await navigator.clipboard.writeText(text2),button2&&(button2.textContent=\"Bootstrap copied\",setTimeout(()=>{button2.disabled=!1,button2.textContent=\"Copy thread bootstrap\"},1800))}catch(err){button2&&(button2.disabled=!1,button2.textContent=\"Copy thread bootstrap\"),setNotice2(\"Could not copy the bootstrap: \"+(err.message||err),!0)}}document.getElementById(\"combineSpecialShipmentsButton\")?.addEventListener(\"click\",function(){combineSpecialShipments(this).catch(function(err){setNotice2(err.message,!0)})}),document.getElementById(\"orbitKnowledgeNav\")?.addEventListener(\"click\",function(event){const toggle=event.target.closest(\".orbit-knowledge-group-toggle\");if(toggle){const group=toggle.closest(\"[data-orbit-category]\"),category=group?.dataset.orbitCategory;if(category){const wasCollapsed=orbitKnowledgeCollapsed.has(category);Object.keys(groupOrbitKnowledgePages(orbitKnowledgePages)).forEach(function(name){orbitKnowledgeCollapsed.add(name)}),wasCollapsed&&orbitKnowledgeCollapsed.delete(category),renderOrbitKnowledgeNav(orbitKnowledgePages)}return}const button2=event.target.closest(\"[data-orbit-page]\");if(!button2)return;const page=normaliseOrbitKnowledgePages(orbitKnowledgePages).find(function(p){return p.slug===button2.dataset.orbitPage});page&&showOrbitKnowledgePage(page)}),document.getElementById(\"copyOrbitHandoverButton\")?.addEventListener(\"click\",copyOrbitThreadBootstrap),document.getElementById(\"copyOrbitActivePageButton\")?.addEventListener(\"click\",copyOrbitActivePage),document.getElementById(\"copyOrbitCompleteHandbookButton\")?.addEventListener(\"click\",copyOrbitCompleteHandbook),document.getElementById(\"expandOrbitKnowledgeButton\")?.addEventListener(\"click\",function(){const groups=Object.keys(groupOrbitKnowledgePages(orbitKnowledgePages));orbitKnowledgeCollapsed.size?(orbitKnowledgeCollapsed.clear(),this.textContent=\"Collapse all\"):(groups.forEach(function(name){orbitKnowledgeCollapsed.add(name)}),this.textContent=\"Expand all\"),renderOrbitKnowledgeNav(orbitKnowledgePages)});let orbitIntelligenceCommandV545=null,orbitIntelligenceCommandBusyV545=!1,orbitIntelligenceFindingsV555=[],orbitIntelligenceInvestigationsV555=[];function intelligenceDateV545(value){const time=Date.parse(value||\"\");return Number.isFinite(time)?new Date(time).toLocaleString(\"en-GB\",{dateStyle:\"medium\",timeStyle:\"short\"}):\"Not yet\"}function intelligencePermissionChipV545(value){const label=String(value||\"Read only\");return\"<span class='orbit-intelligence-chip-v545' data-permission='\"+esc(label)+\"'>\"+esc(label)+\"</span>\"}function recommendationCardV545(row,compact){if(!row)return\"\";const status=String(row.status||\"new\").toLowerCase(),permission=row.permissionLabel||row.permission||\"Read only\",op=row.operator||{},management=row.management||{},needsOperator=management.operatorActionRequired===!0,aiManaged=!needsOperator,disposition=String(management.developmentDisposition||\"deferred_pending_evidence\").toLowerCase(),recommended=String(op.recommendedDecision||\"investigate\").toLowerCase(),decisionLabel=aiManaged?{approved_for_development:\"Approved for development\",deferred_no_clear_benefit:\"Do not develop yet\",deferred_pending_evidence:\"Keep investigating internally\"}[disposition]||\"Managed internally\":{approve:\"Approve\",investigate:\"Investigate\",hold:\"Hold\",dismiss:\"Dismiss\"}[recommended]||\"Investigate\",evidence=(row.evidence||[]).slice(0,compact?3:10).map(item=>\"<li><strong>\"+esc(item.label||\"Evidence\")+\":</strong> \"+esc(item.value||\"\")+\"</li>\").join(\"\"),security=row.securityDossier&&typeof row.securityDossier==\"object\"?row.securityDossier:null,securityTests=security&&Array.isArray(security.securityTests)?security.securityTests.slice(0,8):[],securityEvidence=security&&!compact?\"<div class='orbit-intelligence-security-evidence-v551'><p><strong>Security review:</strong> \"+esc([security.cwe,security.category].filter(Boolean).join(\" \\xB7 \")||\"Application security\")+\"</p>\"+(security.exploitability?\"<p><strong>Exploitability:</strong> \"+esc(security.exploitability)+\"</p>\":\"\")+(security.falsePositiveConfidence?\"<p><strong>False-positive confidence:</strong> \"+esc(security.falsePositiveConfidence)+\"</p>\":\"\")+(security.file?\"<p><strong>Source:</strong> <code>\"+esc(security.file)+(security.line?\":\"+esc(security.line):\"\")+\"</code></p>\":\"\")+(securityTests.length?\"<p><strong>Security tests:</strong></p><ul>\"+securityTests.map(test=>\"<li>\"+esc(test)+\"</li>\").join(\"\")+\"</ul>\":\"\")+\"</div>\":\"\",investigatedNotes=Array.isArray(row.investigation?.evidence?.relatedNotes)?row.investigation.evidence.relatedNotes:[],investigationNotes=investigatedNotes.length?\"<div class='orbit-intelligence-investigation-notes-v546'><strong>Development Notes checked</strong><ul>\"+investigatedNotes.slice(0,12).map(note=>\"<li><code>\"+esc(note.id||\"\")+\"</code> \"+esc(note.title||\"Untitled note\")+(note.status?\" <span>\\xB7 \"+esc(note.status)+\"</span>\":\"\")+\"</li>\").join(\"\")+\"</ul></div>\":\"\",investigation=row.investigation&&row.investigation.state===\"completed\"?\"<section class='orbit-intelligence-investigation-v546'><div class='orbit-intelligence-investigation-head-v546'><strong>Investigation complete</strong><span>\"+esc(row.investigation.mode===\"ai\"?row.investigation.model||\"AI analysis\":\"Evidence review\")+\" \\xB7 read only</span></div><p>\"+esc(row.investigation.summary||\"\").replace(/\\n/g,\"<br>\")+\"</p>\"+investigationNotes+\"</section>\":\"\";let actions=\"\";needsOperator&&(status===\"dismissed\"?actions=\"<button type='button' class='secondary' data-intelligence-rec-action-v545='reopen' data-intelligence-rec-id-v545='\"+esc(row._id||row.id)+\"'>Reopen</button>\":actions=[status!==\"approved\"?\"<button type='button' class='orbit-intelligence-approve-v546' data-intelligence-rec-action-v545='approve' data-intelligence-rec-id-v545='\"+esc(row._id||row.id)+\"'>Approve for future development</button>\":\"\",status!==\"investigate\"?\"<button type='button' class='secondary' data-intelligence-rec-action-v545='investigate' data-intelligence-rec-id-v545='\"+esc(row._id||row.id)+\"'>Investigate first</button>\":\"\",status!==\"held\"?\"<button type='button' class='secondary' data-intelligence-rec-action-v545='hold' data-intelligence-rec-id-v545='\"+esc(row._id||row.id)+\"'>Hold</button>\":\"\",\"<button type='button' class='secondary' data-intelligence-rec-action-v545='dismiss' data-intelligence-rec-id-v545='\"+esc(row._id||row.id)+\"'>Dismiss</button>\",status!==\"new\"?\"<button type='button' class='secondary' data-intelligence-rec-action-v545='reopen' data-intelligence-rec-id-v545='\"+esc(row._id||row.id)+\"'>Return to needs decision</button>\":\"\"].filter(Boolean).join(\"\"));const plain=compact?\"<p class='orbit-intelligence-rec-summary-v545'>\"+esc(op.whatThisMeans||row.summary||\"\")+\"</p>\":\"<div class='orbit-intelligence-plain-v546'><section><strong>What this means</strong><p>\"+esc(op.whatThisMeans||row.summary||\"\")+\"</p></section><section><strong>Why it matters</strong><p>\"+esc(op.whyItMatters||\"Worth reviewing before deciding whether anything should change.\")+\"</p></section><section class='orbit-intelligence-recommended-v546'><strong>\"+esc(aiManaged?\"Orbit decision: \":\"Recommended action: \")+esc(decisionLabel)+\"</strong><p>\"+esc(aiManaged?management.benefitAssessment||management.reason||\"Orbit Intelligence will keep this technical finding internal unless the evidence shows a genuine system benefit.\":op.recommendedAction||row.recommendation||\"Review the evidence before deciding.\")+\"</p>\"+(!aiManaged&&op.decisionReason?\"<small>\"+esc(op.decisionReason)+\"</small>\":\"\")+\"</section></div>\";return\"<article class='orbit-intelligence-recommendation-v545' data-severity='\"+esc(row.severity||\"medium\")+\"'><div class='orbit-intelligence-rec-meta-v545'><span class='orbit-intelligence-chip-v545'>\"+esc(String(row.severity||\"medium\").toUpperCase())+\"</span><span class='orbit-intelligence-chip-v545'>\"+esc(String(row.confidence||\"medium\")+\" confidence\")+\"</span><span class='orbit-intelligence-chip-v545 orbit-intelligence-source-chip-v556'>Produced by: \"+esc(row.agentName||row.agentId||row.sourceAgent||\"Orbit Intelligence\")+\"</span>\"+intelligencePermissionChipV545(permission)+\"<span class='orbit-intelligence-chip-v545'>\"+esc(status)+\"</span>\"+(aiManaged?\"<span class='orbit-intelligence-chip-v545 orbit-intelligence-recommended-chip-v546'>Orbit decision \\xB7 \"+esc(decisionLabel)+\"</span>\":needsOperator?\"<span class='orbit-intelligence-chip-v545 orbit-intelligence-recommended-chip-v546'>Needs Mark</span>\":\"\")+\"</div><h5>\"+esc(row.title||\"Intelligence finding\")+\"</h5>\"+plain+investigation+(!compact&&(evidence||row.summary||row.recommendation||securityEvidence)?\"<details class='orbit-intelligence-rec-evidence-v545'><summary>Technical evidence</summary>\"+(row.summary?\"<p><strong>Engineering summary:</strong> \"+esc(row.summary)+\"</p>\":\"\")+(row.recommendation?\"<p><strong>Engineering next step:</strong> \"+esc(row.recommendation)+\"</p>\":\"\")+securityEvidence+(evidence?\"<ul>\"+evidence+\"</ul>\":\"\")+\"</details>\":\"\")+(compact?\"\":\"<div class='orbit-intelligence-rec-actions-v545'><button type='button' class='secondary' data-intelligence-ask-rec-v545='\"+esc(row._id||row.id)+\"' data-intelligence-ask-title-v545='\"+esc(row.title||\"Intelligence finding\")+\"'>Ask Orbit about this</button>\"+(aiManaged?\"<span class='orbit-muted'>Orbit Intelligence owns this technical decision. Development is approved only when the evidence shows a genuine benefit; otherwise it is deferred or investigated internally. No operator approval is required.</span>\":actions)+\"</div>\")+\"</article>\"}function intelligenceExecutionLabelV555(value){return{event_driven:\"Continuous / event-driven\",scheduled_lightweight:\"Scheduled lightweight\",batch_night_shift:\"Batch / Night Shift\",on_demand:\"On demand\"}[String(value||\"\")]||String(value||\"Scheduled\")}function intelligenceScheduleLabelV557(row){return row?row.scheduleType===\"nightly\"?row.label||\"Night Shift\":row.scheduleType===\"coordinator\"?row.label||\"Always on\":row.scheduleType===\"interval\"?row.label||\"Every \"+Number(row.intervalMinutes||0)+\" min\":row.scheduleType===\"blocked\"?row.label||\"Blocked\":row.label||\"On demand\":\"Not scheduled\"}function intelligenceCadenceOptionsV557(agent){const schedule=agent?.orchestration||{},min=Number(agent?.orchestrationDefault?.minIntervalMinutes||schedule.minIntervalMinutes||15),selected=Number(schedule.intervalMinutes||0),presets=[15,30,60,120,360,720,1440];return[\"interval\"].includes(schedule.scheduleType)?\"<select class='orbit-intelligence-cadence-v557' data-intelligence-cadence-v557='\"+esc(agent.id)+\"' aria-label='Cadence for \"+esc(agent.name||agent.id)+\"'>\"+presets.filter(x=>x>=min).map(x=>\"<option value='\"+x+\"' \"+(x===selected?\"selected\":\"\")+\">\"+(x<60?x+\" min\":x===60?\"1 hour\":x<1440?x/60+\" hours\":\"Daily\")+\"</option>\").join(\"\")+\"</select>\":\"\"}function intelligenceAgentVisibleInWorkspaceV5991(agent){const workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599());return workspace===\"development\"||String(agent?.workspace||\"\")===workspace}function intelligenceAgentWorkspaceRankV644(agent){return{directory:0,\"card-shows\":1,\"members-club\":2,development:3}[String(agent?.workspace||\"\")]??9}function intelligenceAgentWorkspaceLabelV644(agent){return{directory:\"Directory\",\"card-shows\":\"Card Shows\",\"members-club\":\"Members Club\",development:\"Development\"}[String(agent?.workspace||\"\")]||\"Other\"}function intelligenceAgentGroupHeaderV644(agent,previous){return canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())!==\"development\"||String(previous?.workspace||\"\")===String(agent?.workspace||\"\")?\"\":\"<div class='orbit-intelligence-agent-workspace-v644'><strong>\"+esc(intelligenceAgentWorkspaceLabelV644(agent))+\"</strong><span>\"+esc(String(agent?.workspace||\"\"))+\" agents</span></div>\"}function filteredIntelligenceAgentsV577(agents){const all=Array.isArray(agents)?agents:[],automatic=all.filter(agent=>agent?.orchestration?.automatic===!0&&intelligenceAgentVisibleInWorkspaceV5991(agent)),q=String($2(\"intelligenceAgentSearchV555\")?.value||\"\").trim().toLowerCase(),family=String($2(\"intelligenceAgentFamilyV555\")?.value||\"\"),permission=String($2(\"intelligenceAgentPermissionV555\")?.value||\"\"),execution=String($2(\"intelligenceAgentExecutionV555\")?.value||\"\");return automatic.filter(agent=>{const profile=agent.permissionProfile||{},policy=agent.executionPolicy||{},schedule=agent.orchestration||{},hay=[agent.name,agent.id,agent.area,agent.description,policy.trigger,policy.cadence,schedule.label].filter(Boolean).join(\" \").toLowerCase();return(!q||hay.includes(q))&&(!family||String(agent?.family?.id||\"\")===family)&&(!permission||String(profile.stage||\"\")===permission)&&(!execution||String(policy.executionClass||\"\")===execution)}).sort((a,b)=>intelligenceAgentWorkspaceRankV644(a)-intelligenceAgentWorkspaceRankV644(b)||String(a.name||a.id||\"\").localeCompare(String(b.name||b.id||\"\")))}function toggleIntelligenceDiagnosticsCustomV577(){const custom=String($2(\"intelligenceDiagnosticsRangeV577\")?.value||\"168\")===\"custom\",fromWrap=$2(\"intelligenceDiagnosticsFromWrapV577\"),toWrap=$2(\"intelligenceDiagnosticsToWrapV577\");fromWrap&&(fromWrap.hidden=!custom),toWrap&&(toWrap.hidden=!custom)}function intelligenceDiagnosticsIsoDateV577(value,end=!1){return value?`${value}T${end?\"23:59:59.999\":\"00:00:00.000\"}Z`:\"\"}function exportIntelligenceDiagnosticsV577(){const button2=$2(\"exportIntelligenceDiagnosticsV577\"),range=String($2(\"intelligenceDiagnosticsRangeV577\")?.value||\"168\"),format=String($2(\"intelligenceDiagnosticsFormatV577\")?.value||\"zip\"),params2=new URLSearchParams({format});if(range===\"custom\"){const from=intelligenceDiagnosticsIsoDateV577($2(\"intelligenceDiagnosticsFromV577\")?.value,!1),to=intelligenceDiagnosticsIsoDateV577($2(\"intelligenceDiagnosticsToV577\")?.value,!0);if(!from||!to){setNotice2(\"Choose both From and To dates for a custom diagnostics export.\",!0);return}params2.set(\"from\",from),params2.set(\"to\",to)}else params2.set(\"hours\",range);const filtered=filteredIntelligenceAgentsV577(orbitIntelligenceCommandV545?.agents||[]).map(agent=>String(agent.id||\"\").trim()).filter(Boolean),filtersActive=!!(String($2(\"intelligenceAgentSearchV555\")?.value||\"\").trim()||$2(\"intelligenceAgentFamilyV555\")?.value||$2(\"intelligenceAgentPermissionV555\")?.value||$2(\"intelligenceAgentExecutionV555\")?.value);filtersActive&&params2.set(\"agentIds\",filtered.length?filtered.join(\",\"):\"__no_matching_agents__\"),button2&&(button2.disabled=!0,button2.textContent=\"Preparing\\u2026\");const href=adminDownloadUrlV73(\"/api/admin/intelligence/diagnostics/export?\"+params2.toString()),a=document.createElement(\"a\");a.href=href,a.download=\"\",a.style.display=\"none\",document.body.appendChild(a),a.click(),a.remove(),setNotice2(`Diagnostics ${format.toUpperCase()} requested${filtersActive?\" for the current agent filters\":\"\"}.`),setTimeout(()=>{button2&&(button2.disabled=!1,button2.textContent=\"Export diagnostics\")},900)}function renderIntelligenceAgentsV545(agents){const target=$2(\"intelligenceAgentGridV545\");if(!target)return;const all=(Array.isArray(agents)?agents:[]).filter(intelligenceAgentVisibleInWorkspaceV5991),automatic=all.filter(agent=>agent?.orchestration?.automatic===!0),rows=filteredIntelligenceAgentsV577(all),count=$2(\"intelligenceAgentCountV555\");if(count&&(count.textContent=`Showing ${rows.length} of ${automatic.length} automatic agent${automatic.length===1?\"\":\"s\"} \\xB7 ${all.filter(a=>a?.orchestration?.scheduleType===\"on_demand\").length} on demand`),!rows.length){target.innerHTML=\"<p class='orbit-muted'>No automatic agents match those filters.</p>\";return}target.innerHTML=\"<div class='orbit-intelligence-agent-table-head-v555 orbit-intelligence-agent-table-head-v557'><span>Agent</span><span>Area / permission</span><span>Schedule</span><span>Next run</span><span>Last run</span><span>Health</span><span>Controls</span></div>\"+rows.map((agent,index)=>{const run=agent.lastRun||null,profile=agent.permissionProfile||{},policy=agent.executionPolicy||{},cost=agent.costGuardrail||{},schedule=agent.orchestration||{},health=String(run?.healthStatus||schedule.lastStatus||\"waiting\").toLowerCase(),paused=schedule.paused===!0,blocked=agent.state!==\"live\"&&agent.id!==\"roadmap-developer\",docScore=run&&Number.isFinite(Number(run.documentationHealthScore))?` \\xB7 Docs ${Number(run.documentationHealthScore)}/100`:\"\",next=paused?\"Paused\":schedule.nextRunAt?intelligenceDateV545(schedule.nextRunAt):schedule.scheduleType===\"nightly\"?\"Next Night Shift\":\"Waiting\",controls=agent.pokeOperations?\"<div><button type='button' class='secondary' data-intelligence-agent-run-v552='\"+esc(agent.id)+\"'>Run now</button><button type='button' class='secondary' data-poke-settings-v618>Cadence &amp; cost settings</button></div>\":blocked?\"<span class='orbit-muted'>Planned</span>\":\"<div class='orbit-intelligence-agent-controls-v557'>\"+(schedule.scheduleType===\"interval\"?intelligenceCadenceOptionsV557(agent):\"\")+\"<button type='button' class='secondary' data-intelligence-schedule-action-v557='\"+esc(agent.id)+\"' data-action='\"+(paused?\"resume\":\"pause\")+\"'>\"+(paused?\"Resume\":\"Pause\")+\"</button><button type='button' class='secondary' data-intelligence-auto-run-v557='\"+esc(agent.id)+\"'>Check now</button>\"+(agent.id===\"development-agent\"?\"<button type='button' class='secondary' data-intelligence-agent-run-v552='development-agent'>Prepare with AI\\u2026</button>\":\"\")+\"</div>\";return intelligenceAgentGroupHeaderV644(agent,rows[index-1])+\"<article class='orbit-intelligence-agent-row-v555 orbit-intelligence-agent-row-v557' data-state='\"+esc(agent.state||\"planned\")+\"'><div class='orbit-intelligence-agent-name-v555'><strong>\"+esc(agent.name||agent.id)+\"</strong><small>\"+esc(agent.id||\"\")+\"</small><details><summary>What it does</summary><p>\"+esc(agent.description||\"\")+\"</p>\"+(agent.pokeOperations?\"<p>\"+esc(agent.pokeOperations.trigger||\"\")+\" \\xB7 next \"+esc(paDateV614(agent.pokeOperations.nextRunAt))+\" \\xB7 30-day cost \"+esc(agent.pokeOperations.cost30DaysUsd==null?\"open Cadence & cost settings\":paMoneyV614(agent.pokeOperations.cost30DaysUsd))+\"</p><p>\"+esc(agent.pokeOperations.attentionReason||agent.pokeOperations.summary||\"\")+\"</p>\":\"\")+\"<small>Model lane: \"+esc(policy.modelLane||agent.modelLane||\"routine\")+\" \\xB7 \"+esc(intelligenceExecutionLabelV555(policy.executionClass))+\"</small></details></div><span><strong>\"+esc(agent?.family?.label||agent.area||\"Orbit\")+\"</strong><small>\"+esc(agent.area||\"Orbit\")+\" \\xB7 \"+esc(profile.stageLabel||agent.permissionLabel||\"Read only\")+\"</small></span><span><strong>\"+esc(paused?\"Paused\":intelligenceScheduleLabelV557(schedule))+\"</strong><small>\"+esc(policy.trigger||\"\")+(cost.sharedBudgetUsd?\" \\xB7 shared 24h $\"+Number(cost.committedUsd||0).toFixed(2)+\" / $\"+Number(cost.sharedBudgetUsd).toFixed(2)+(cost.allowed===!1?cost.deterministicContinuesWhenCapped===!0?\" \\xB7 PAID AI DEFERRED \\xB7 DETERMINISTIC RUNNING\":\" \\xB7 BUDGET DEFERRED\":\"\"):\"\")+\"</small></span><span>\"+esc(next)+\"</span><span>\"+esc(run?intelligenceDateV545(run.completedAt):schedule.lastRunAt?intelligenceDateV545(schedule.lastRunAt):\"Not run yet\")+esc(docScore)+\"</span><span class='orbit-intelligence-agent-health-v555' data-health='\"+esc(health)+\"'>\"+esc(health)+\"</span><span>\"+controls+\"</span>\"+(run?.summary?\"<details class='orbit-intelligence-agent-brief-row-v555'><summary>Latest brief</summary><div class='orbit-intelligence-agent-brief-v550'>\"+orbitIntelligenceBriefMarkdownV552(run.summary)+\"</div></details>\":\"\")+\"</article>\"}).join(\"\")}function renderIntelligenceOnDemandV557(agents){const target=$2(\"intelligenceOnDemandGridV557\");if(!target)return;const all=(Array.isArray(agents)?agents:[]).filter(intelligenceAgentVisibleInWorkspaceV5991),q=String($2(\"intelligenceOnDemandSearchV557\")?.value||\"\").trim().toLowerCase(),family=String($2(\"intelligenceOnDemandFamilyV557\")?.value||\"\"),rows=all.filter(agent=>[\"on_demand\",\"blocked\"].includes(String(agent?.orchestration?.scheduleType||\"\"))).filter(agent=>{const hay=[agent.name,agent.id,agent.area,agent.description,agent?.orchestration?.whenToUse].filter(Boolean).join(\" \").toLowerCase();return(!q||hay.includes(q))&&(!family||String(agent?.family?.id||\"\")===family)}).sort((a,b)=>intelligenceAgentWorkspaceRankV644(a)-intelligenceAgentWorkspaceRankV644(b)||String(a.name||a.id||\"\").localeCompare(String(b.name||b.id||\"\"))),count=$2(\"intelligenceOnDemandCountV557\");if(count&&(count.textContent=`${rows.length} on-demand/planned agent${rows.length===1?\"\":\"s\"} \\xB7 these never self-start`),!rows.length){target.innerHTML=\"<p class='orbit-muted'>No on-demand agents match those filters.</p>\";return}target.innerHTML=\"<div class='orbit-intelligence-agent-table-head-v555 orbit-intelligence-ondemand-head-v557'><span>Agent</span><span>What it is for</span><span>Model / permission</span><span>Last run</span><span>Action</span></div>\"+rows.map((agent,index)=>{const policy=agent.executionPolicy||{},schedule=agent.orchestration||{},profile=agent.permissionProfile||{},run=agent.lastRun||null;let action=\"<span class='orbit-muted'>Not connected yet</span>\";return agent.id===\"ask-orbit\"?action=\"<button type='button' class='secondary' data-intelligence-on-demand-action-v557='assistant'>Open Ask Orbit</button>\":agent.id===\"engineering-investigator\"?action=\"<button type='button' class='secondary' data-intelligence-on-demand-action-v557='recommendations'>Open Findings</button>\":agent.id===\"creative-agent\"&&agent.state===\"live\"&&(action=\"<button type='button' class='secondary' data-intelligence-agent-run-v552='creative-agent'>Run Creative Agent</button>\"),intelligenceAgentGroupHeaderV644(agent,rows[index-1])+\"<article class='orbit-intelligence-agent-row-v555 orbit-intelligence-ondemand-row-v557' data-state='\"+esc(agent.state||\"planned\")+\"'><div class='orbit-intelligence-agent-name-v555'><strong>\"+esc(agent.name||agent.id)+\"</strong><small>\"+esc(agent?.family?.label||agent.area||\"Orbit\")+\" \\xB7 \"+esc(agent.state||\"planned\")+\"</small></div><span>\"+esc(schedule.whenToUse||agent.description||\"Run only when needed.\")+\"</span><span><code>\"+esc(policy.modelLane||agent.modelLane||\"routine\")+\"</code><small>\"+esc(profile.stageLabel||agent.permissionLabel||\"Read only\")+\"</small></span><span>\"+esc(run?intelligenceDateV545(run.completedAt):\"Not run yet\")+\"</span><span>\"+action+\"</span></article>\"}).join(\"\")}function renderIntelligencePermissionsV545(policy){const target=$2(\"intelligencePermissionGridV545\");if(!target)return;const maturity=policy?.maturity||{},path=Array.isArray(maturity.maturityPath)?maturity.maturityPath:[],maturityHtml=path.length?\"<article class='orbit-intelligence-permission-v545 orbit-intelligence-permission-maturity-v552'><strong>Permission maturity \\xB7 current ceiling: \"+esc(maturity.ceilingLabel||maturity.ceiling||\"Draft only\")+\"</strong><div class='orbit-intelligence-maturity-path-v552'>\"+path.map(step=>\"<span data-active='\"+(Number(step.rank)<=3?\"true\":\"false\")+\"'><b>\"+esc(step.rank)+\"</b> \"+esc(step.label)+\"</span>\").join(\"\")+\"</div><small>\"+esc(maturity.rule||\"No production execution is available.\")+\"</small></article>\":\"\",groups=[[\"Read / evidence\",policy?.readOnly],[\"Future approval gates\",policy?.approvalRequired],[\"Always protected\",policy?.protected]];target.innerHTML=maturityHtml+groups.map(([label,items])=>\"<article class='orbit-intelligence-permission-v545'><strong>\"+esc(label)+\"</strong><ul>\"+(Array.isArray(items)?items:[]).map(item=>\"<li>\"+esc(item)+\"</li>\").join(\"\")+\"</ul></article>\").join(\"\")}function renderAgentActionProposalsV552(rows){const target=$2(\"intelligenceActionProposalsV552\");if(!target)return;const proposals=Array.isArray(rows)?rows:[];target.innerHTML=proposals.length?proposals.slice(0,8).map(row=>\"<article class='orbit-intelligence-action-proposal-v552'><div><strong>\"+esc(row.noteTitle||row.noteId||\"Development draft\")+\"</strong><span>\"+esc(row.noteId||\"\")+\" \\xB7 draft only</span></div><p>\"+esc(row.summary||\"Implementation packet prepared.\")+\"</p><small>\"+esc(row.gate?.label||\"No staging or execution available\")+\" \\xB7 source writes 0 \\xB7 production writes 0</small></article>\").join(\"\"):\"<p class='orbit-muted'>No Development Agent implementation packets yet. Run the Development Agent or let Night Shift prepare one from the current Development queue.</p>\"}function renderAgentHandoffsV553(rows,policy){const target=$2(\"intelligenceAgentHandoffsV553\");if(!target)return;const handoffs=Array.isArray(rows)?rows:[],q=String($2(\"intelligenceHandoffSearchV555\")?.value||\"\").trim().toLowerCase(),severity=String($2(\"intelligenceHandoffSeverityV555\")?.value||\"\"),open=handoffs.filter(row=>row&&row.active!==!1&&String(row.status||\"open\").toLowerCase()===\"open\").filter(row=>{const hay=[row.title,row.reason,row.requestedAction,row.sourceAgent,(row.targetAgents||[]).join(\" \"),row.subjectId,row.code].filter(Boolean).join(\" \").toLowerCase();return(!q||hay.includes(q))&&(!severity||String(row.severity||\"\").toLowerCase()===severity)}),count=$2(\"intelligenceHandoffCountV555\");count&&(count.textContent=`${open.length} open handoff${open.length===1?\"\":\"s\"} shown \\xB7 routine findings stay in Intelligence`),target.innerHTML=open.length?open.map(row=>\"<article class='orbit-intelligence-handoff-row-v555'><div><strong>\"+esc(row.title||\"Agent handoff\")+\"</strong><span>\"+esc(row.sourceAgent||\"agent\")+\" \\u2192 \"+esc((row.targetAgents||[]).join(\", \")||\"operator\")+\"</span></div><p>\"+esc(row.reason||row.requestedAction||\"Evidence requires review.\")+\"</p><div class='orbit-intelligence-handoff-meta-v555'><span>\"+esc(String(row.severity||\"medium\").toUpperCase())+\"</span><span>\"+esc(row.requiredPermission||\"recommend\")+\" required</span><span>\"+(row.operatorActionRequired===!0?\"Human action required\":\"Intelligence only\")+\"</span><span>No execution performed</span></div></article>\").join(\"\"):\"<p class='orbit-muted'>No open handoffs match these filters.</p>\",policy?.structuredOnly===!1&&target.insertAdjacentHTML(\"afterbegin\",\"<p class='error'>Agent collaboration policy is not in structured-only mode.</p>\")}function renderIntelligenceModelRoutingV546(routes){const target=$2(\"intelligenceModelRoutingV546\");if(!target)return;const rows=Array.isArray(routes)?routes:[];target.innerHTML=rows.length?rows.map(row=>\"<article class='orbit-intelligence-model-lane-v546' data-live='\"+(row.live?\"true\":\"false\")+\"'><div><strong>\"+esc(row.label||row.lane)+\"</strong><span>\"+esc(row.costTier?String(row.costTier).toUpperCase():row.live?\"Live\":\"Reserved\")+\"</span></div><p><code>\"+esc(row.model||\"not configured\")+\"</code>\"+(row.reasoningEffort?\" \\xB7 \"+esc(row.reasoningEffort)+\" reasoning\":\"\")+\"</p><small>\"+esc(row.description||\"\")+\"</small></article>\").join(\"\"):\"<p class='orbit-muted'>No model-routing policy returned.</p>\"}function renderIntelligenceUsageV555(usage,executionPolicies,usageWindows,budget){const target=$2(\"intelligenceUsageV555\");if(!target)return;const windows=usageWindows||{},u=usage||windows[24]||windows[24]||{},counts=executionPolicies?.counts||{};function usd(v){return Number.isFinite(Number(v))?\"$\"+Number(v).toFixed(2):\"\\u2014\"}function windowCard(label,row){const x=row||{},tool=Number(x.estimatedToolUsd||0),token=Number(x.estimatedTokenStandardUsd||0),effective2=Number(x.estimatedEffectiveUsd||0);return\"<article><span>\"+esc(label)+\"</span><strong>\"+usd(effective2)+\"</strong><small>\"+Number(x.calls||0).toLocaleString(\"en-GB\")+\" calls \\xB7 \"+Number(x.totalTokens||0).toLocaleString(\"en-GB\")+\" tokens \\xB7 tools \"+usd(tool)+\"</small></article>\"}const w24=windows[24]||windows[24]||u,w7=windows[168]||windows[168]||{},w30=windows[720]||windows[720]||{},top=Array.isArray(w24.byAgent)?w24.byAgent.slice(0,12):[],models=Array.isArray(w24.byModel)?w24.byModel:[],tiers=Array.isArray(w24.byServiceTier)?w24.byServiceTier:[],expensive=Array.isArray(w24.expensiveRuns)?w24.expensiveRuns.slice(0,10):[],standard=usd(w24.estimatedStandardUsd),effective=usd(w24.estimatedEffectiveUsd),projected=usd(w24.projected30DayEffectiveUsd),saved=usd(w24.estimatedSavingsUsd),toolCost=usd(w24.estimatedToolUsd);target.innerHTML=\"<div class='orbit-intelligence-usage-metrics-v555'>\"+windowCard(\"Last 24 hours\",w24)+windowCard(\"Last 7 days\",w7)+windowCard(\"Last 30 days\",w30)+\"<article><span>24h prompt cache</span><strong>\"+Math.round(Number(w24.cachedInputRate||0)*100)+\"%</strong><small>\"+Number(w24.cachedInputTokens||0).toLocaleString(\"en-GB\")+\" cached input tokens</small></article><article><span>24h built-in tool fees</span><strong>\"+toolCost+\"</strong><small>\"+Number(w24.webSearchCalls||0)+\" web \\xB7 \"+Number(w24.imageWebSearchCalls||0)+\" image web \\xB7 \"+Number(w24.fileSearchCalls||0)+\" file searches</small></article><article><span>30-day projection</span><strong>\"+projected+\"</strong><small>At the latest 24h rate \\xB7 provider invoice remains authoritative</small></article></div><div class='orbit-intelligence-cost-policy-v555'><strong>Cost-aware execution</strong><span>24h effective \"+effective+\" \\xB7 standard-equivalent \"+standard+\" \\xB7 estimated tier saving \"+saved+\"</span><small>Deterministic checks run first. Luna handles high-volume routine work. Terra/Sol are escalation lanes. Eligible non-urgent work may use Flex/Batch, while built-in search tool fees remain visible because they are not erased by cheaper token tiers.</small></div>\"+(top.length?\"<details open><summary>Highest-cost agents in the last 24h</summary><div class='orbit-intelligence-usage-list-v555'>\"+top.map(row=>\"<span><strong>\"+esc(row.agentId)+\"</strong><b>\"+usd(row.estimatedEffectiveUsd)+\" \\xB7 tools \"+usd(row.estimatedToolUsd)+\" \\xB7 \"+Number(row.totalTokens||0).toLocaleString(\"en-GB\")+\" tokens \\xB7 \"+Number(row.webSearchCalls||0)+\" web searches\"+(row.usefulOutcomes?\" \\xB7 \"+Number(row.usefulOutcomes)+\" useful \\xB7 \"+usd(row.costPerUsefulOutcome)+\"/outcome\":\"\")+\"</b></span>\").join(\"\")+\"</div></details>\":\"\")+(models.length?\"<details><summary>24h model cost</summary><div class='orbit-intelligence-usage-list-v555'>\"+models.map(row=>\"<span><strong>\"+esc(row.model)+\"</strong><b>\"+usd(row.estimatedEffectiveUsd)+\" \\xB7 \"+Number(row.calls||0)+\" calls \\xB7 \"+Math.round(Number(row.cachedInputRate||0)*100)+\"% cached</b></span>\").join(\"\")+\"</div></details>\":\"\")+(tiers.length?\"<details><summary>Execution tier breakdown</summary><div class='orbit-intelligence-usage-list-v555'>\"+tiers.map(row=>\"<span><strong>\"+esc(row.serviceTier)+\"</strong><b>\"+Number(row.totalTokens||0).toLocaleString(\"en-GB\")+\" tokens \\xB7 \"+usd(row.estimatedEffectiveUsd)+\"</b></span>\").join(\"\")+\"</div></details>\":\"\")+(expensive.length?\"<details><summary>Most expensive individual runs \\xB7 24h</summary><div class='orbit-intelligence-usage-list-v555'>\"+expensive.map(row=>\"<span><strong>\"+esc(row.agentId)+\" \\xB7 \"+esc(row.model)+\" \\xB7 \"+esc(row.serviceTier)+\"</strong><b>\"+usd(row.estimatedEffectiveUsd)+\" \\xB7 tools \"+usd(row.estimatedToolUsd)+\" \\xB7 \"+Number(row.totalTokens||0).toLocaleString(\"en-GB\")+\" tokens\"+(row.webSearchCalls?\" \\xB7 \"+Number(row.webSearchCalls)+\" web search\"+(Number(row.webSearchCalls)===1?\"\":\"es\"):\"\")+\"</b></span>\").join(\"\")+\"</div></details>\":\"\")+(()=>{const ordinary=budget?.ordinary||{},manual=Array.isArray(budget?.manual)?budget.manual:[],recent=Array.isArray(budget?.recentReceipts)?budget.recentReceipts:[];return\"<div class='orbit-intelligence-cost-policy-v555'><strong>Atomic AI budget authority</strong><span>Ordinary rolling 24h: \"+usd(ordinary.committedUsd)+\" committed / \"+usd(ordinary.budgetUsd)+\" \\xB7 \"+usd(ordinary.remainingUsd)+\" remaining\"+(ordinary.frozen?\" \\xB7 FROZEN\":\"\")+\"</span><small>Every paid Responses/Batch request reserves budget before provider dispatch. Dispatched or ambiguous requests stay held until reconciled; only definitely pre-dispatch reservations can expire safely.</small></div>\"+(manual.length?\"<details><summary>Manual Directory / Development budgets</summary><div class='orbit-intelligence-usage-list-v555'>\"+manual.slice(0,10).map(row=>\"<span><strong>\"+esc(row.kind||\"manual\")+\" \\xB7 \"+esc(row.runId||\"\")+\"</strong><b>\"+usd(row.committedUsd)+\" / \"+usd(row.budgetUsd)+\" \\xB7 \"+esc(row.status||\"\")+\"</b></span>\").join(\"\")+\"</div></details>\":\"\")+(recent.length?\"<details><summary>Recent atomic reservations</summary><div class='orbit-intelligence-usage-list-v555'>\"+recent.slice(0,12).map(row=>\"<span><strong>\"+esc(row.usageTag||\"AI\")+\" \\xB7 \"+esc(row.status||\"\")+\"</strong><b>reserved \"+usd(row.reservedUsd)+(Number.isFinite(Number(row.actualUsd))?\" \\xB7 actual \"+usd(row.actualUsd):\"\")+\"</b></span>\").join(\"\")+\"</div></details>\":\"\")})()+\"<div class='orbit-intelligence-cost-policy-v555'><strong>Execution mix</strong><span>\"+Number(counts.event_driven||0)+\" event-driven \\xB7 \"+Number(counts.scheduled_lightweight||0)+\" scheduled \\xB7 \"+Number(counts.batch_night_shift||0)+\" Batch/Night Shift \\xB7 \"+Number(counts.on_demand||0)+\" on demand</span><small>V576 cost telemetry separately records model tokens, cached input, built-in web/file tool calls and useful outcomes so high-volume agents can be optimised by cost per result rather than raw activity.</small></div>\"}function renderIntelligenceBatchV556(batch){const target=$2(\"intelligenceBatchV556\");if(!target)return;const b=batch||{},jobs=Array.isArray(b.recentJobs)?b.recentJobs:[];target.innerHTML=\"<div class='orbit-intelligence-batch-status-v556' data-state='\"+esc(b.enabled?\"ready\":\"off\")+\"'><strong>\"+esc(b.enabled?\"Batch ready\":\"Batch unavailable\")+\"</strong><span>\"+Number(b.pendingJobs||0)+\" pending job(s) \\xB7 \"+esc(b.completionWindow||\"24h\")+\" window \\xB7 no standard-rate fallback</span></div>\"+(jobs.length?\"<details><summary>Recent Batch jobs</summary><div class='orbit-intelligence-usage-list-v555'>\"+jobs.map(job=>\"<span><strong>\"+esc(job.jobType||\"Intelligence Batch\")+\" \\xB7 \"+Number(job.itemCount||0)+\" items</strong><b>\"+esc(job.status||\"unknown\")+\"</b></span>\").join(\"\")+\"</div></details>\":\"<p class='orbit-muted'>No Batch jobs recorded yet. Eligible dossier work will be coalesced when evidence changes.</p>\")}function renderRoadmapDeveloperV555(info){const target=$2(\"intelligenceRoadmapDeveloperV555\");if(!target)return;const row=info||{},policy=row.executionPolicy||{},connected=row.codeWritingEnabled===!0&&row.sandboxWrites===!0,prep=row.preparationReady===!0?\"Source snapshot preparation ready\":\"Source snapshot preparation pending\";target.innerHTML=\"<article class='orbit-intelligence-roadmap-developer-card-v555'><div><strong>Roadmap Developer</strong><span>\"+esc(connected?\"Sealed sandbox connected\":\"Sandbox \"+String(row.state||\"unavailable\"))+\"</span></div><p>\"+esc(prep)+\". Approved roadmap work can now be built only inside the isolated sandbox under an explicit Development AI budget. Sandbox output cannot deploy or write production source and still requires review, regression certification and Acceptance.</p><small>\"+esc(intelligenceExecutionLabelV555(policy.executionClass))+\" \\xB7 \"+esc(policy.cadence||\"manual paid build + Night Shift preparation\")+\" \\xB7 \"+esc(policy.modelLane||\"engineering\")+\" lane \\xB7 production access disabled</small></article>\"}function renderSystemHealthV546(run){const target=$2(\"intelligenceSystemHealthV546\");if(!target)return;if(!run){target.dataset.state=\"\",target.textContent=\"System Health has not been run yet. It makes no changes when it runs.\";return}const snap=run.snapshot||{},warnings=Array.isArray(snap.warnings)?snap.warnings:[],unresolved=Number(snap.unresolvedScheduledFailures??snap.recentFailedScheduledRuns??0),recovered=Number(snap.recoveredScheduledFailures||0);target.dataset.state=warnings.length?\"working\":\"success\";const failedRows=Array.isArray(snap.failedRuns)?snap.failedRuns:[],changes=Array.isArray(snap.changes)?snap.changes:[];target.innerHTML=\"<strong>System Health \\xB7 \"+esc(warnings.length?\"Needs attention\":\"No current warnings in bounded check\")+\"</strong><span> \"+esc(intelligenceDateV545(run.completedAt))+\" \\xB7 \"+Number(snap.rssMb||0)+\" MB process memory \\xB7 \"+Number(snap.activeDevelopmentItems||0)+\" active Development item(s) \\xB7 \"+unresolved+\" unresolved scheduled failure(s)\"+(recovered?\" \\xB7 \"+recovered+\" recovered historical failure(s)\":\"\")+\"</span>\"+(warnings.length?\"<br><span>\"+warnings.map(esc).join(\" \\xB7 \")+\"</span>\":\"\")+(failedRows.length?\"<details><summary>Current failed workflows</summary><ul>\"+failedRows.slice(0,8).map(row=>\"<li><strong>\"+esc(row.workflow||\"Unknown workflow\")+\"</strong> \\xB7 \"+esc(row.createdAt||\"date unavailable\")+(row.error?\" \\xB7 \"+esc(row.error):\"\")+\"</li>\").join(\"\")+\"</ul></details>\":\"\")+(changes.length?\"<details><summary>What changed since the last check</summary><ul>\"+changes.map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\")+\"</ul></details>\":\"\")}function renderDeploymentGuardianV54601(run){const target=$2(\"intelligenceDeploymentGuardianV54601\");if(!target)return;if(!run){target.dataset.state=\"\",target.textContent=\"Deployment Guardian has not been run yet. It can recommend recovery but cannot deploy or roll back.\";return}const warnings=Array.isArray(run.warnings)?run.warnings:[],evidence=run.evidence||{},reviewed=evidence.currentRelease||(Array.isArray(evidence.reviewedDeployments)?evidence.reviewedDeployments:[])[0]||{};target.dataset.state=run.healthStatus===\"attention\"?\"working\":\"success\";const headline=run.healthStatus===\"attention\"?\"Current release needs attention\":\"Current release has no immediate deployment failure\";target.innerHTML=\"<strong>Deployment Guardian \\xB7 \"+esc(headline)+\"</strong><span> \"+esc(intelligenceDateV545(run.completedAt))+(reviewed.releaseVersion?\" \\xB7 \"+esc(reviewed.releaseVersion)+\" \\xB7 \"+esc(reviewed.statusLabel||reviewed.status||\"\"):\"\")+\"</span>\"+(run.diagnosis?\"<br><span><strong>Current status:</strong> \"+esc(run.diagnosis)+\"</span>\":\"\")+(run.recommendedAction?\"<br><span><strong>Recommended action:</strong> \"+esc(run.recommendedAction)+\"</span>\":\"\")+(warnings.length?\"<br><span>\"+warnings.map(esc).join(\" \\xB7 \")+\"</span>\":\"\")+(Array.isArray(evidence.historicalIncidents)&&evidence.historicalIncidents.length?\"<details><summary>Historical release incidents</summary><ul>\"+evidence.historicalIncidents.map(row=>\"<li>\"+esc(row.releaseVersion||row.id||\"Release\")+\" \\xB7 \"+esc(row.statusLabel||row.status||\"\")+\"</li>\").join(\"\")+\"</ul></details>\":\"\")+(run.ownerSummary?\"<details><summary>AI explanation</summary><div class='orbit-intelligence-ai-explanation-v547'>\"+orbitIntelligenceBriefMarkdownV549(run.ownerSummary)+\"</div></details>\":\"\")}function renderNightShiftV547(run,watchers){const target=$2(\"intelligenceNightShiftV547\");if(!target)return;const watcher=watchers||{},running=watcher.running===!0,inFlight=watcher.inFlight===!0,cadence=watcher.cadence||\"15-minute lightweight monitoring \\xB7 periodic Engineering Review \\xB7 daily morning Owner Brief\",lastCheck=watcher.lastCheckAt?intelligenceDateV545(watcher.lastCheckAt):\"waiting for first background check\",monitor=\"<strong>Night Shift \\xB7 \"+esc(running?\"Monitoring continuously\":\"Watcher not running\")+\"</strong><span> \"+esc(cadence)+\" \\xB7 last check: \"+esc(lastCheck)+(inFlight?\" \\xB7 check in progress\":\"\")+\" \\xB7 0 production changes</span>\";if(!run){target.dataset.state=running?\"success\":\"\",target.innerHTML=monitor+\"<br><span>The morning Owner Brief is created automatically after the overnight watch window. Use Run full review now only as a diagnostic/manual refresh.</span>\";return}const snap=run.snapshot||{};target.dataset.state=run.healthStatus===\"attention\"?\"working\":\"success\",target.innerHTML=monitor+\"<br><span><strong>Latest Owner Brief:</strong> \"+esc(intelligenceDateV545(run.completedAt))+\" \\xB7 \"+Number(snap.newFindingCount||0)+\" internal finding(s) recorded</span>\"+(run.ownerSummary?\"<details><summary>Owner brief</summary><div class='orbit-intelligence-ai-explanation-v547'>\"+orbitIntelligenceBriefMarkdownV549(run.ownerSummary)+\"</div></details>\":\"\")}function renderIntelligenceActivityV545(items){const target=$2(\"intelligenceActivityV545\");if(!target)return;const rows=Array.isArray(items)?items:[];target.innerHTML=rows.length?rows.slice(0,12).map(row=>\"<article class='orbit-intelligence-activity-row-v545'><strong>\"+esc(row.summary||row.type||\"Intelligence activity\")+\"</strong><small>\"+esc(intelligenceDateV545(row.createdAt))+\"</small><span>\"+esc(row.actor||\"Orbit Admin\")+\"</span></article>\").join(\"\"):\"<p class='orbit-muted'>No Intelligence activity recorded yet.</p>\"}function renderIntelligenceCommandV545(command){orbitIntelligenceCommandV545=command||{};const counts=command?.recommendationCounts||{},agents=Array.isArray(command?.agents)?command.agents:[],recs=Array.isArray(command?.recommendations)?command.recommendations:[],conn=command?.connection||{};$2(\"intelligenceConnectionMetricV545\")&&($2(\"intelligenceConnectionMetricV545\").textContent=conn.configured?\"Configured\":\"Setup needed\"),$2(\"intelligenceConnectionDetailV545\")&&($2(\"intelligenceConnectionDetailV545\").textContent=conn.configured?\"Model \"+(conn.model||\"configured\")+\" \\xB7 use Ask Orbit to verify\":\"OPENAI_API_KEY is not configured\"),$2(\"intelligenceLiveAgentsMetricV545\")&&($2(\"intelligenceLiveAgentsMetricV545\").textContent=String(agents.filter(a=>a.state===\"live\").length)),$2(\"intelligenceNewFindingsMetricV545\")&&($2(\"intelligenceNewFindingsMetricV545\").textContent=String(counts.needsOperator??0)),$2(\"intelligenceApprovedMetricV545\")&&($2(\"intelligenceApprovedMetricV545\").textContent=String(counts.aiManaged??0));const attention=Number(counts.needsOperator||0),badge=$2(\"intelligenceFindingBadgeV545\");badge&&(badge.hidden=attention<1,badge.textContent=String(attention));const status=$2(\"intelligenceCommandStatusV545\");status&&(status.dataset.state=\"success\",status.textContent=command?.lastEngineeringReview?\"Last Engineering Review: \"+intelligenceDateV545(command.lastEngineeringReview.completedAt)+\" \\xB7 \"+Number(command.lastEngineeringReview.findingCount||0)+\" finding(s) \\xB7 read only\":\"Engineering Review has not been run yet. Nothing has been changed.\");const top=$2(\"intelligenceTopRecommendationsV545\");if(top){const visible=recs.filter(r=>r?.management?.operatorActionRequired===!0||!r?.management?.aiManaged&&String(r.status||\"new\").toLowerCase()===\"new\").slice(0,4);top.innerHTML=visible.length?visible.map(r=>recommendationCardV545(r,!0)).join(\"\"):\"<p class='orbit-muted'>No AI findings need you. Routine engineering findings are being triaged, investigated and routed automatically.</p>\"}renderIntelligenceAgentsV545(agents),renderIntelligenceOnDemandV557(agents),renderRoadmapDeveloperV555(command?.roadmapDeveloper||null),renderIntelligenceUsageV555(command?.usage||{},command?.executionPolicies||{},command?.usageWindows||{},command?.budget||{}),renderIntelligenceBatchV556(command?.batch||{}),renderIntelligenceModelRoutingV546(command?.modelRouting||[]),renderSystemHealthV546(command?.lastSystemHealth||null),renderDeploymentGuardianV54601(command?.lastDeploymentGuardian||null),renderNightShiftV547(command?.lastNightShift||null,command?.watchers||null),renderIntelligencePermissionsV545(command?.permissions||{}),renderAgentActionProposalsV552(command?.actionProposals||[]),renderAgentHandoffsV553(command?.agentHandoffs||[],command?.collaboration||null),renderIntelligenceActivityV545(command?.activity||[])}const agentDirectoryCacheV618=new Map,agentDirectoryReadsV618=new Map;function renderAgentDirectoryErrorV618(error){for(const id of[\"intelligenceAgentGridV545\",\"intelligenceOnDemandGridV557\"]){const node=$2(id);node&&(node.innerHTML=\"<div class='orbit-empty-state' role='alert'><strong>Agents could not load</strong><span>\"+esc(error.message||error)+\"</span><button type='button' class='secondary' data-agent-retry-v618>Retry</button></div>\",node.querySelector(\"[data-agent-retry-v618]\")?.addEventListener(\"click\",()=>loadAgentDirectoryV618(!0).catch(()=>{})))}const count=$2(\"intelligenceAgentCountV555\");count&&(count.textContent=\"Agent status unavailable. Retry to read the current status.\")}async function loadAgentDirectoryV618(force=!1){if(!state.adminAuthenticated)return null;const workspace=canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599()),cached=agentDirectoryCacheV618.get(workspace),display=data=>(workspace!==canonicalBusinessWorkspaceV599(state.businessWorkspaceV599||savedBusinessWorkspaceV599())||(orbitIntelligenceCommandV545={...orbitIntelligenceCommandV545||{},agents:data.agents,agentsWorkspaceV618:workspace},renderIntelligenceAgentsV545(data.agents),renderIntelligenceOnDemandV557(data.agents)),data);if(!force&&cached&&Date.now()-cached.at<3e4)return display(cached.data);let pending=agentDirectoryReadsV618.get(workspace);if(!pending){const node=$2(\"intelligenceAgentGridV545\");node&&(node.innerHTML=\"<p role='status'>Loading workspace agents\\u2026</p>\"),pending=api(\"/api/admin/intelligence/agents?workspace=\"+encodeURIComponent(workspace),{timeoutMs:15e3,cacheMs:0}).then(data=>{if(data.success===!1||data.workspace!==workspace||!Array.isArray(data.agents))throw new Error(\"Orbit did not return this workspace\\u2019s agent list.\");return agentDirectoryCacheV618.set(workspace,{at:Date.now(),data}),data}).finally(()=>agentDirectoryReadsV618.delete(workspace)),agentDirectoryReadsV618.set(workspace,pending)}try{return display(await pending)}catch(error){throw workspace===state.businessWorkspaceV599&&renderAgentDirectoryErrorV618(error),error}}function renderIntelligenceCommandErrorV545(err){const status=$2(\"intelligenceCommandStatusV545\");status&&(status.dataset.state=\"error\",status.textContent=\"Could not load Intelligence status: \"+String(err?.message||err))}async function loadOrbitIntelligenceCommandCentreV545(force){if(state.currentModule===\"intelligence\"&&[\"agents\",\"ondemand\"].includes(state.currentIntelligencePaneV618))return loadAgentDirectoryV618(force);if(orbitIntelligenceCommandV545?.generatedAt&&!force)return renderIntelligenceCommandV545(orbitIntelligenceCommandV545),orbitIntelligenceCommandV545;const data=await api(\"/api/admin/intelligence/command-centre\",{timeoutMs:3e4,cacheMs:0});return renderIntelligenceCommandV545(data.commandCentre||{}),data.commandCentre||{}}function renderIntelligenceFindingsV555(){const target=$2(\"intelligenceRecommendationsV545\");if(!target)return;const q=String($2(\"intelligenceFindingSearchV555\")?.value||\"\").trim().toLowerCase(),severity=String($2(\"intelligenceFindingSeverityV555\")?.value||\"\"),rows=orbitIntelligenceFindingsV555.filter(row=>{const hay=[row.title,row.summary,row.recommendation,row.agentId,row.sourceAgent,...(row.evidence||[]).map(x=>`${x.label||\"\"} ${x.value||\"\"}`)].join(\" \").toLowerCase();return(!q||hay.includes(q))&&(!severity||String(row.severity||\"\").toLowerCase()===severity)}),count=$2(\"intelligenceFindingCountV555\");count&&(count.textContent=`Showing ${rows.length} of ${orbitIntelligenceFindingsV555.length} finding${orbitIntelligenceFindingsV555.length===1?\"\":\"s\"} \\xB7 AI-managed findings are audit history; only explicit escalations need you`),target.innerHTML=rows.length?rows.map(row=>recommendationCardV545(row,!1)).join(\"\"):\"<p class='orbit-muted'>No findings match these filters.</p>\"}async function loadIntelligenceRecommendationsV545(){const target=$2(\"intelligenceRecommendationsV545\");target&&(target.innerHTML=\"<p class='orbit-muted'>Loading findings\\u2026</p>\");const filter=$2(\"intelligenceRecommendationFilterV545\")?.value||\"all\";try{const data=await api(\"/api/admin/intelligence/recommendations?status=\"+encodeURIComponent(filter)+\"&limit=200\",{timeoutMs:3e4,cacheMs:0});orbitIntelligenceFindingsV555=Array.isArray(data.recommendations)?data.recommendations:[],renderIntelligenceFindingsV555()}catch(err){target&&(target.innerHTML=\"<p class='error'>Could not load findings: \"+esc(err.message||err)+\"</p>\")}}async function loadIntelligenceInvestigationsV555(){const target=$2(\"intelligenceInvestigatedFindingsV555\");target&&(target.innerHTML=\"<p class='orbit-muted'>Loading investigations\\u2026</p>\");try{const data=await api(\"/api/admin/intelligence/recommendations?status=investigate&limit=120\",{timeoutMs:3e4,cacheMs:0});orbitIntelligenceInvestigationsV555=Array.isArray(data.recommendations)?data.recommendations:[],target&&(target.innerHTML=orbitIntelligenceInvestigationsV555.length?orbitIntelligenceInvestigationsV555.map(row=>recommendationCardV545(row,!1)).join(\"\"):\"<p class='orbit-muted'>No completed investigations yet.</p>\")}catch(err){target&&(target.innerHTML=\"<p class='error'>Could not load investigations: \"+esc(err.message||err)+\"</p>\")}}async function runEngineeringReviewV545(){if(orbitIntelligenceCommandBusyV545)return;orbitIntelligenceCommandBusyV545=!0;const button2=$2(\"runEngineeringReviewV545\"),status=$2(\"intelligenceCommandStatusV545\");button2&&(button2.disabled=!0,button2.textContent=\"Reviewing source\\u2026\"),status&&(status.dataset.state=\"working\",status.textContent=\"Engineering Review is scanning approved source and Development state. It has no code, customer, provider or deployment write tools.\");try{const data=await api(\"/api/admin/intelligence/engineering-review/run\",{method:\"POST\",body:JSON.stringify({}),timeoutMs:12e4,cacheMs:0});orbitIntelligenceCommandV545=null,await loadOrbitIntelligenceCommandCentreV545(!0),await loadIntelligenceRecommendationsV545(),setNotice2(\"Engineering Review completed: \"+Number(data.run?.findingCount||0)+\" finding(s) automatically triaged. No routine operator decisions or production changes were required.\")}catch(err){renderIntelligenceCommandErrorV545(err),setNotice2(\"Engineering Review could not complete: \"+(err.message||err),!0)}finally{orbitIntelligenceCommandBusyV545=!1,button2&&(button2.disabled=!1,button2.textContent=\"Run Engineering Review\")}}async function runSystemHealthV546(){if(orbitIntelligenceCommandBusyV545)return;orbitIntelligenceCommandBusyV545=!0;const button2=$2(\"runSystemHealthV546\"),status=$2(\"intelligenceSystemHealthV546\");button2&&(button2.disabled=!0,button2.textContent=\"Checking\\u2026\"),status&&(status.dataset.state=\"working\",status.textContent=\"System Health is checking runtime and recent scheduled-job evidence. It cannot restart jobs, change settings or call providers.\");try{await api(\"/api/admin/intelligence/system-health/run\",{method:\"POST\",body:\"{}\",timeoutMs:45e3,cacheMs:0}),orbitIntelligenceCommandV545=null,await loadOrbitIntelligenceCommandCentreV545(!0),setNotice2(\"System Health completed. Read-only check only; nothing was restarted or changed.\")}catch(err){status&&(status.dataset.state=\"error\",status.textContent=\"System Health could not complete: \"+(err.message||err)),setNotice2(\"System Health could not complete: \"+(err.message||err),!0)}finally{orbitIntelligenceCommandBusyV545=!1,button2&&(button2.disabled=!1,button2.textContent=\"Run System Health\")}}async function runDeploymentGuardianV54601(){if(orbitIntelligenceCommandBusyV545)return;orbitIntelligenceCommandBusyV545=!0;const button2=$2(\"runDeploymentGuardianV54601\"),status=$2(\"intelligenceDeploymentGuardianV54601\");button2&&(button2.disabled=!0,button2.textContent=\"Reviewing deploys\\u2026\"),status&&(status.dataset.state=\"working\",status.textContent=\"Deployment Guardian is reading recent release, rollback and package evidence. It cannot deploy, roll back or contact Shopify.\");try{await api(\"/api/admin/intelligence/deployment-guardian/run\",{method:\"POST\",body:\"{}\",timeoutMs:7e4,cacheMs:0}),orbitIntelligenceCommandV545=null,await loadOrbitIntelligenceCommandCentreV545(!0),setNotice2(\"Deployment Guardian completed. Read-only review only; no deployment or rollback action was performed.\")}catch(err){status&&(status.dataset.state=\"error\",status.textContent=\"Deployment Guardian could not complete: \"+(err.message||err)),setNotice2(\"Deployment Guardian could not complete: \"+(err.message||err),!0)}finally{orbitIntelligenceCommandBusyV545=!1,button2&&(button2.disabled=!1,button2.textContent=\"Run Deployment Guardian\")}}async function runNightShiftV547(){if(orbitIntelligenceCommandBusyV545)return;orbitIntelligenceCommandBusyV545=!0;const button2=$2(\"runNightShiftV547\"),status=$2(\"intelligenceNightShiftV547\");button2&&(button2.disabled=!0,button2.textContent=\"Running full review\\u2026\"),status&&(status.dataset.state=\"working\",status.textContent=\"Running a manual full review now. Persistent Night Shift monitoring continues independently in the background; neither path can deploy, send, charge or alter providers.\");try{await api(\"/api/admin/intelligence/night-shift/run\",{method:\"POST\",body:\"{}\",timeoutMs:18e4,cacheMs:0}),orbitIntelligenceCommandV545=null,await Promise.all([loadOrbitIntelligenceCommandCentreV545(!0),loadIntelligenceRecommendationsV545()]),setNotice2(\"Full Intelligence review completed. Persistent Night Shift remains active; no production changes were performed.\")}catch(err){status&&(status.dataset.state=\"error\",status.textContent=\"Night Shift could not complete: \"+(err.message||err)),setNotice2(\"Night Shift could not complete: \"+(err.message||err),!0)}finally{orbitIntelligenceCommandBusyV545=!1,button2&&(button2.disabled=!1,button2.textContent=\"Run full review now\")}}async function runSpecialistAgentV552(agentId,button2){if(!agentId||orbitIntelligenceCommandBusyV545)return;let budgetUsd=null;if(agentId===\"development-agent\"||agentId===\"roadmap-developer\"){const label=agentId===\"roadmap-developer\"?\"Roadmap sandbox build\":\"Development build\",raw=window.prompt(\"Approve a paid-AI ceiling for this manual \"+label+\" ($10 to $20).\",\"10\");if(raw===null)return;if(budgetUsd=Number(raw),!Number.isFinite(budgetUsd)||budgetUsd<10||budgetUsd>20){setNotice2(\"Choose a Development AI budget from $10 to $20.\",!0);return}}orbitIntelligenceCommandBusyV545=!0;const original=button2?.textContent||\"Run now\";button2&&(button2.disabled=!0,button2.textContent=\"Running\\u2026\");try{const data=await api(\"/api/admin/intelligence/agents/\"+encodeURIComponent(agentId)+\"/run\",{method:\"POST\",body:JSON.stringify(budgetUsd==null?{}:{budgetUsd}),timeoutMs:18e4,cacheMs:0});orbitIntelligenceCommandV545=null,await loadOrbitIntelligenceCommandCentreV545(!0);const name=data.run?.title||agentId,sandboxWrites=Number(data.run?.sandboxWrites||data.run?.sandboxBuild?.ready||data.run?.built||0);setNotice2(name+\" completed. \"+(sandboxWrites?\"Sandbox implementation created; \":\"\")+\"no production source, provider, customer or deployment change was performed.\")}catch(err){setNotice2(\"Agent run could not complete: \"+(err.message||err),!0)}finally{orbitIntelligenceCommandBusyV545=!1,button2&&(button2.disabled=!1,button2.textContent=original)}}async function intelligenceRecommendationActionV545(id,action){if(!id||!action)return;const button2=document.querySelector('[data-intelligence-rec-id-v545=\"'+CSS.escape(id)+'\"][data-intelligence-rec-action-v545=\"'+CSS.escape(action)+'\"]');button2&&(button2.disabled=!0,button2.textContent=action===\"investigate\"?\"Investigating\\u2026\":\"Saving\\u2026\");try{const data=await api(\"/api/admin/intelligence/recommendations/\"+encodeURIComponent(id)+\"/action\",{method:\"POST\",body:JSON.stringify({action}),timeoutMs:action===\"investigate\"?7e4:3e4,cacheMs:0});return orbitIntelligenceCommandV545=null,await Promise.all([loadOrbitIntelligenceCommandCentreV545(!0),loadIntelligenceRecommendationsV545()]),setNotice2({approve:\"Approved for future development. It has left the Needs decision queue; nothing was executed or deployed.\",investigate:\"Read-only investigation completed. It has left the Needs decision queue; open the Investigated filter to read the result.\",hold:\"Recommendation held and removed from the Needs decision queue.\",dismiss:\"Recommendation dismissed and removed from the Needs decision queue.\",reopen:\"Recommendation returned to the Needs decision queue.\"}[action]||\"Recommendation updated. No production change was executed.\"),data}catch(err){setNotice2((action===\"investigate\"?\"Investigation failed: \":\"Could not update recommendation: \")+(err.message||err),!0)}finally{button2&&(button2.disabled=!1)}}async function updateAgentScheduleV557(agentId,action,intervalMinutes,button2){button2&&(button2.disabled=!0);try{await api(\"/api/admin/intelligence/orchestration/\"+encodeURIComponent(agentId),{method:\"POST\",body:JSON.stringify({action,intervalMinutes}),timeoutMs:3e4,cacheMs:0}),orbitIntelligenceCommandV545=null,await loadOrbitIntelligenceCommandCentreV545(!0),setNotice2(\"Agent schedule updated. Permission authority was not changed.\")}catch(err){setNotice2(\"Could not update agent schedule: \"+(err.message||err),!0)}finally{button2&&(button2.disabled=!1)}}async function runAutomaticAgentV557UI(agentId,button2){button2&&(button2.disabled=!0,button2.textContent=\"Checking\\u2026\");try{await api(\"/api/admin/intelligence/orchestration/\"+encodeURIComponent(agentId)+\"/run-now\",{method:\"POST\",body:\"{}\",timeoutMs:18e4,cacheMs:0}),orbitIntelligenceCommandV545=null,await loadOrbitIntelligenceCommandCentreV545(!0),setNotice2(\"Agent check completed. Scheduling and permission ceiling remain unchanged.\")}catch(err){setNotice2(\"Agent check could not complete: \"+(err.message||err),!0)}finally{button2&&(button2.disabled=!1,button2.textContent=\"Check now\")}}document.getElementById(\"runEngineeringReviewV545\")?.addEventListener(\"click\",runEngineeringReviewV545),document.getElementById(\"runSystemHealthV546\")?.addEventListener(\"click\",runSystemHealthV546),document.getElementById(\"runDeploymentGuardianV54601\")?.addEventListener(\"click\",runDeploymentGuardianV54601),document.getElementById(\"runNightShiftV547\")?.addEventListener(\"click\",runNightShiftV547),document.getElementById(\"refreshIntelligenceCommandV545\")?.addEventListener(\"click\",()=>loadOrbitIntelligenceCommandCentreV545(!0).catch(renderIntelligenceCommandErrorV545)),document.getElementById(\"refreshIntelligenceRecommendationsV545\")?.addEventListener(\"click\",loadIntelligenceRecommendationsV545),document.getElementById(\"intelligenceRecommendationFilterV545\")?.addEventListener(\"change\",loadIntelligenceRecommendationsV545),document.getElementById(\"intelligenceFindingSearchV555\")?.addEventListener(\"input\",renderIntelligenceFindingsV555),document.getElementById(\"intelligenceFindingSeverityV555\")?.addEventListener(\"change\",renderIntelligenceFindingsV555),[\"intelligenceAgentSearchV555\",\"intelligenceAgentFamilyV555\",\"intelligenceAgentPermissionV555\",\"intelligenceAgentExecutionV555\"].forEach(id=>document.getElementById(id)?.addEventListener(id.includes(\"Search\")?\"input\":\"change\",()=>renderIntelligenceAgentsV545(orbitIntelligenceCommandV545?.agents||[]))),document.getElementById(\"intelligenceDiagnosticsRangeV577\")?.addEventListener(\"change\",toggleIntelligenceDiagnosticsCustomV577),document.getElementById(\"exportIntelligenceDiagnosticsV577\")?.addEventListener(\"click\",exportIntelligenceDiagnosticsV577),toggleIntelligenceDiagnosticsCustomV577(),[\"intelligenceOnDemandSearchV557\",\"intelligenceOnDemandFamilyV557\"].forEach(id=>document.getElementById(id)?.addEventListener(id.includes(\"Search\")?\"input\":\"change\",()=>renderIntelligenceOnDemandV557(orbitIntelligenceCommandV545?.agents||[]))),[\"intelligenceHandoffSearchV555\",\"intelligenceHandoffSeverityV555\"].forEach(id=>document.getElementById(id)?.addEventListener(id.includes(\"Search\")?\"input\":\"change\",()=>renderAgentHandoffsV553(orbitIntelligenceCommandV545?.agentHandoffs||[],orbitIntelligenceCommandV545?.collaboration||null))),document.getElementById(\"refreshIntelligenceAgentsV555\")?.addEventListener(\"click\",()=>loadOrbitIntelligenceCommandCentreV545(!0).catch(renderIntelligenceCommandErrorV545)),document.getElementById(\"refreshIntelligenceOnDemandV557\")?.addEventListener(\"click\",()=>loadOrbitIntelligenceCommandCentreV545(!0).catch(renderIntelligenceCommandErrorV545)),document.getElementById(\"refreshIntelligenceCostV556\")?.addEventListener(\"click\",()=>loadOrbitIntelligenceCommandCentreV545(!0).catch(renderIntelligenceCommandErrorV545)),document.getElementById(\"refreshIntelligenceHandoffsV555\")?.addEventListener(\"click\",()=>loadOrbitIntelligenceCommandCentreV545(!0).catch(renderIntelligenceCommandErrorV545)),document.getElementById(\"refreshIntelligenceInvestigationsV555\")?.addEventListener(\"click\",()=>Promise.all([loadOrbitIntelligenceCommandCentreV545(!0),loadIntelligenceInvestigationsV555()]).catch(renderIntelligenceCommandErrorV545)),document.addEventListener(\"click\",event=>{const jump=event.target.closest(\"[data-intelligence-jump-v545]\");jump&&setOrbitIntelligenceTab(jump.dataset.intelligenceJumpV545);const ask=event.target.closest(\"[data-intelligence-ask-rec-v545]\");if(ask){setOrbitIntelligenceTab(\"assistant\");const input=$2(\"orbitIntelligenceQuestion\");input&&(input.value=\"Explain this Engineering Review recommendation and help me decide whether to approve it: \"+String(ask.dataset.intelligenceAskTitleV545||ask.dataset.intelligenceAskRecV545),input.focus())}const runAgent=event.target.closest(\"[data-intelligence-agent-run-v552]\");runAgent&&runSpecialistAgentV552(runAgent.dataset.intelligenceAgentRunV552,runAgent);const scheduleAction=event.target.closest(\"[data-intelligence-schedule-action-v557]\");scheduleAction&&updateAgentScheduleV557(scheduleAction.dataset.intelligenceScheduleActionV557,scheduleAction.dataset.action,null,scheduleAction);const autoRun=event.target.closest(\"[data-intelligence-auto-run-v557]\");autoRun&&runAutomaticAgentV557UI(autoRun.dataset.intelligenceAutoRunV557,autoRun);const onDemand=event.target.closest(\"[data-intelligence-on-demand-action-v557]\");onDemand&&setOrbitIntelligenceTab(onDemand.dataset.intelligenceOnDemandActionV557);const action=event.target.closest(\"[data-intelligence-rec-action-v545]\");action&&intelligenceRecommendationActionV545(action.dataset.intelligenceRecIdV545,action.dataset.intelligenceRecActionV545)}),document.addEventListener(\"change\",event=>{const cadence=event.target.closest(\"[data-intelligence-cadence-v557]\");cadence&&updateAgentScheduleV557(cadence.dataset.intelligenceCadenceV557,\"cadence\",Number(cadence.value),cadence)});function setOrbitIntelligenceTab(tab){const allowed=[\"overview\",\"assistant\",\"agents\",\"ondemand\",\"cost\",\"recommendations\",\"investigations\",\"handoffs\",\"knowledge\",\"incidents\",\"protected-systems\"],value=allowed.includes(tab)?tab:\"overview\",panes={overview:document.getElementById(\"orbitIntelligenceOverviewPane\"),assistant:document.getElementById(\"orbitIntelligenceAssistantPane\"),agents:document.getElementById(\"orbitIntelligenceAgentsPane\"),ondemand:document.getElementById(\"orbitIntelligenceOnDemandPane\"),cost:document.getElementById(\"orbitIntelligenceCostPane\"),recommendations:document.getElementById(\"orbitIntelligenceRecommendationsPane\"),investigations:document.getElementById(\"orbitIntelligenceInvestigationsPane\"),handoffs:document.getElementById(\"orbitIntelligenceHandoffsPane\"),knowledge:document.getElementById(\"orbitIntelligenceKnowledgePane\"),incidents:document.getElementById(\"orbitIntelligenceIncidentsPane\"),\"protected-systems\":document.getElementById(\"orbitIntelligenceProtectedSystemsPane\")};Object.entries(panes).forEach(([key,pane])=>{pane&&(pane.hidden=key!==value)}),document.querySelectorAll(\"[data-orbit-intelligence-tab]\").forEach(button2=>button2.classList.toggle(\"active\",button2.dataset.orbitIntelligenceTab===value)),document.querySelectorAll(\"[data-intelligence-open]\").forEach(button2=>{const active=button2.dataset.intelligenceOpen===value;button2.classList.toggle(\"active\",active),button2.setAttribute(\"aria-selected\",String(active)),active?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")});try{sessionStorage.setItem(\"orbit-intelligence-tab\",value)}catch{}state.currentIntelligencePaneV618=value,state.adminAuthenticated&&([\"agents\",\"ondemand\"].includes(value)&&loadAgentDirectoryV618().catch(()=>{}),[\"overview\",\"cost\",\"handoffs\",\"investigations\"].includes(value)&&loadOrbitIntelligenceCommandCentreV545().then(()=>{value===\"investigations\"&&loadIntelligenceInvestigationsV555()}).catch(renderIntelligenceCommandErrorV545),value===\"recommendations\"&&loadIntelligenceRecommendationsV545(),value===\"knowledge\"&&(loadOrbitIntelligence().catch(renderOrbitIntelligenceError),orbitKnowledgeViewV702===\"engineering-manual\"&&loadEngineeringManualV702(!1).catch(err=>renderReferenceErrorV702(\"orbitEngineeringManualArticleV702\",err))),value===\"incidents\"&&loadOrbitIncidentsV702(!1).catch(err=>renderReferenceErrorV702(\"orbitIncidentListV702\",err)),value===\"protected-systems\"&&loadProtectedSystemsV702(!1).catch(err=>renderReferenceErrorV702(\"orbitProtectedSystemListV702\",err)),value===\"assistant\"&&document.getElementById(\"orbitIntelligenceQuestion\")?.focus())}document.querySelectorAll(\"[data-orbit-intelligence-tab]\").forEach(button2=>button2.addEventListener(\"click\",()=>setOrbitIntelligenceTab(button2.dataset.orbitIntelligenceTab))),document.querySelectorAll(\"[data-intelligence-open]\").forEach(button2=>button2.addEventListener(\"click\",()=>setOrbitIntelligenceTab(button2.dataset.intelligenceOpen)));try{orbitKnowledgeViewV702=sessionStorage.getItem(\"orbit-knowledge-view-v702\")===\"engineering-manual\"?\"engineering-manual\":\"handbook\"}catch{orbitKnowledgeViewV702=\"handbook\"}setKnowledgeViewV702(orbitKnowledgeViewV702);try{setOrbitIntelligenceTab(sessionStorage.getItem(\"orbit-intelligence-tab\")||\"overview\")}catch{setOrbitIntelligenceTab(\"overview\")}document.querySelectorAll(\"[data-reference-knowledge-open-v702]\").forEach(button2=>button2.addEventListener(\"click\",()=>setKnowledgeViewV702(button2.dataset.referenceKnowledgeOpenV702))),document.getElementById(\"refreshEngineeringManualV702\")?.addEventListener(\"click\",()=>loadEngineeringManualV702(!0).catch(err=>renderReferenceErrorV702(\"orbitEngineeringManualArticleV702\",err))),document.getElementById(\"orbitEngineeringManualSearchV702\")?.addEventListener(\"input\",function(){const reference=orbitReferenceCacheV702.engineeringManual;reference&&renderEngineeringManualV702(reference,this.value)}),document.getElementById(\"orbitEngineeringManualNavV702\")?.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-engineering-heading-v702]\");button2&&document.getElementById(\"orbit-engineering-heading-v702-\"+button2.dataset.engineeringHeadingV702)?.scrollIntoView({behavior:\"smooth\",block:\"start\"})}),document.getElementById(\"refreshOrbitIncidentsV702\")?.addEventListener(\"click\",()=>loadOrbitIncidentsV702(!0).catch(err=>renderReferenceErrorV702(\"orbitIncidentListV702\",err))),document.getElementById(\"orbitIncidentSearchV702\")?.addEventListener(\"input\",renderIncidentsV702),document.getElementById(\"orbitIncidentStatusV702\")?.addEventListener(\"change\",renderIncidentsV702),document.getElementById(\"refreshProtectedSystemsV702\")?.addEventListener(\"click\",()=>loadProtectedSystemsV702(!0).catch(err=>renderReferenceErrorV702(\"orbitProtectedSystemListV702\",err))),document.getElementById(\"newOrbitConversationButton\")?.addEventListener(\"click\",newOrbitConversationV543),document.getElementById(\"orbitIntelligenceAnswer\")?.addEventListener(\"click\",function(event){const button2=event.target.closest(\"[data-orbit-page]\");if(!button2)return;const page=normaliseOrbitKnowledgePages(orbitKnowledgePages).find(function(p){return p.slug===button2.dataset.orbitPage});page&&(setOrbitIntelligenceTab(\"knowledge\"),showOrbitKnowledgePage(page))}),document.getElementById(\"orbitKnowledgeSearch\")?.addEventListener(\"input\",function(){const input=this,q=input.value.trim();clearTimeout(orbitKnowledgeSearchTimer),orbitKnowledgeSearchTimer=setTimeout(async function(){if(!q){Object.keys(groupOrbitKnowledgePages(orbitKnowledgePages)).forEach(function(name){orbitKnowledgeCollapsed.add(name)}),renderOrbitKnowledgeNav(orbitKnowledgePages);return}const terms=q.toLowerCase().split(/\\s+/).filter(Boolean),matches=orbitKnowledgePages.map(function(page){const haystack=(page.title+\" \"+page.summary+\" \"+page.category).toLowerCase(),score=terms.reduce(function(total,term){return total+(haystack.includes(term)?2:0)},0)+(page.title.toLowerCase().includes(q.toLowerCase())?6:0)+(page.category.toLowerCase().includes(q.toLowerCase())?2:0);return{page,score}}).filter(function(item){return item.score>0}).sort(function(a,b){return b.score-a.score||a.page.order-b.page.order}).slice(0,60).map(function(item){return item.page});input.value.trim()===q&&(orbitKnowledgeCollapsed.clear(),renderOrbitKnowledgeNav(matches))},180)}),document.getElementById(\"refreshOrbitIntelligenceButton\")?.addEventListener(\"click\",async function(){const button2=this,selectedSlug=orbitKnowledgeCurrent&&orbitKnowledgeCurrent.slug&&!String(orbitKnowledgeCurrent.slug).startsWith(\"__\")?orbitKnowledgeCurrent.slug:\"\",search=document.getElementById(\"orbitKnowledgeSearch\"),searchValue=search?search.value:\"\",article=document.getElementById(\"orbitKnowledgeArticle\"),articleTop=article?article.getBoundingClientRect().top:0,original=button2.textContent;button2.disabled=!0,button2.textContent=\"Refreshing\\u2026\";try{orbitKnowledgePageCache.clear(),orbitKnowledgeLoaded=!1,await loadOrbitIntelligence(!0);const selected=selectedSlug?orbitKnowledgePages.find(function(page){return page.slug===selectedSlug}):null;selected&&await showOrbitKnowledgePage(selected),search&&(search.value=searchValue,search.dispatchEvent(new Event(\"input\",{bubbles:!0}))),requestAnimationFrame(function(){if(!article)return;const delta=article.getBoundingClientRect().top-articleTop;Math.abs(delta)>1&&window.scrollBy({top:delta,behavior:\"auto\"})}),setNotice2(\"Orbit Intelligence refreshed. Current chapter preserved.\")}catch(err){renderOrbitIntelligenceError(err),setNotice2(\"Could not refresh Orbit Intelligence: \"+(err.message||err),!0)}finally{button2.disabled=!1,button2.textContent=original||\"Refresh Intelligence\"}}),document.getElementById(\"refreshOrbitIntelligenceTopButton\")?.addEventListener(\"click\",async function(){const top=this,hidden=document.getElementById(\"refreshOrbitIntelligenceButton\"),original=top.textContent;top.disabled=!0,top.classList.add(\"is-working\"),top.textContent=\"Refreshing Intelligence\\u2026\";try{hidden?.click();let waited=0;for(;hidden?.disabled&&waited<3e4;)await new Promise(r=>setTimeout(r,150)),waited+=150;top.textContent=\"Intelligence refreshed\",top.classList.remove(\"is-working\"),top.classList.add(\"is-success\"),setTimeout(()=>{top.classList.remove(\"is-success\"),top.textContent=original||\"Refresh Intelligence\",top.disabled=!1},1400)}catch{top.classList.remove(\"is-working\"),top.textContent=\"Refresh failed\",setTimeout(()=>{top.textContent=original||\"Refresh Intelligence\",top.disabled=!1},1800)}}),document.getElementById(\"orbitIntelligenceHealthButton\")?.addEventListener(\"click\",async function(){const article=document.getElementById(\"orbitKnowledgeArticle\");article&&(article.innerHTML=\"<div class='orbit-knowledge-loading' role='status'>Running Intelligence health check\\u2026</div>\");try{const data=await api(\"/api/admin/intelligence/health\"),health=data.health||{};orbitKnowledgeCurrent={slug:\"__health\",title:\"Intelligence Health\",summary:\"Live diagnostic status for the Orbit knowledge system.\",category:\"Orbit Intelligence\",content:\"\"},document.getElementById(\"orbitKnowledgeCategory\").textContent=\"Orbit Intelligence\",document.getElementById(\"orbitKnowledgeTitle\").textContent=\"Intelligence Health\",document.getElementById(\"orbitKnowledgeSummary\").textContent=\"Live diagnostic status for the Orbit knowledge system.\",document.getElementById(\"orbitKnowledgeUpdated\").textContent=\"Generated \"+new Date(health.generatedAt).toLocaleString(\"en-GB\"),document.getElementById(\"editOrbitKnowledgeButton\").hidden=!0,article&&(article.innerHTML=\"<div class='orbit-health-grid'>\"+[[\"Version\",health.version],[\"Build\",health.build],[\"Handbook pages\",health.pageCount],[\"Duplicate slugs\",health.duplicateSlugStatus],[\"Documentation integrity\",health.documentationIntegrity],[\"Search index\",health.searchIndexStatus],[\"Metadata cache\",health.cache&&health.cache.metadataWarm?\"Warm\":\"Cold\"],[\"Cached pages\",health.cache?health.cache.cachedPages:0],[\"Cache TTL\",health.cache?Math.round(health.cache.ttlMs/1e3)+\" seconds\":\"Unknown\"]].map(item=>\"<section><span>\"+esc(item[0])+\"</span><strong>\"+esc(item[1])+\"</strong></section>\").join(\"\")+\"</div>\")}catch(err){article&&(article.innerHTML=\"<p class='error'>\"+esc(err.message||err)+\"</p>\")}}),document.getElementById(\"askOrbitIntelligenceButton\")?.addEventListener(\"click\",function(){askOrbitIntelligence()}),document.getElementById(\"orbitIntelligenceQuestion\")?.addEventListener(\"keydown\",function(event){event.isComposing||event.key!==\"Enter\"||event.shiftKey||(event.preventDefault(),askOrbitIntelligence())}),document.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-orbit-question]\");button2&&askOrbitIntelligence(button2.dataset.orbitQuestion)}),document.getElementById(\"editOrbitKnowledgeButton\")?.addEventListener(\"click\",openOrbitKnowledgeEditor),document.getElementById(\"closeOrbitKnowledgeEditor\")?.addEventListener(\"click\",function(){document.getElementById(\"orbitKnowledgeEditDialog\")?.close()}),document.getElementById(\"saveOrbitKnowledgeButton\")?.addEventListener(\"click\",saveOrbitKnowledgePage);let orbitReviewScreenshots=[],orbitReviewAttachments=[],orbitDevelopmentNotes=[],orbitRoadmapItems=[],orbitDevelopmentCommentScreenshots=[];const orbitVerificationDraftsV149=new Map,orbitVerificationEvidenceV149=new Map;let orbitOpenVerificationNoteV149=null;function acceptanceReadyAtV239(note){const transition=(Array.isArray(note?.lifecycleHistory)?note.lifecycleHistory:[]).find(function(item){return String(item?.to||item?.status||\"\")===\"Ready for Testing\"}),raw=transition?.changedAt||transition?.createdAt||note?.implementationEvidence?.recordedAt||note?.releaseReadyAt||note?.createdAt||\"\",time=Date.parse(raw);return Number.isFinite(time)?time:Number.MAX_SAFE_INTEGER}function stableAcceptanceRowsV239(notes){const key=\"orbit-acceptance-order-v239\";let saved=[];try{saved=JSON.parse(localStorage.getItem(key)||\"[]\"),Array.isArray(saved)||(saved=[])}catch{saved=[]}const currentIds=new Set(notes.map(function(note){return String(note.id||\"\")}));saved=saved.filter(function(id){return currentIds.has(String(id))}),notes.slice().sort(function(a,b){return acceptanceReadyAtV239(a)-acceptanceReadyAtV239(b)||String(a.id||\"\").localeCompare(String(b.id||\"\"))}).forEach(function(note){const id=String(note.id||\"\");id&&!saved.includes(id)&&saved.push(id)});try{localStorage.setItem(key,JSON.stringify(saved))}catch{}const rank=new Map(saved.map(function(id,index){return[String(id),index]}));return notes.slice().sort(function(a,b){return(rank.get(String(a.id||\"\"))??Number.MAX_SAFE_INTEGER)-(rank.get(String(b.id||\"\"))??Number.MAX_SAFE_INTEGER)||String(a.id||\"\").localeCompare(String(b.id||\"\"))})}function saveVerificationDraftV149(noteId,value){orbitVerificationDraftsV149.set(noteId,String(value||\"\"));try{sessionStorage.setItem(\"orbit-verification-draft-\"+noteId,String(value||\"\"))}catch{}}function getVerificationDraftV149(noteId){if(orbitVerificationDraftsV149.has(noteId))return orbitVerificationDraftsV149.get(noteId);try{return sessionStorage.getItem(\"orbit-verification-draft-\"+noteId)||\"\"}catch{return\"\"}}function clearVerificationDraftV149(noteId){orbitVerificationDraftsV149.delete(noteId);try{sessionStorage.removeItem(\"orbit-verification-draft-\"+noteId)}catch{}}function orbitCurrentModule(){return document.querySelector(\".orbit-module.active\")?.dataset.module||state.currentModule||\"\"}function orbitSelectedTab(){const active=document.querySelector('.orbit-module.active [role=\"tab\"].active,.orbit-module.active .active[data-tab],.orbit-module.active button.active[data-engagement-tab],.orbit-module.active button.active[data-settings-tab]');return active?.textContent?.trim()||active?.dataset?.tab||active?.dataset?.engagementTab||\"\"}function orbitSelectedRecord(){const selected=document.querySelector(\".orbit-module.active\")?.querySelector('[aria-selected=\"true\"],[data-selected=\"true\"],tr.active,.selected');return selected?.dataset?.memberId||selected?.dataset?.id||selected?.textContent?.trim()?.slice(0,240)||\"\"}function captureOrbitReviewContext(forceSurface=!1){const mod=orbitCurrentModule(),active=document.querySelector(\".orbit-module.active\"),workspace=moduleWorkspaceMap[mod]||\"home\",workspaceConfig=adminWorkspaceConfig[workspace]||adminWorkspaceConfig.home,reviewActive=forceSurface&&mod===\"development\"&&!document.getElementById(\"orbitReviewSurfacePanel\")?.hidden,reviewUrl=String(document.getElementById(\"orbitReviewSurfaceUrl\")?.value||\"\").trim(),reviewName=document.getElementById(\"orbitReviewSurfaceName\")?.textContent?.trim()||\"\",activeSurface=document.querySelector(\"[data-review-surface].active\")?.dataset.reviewSurface||\"\",persona=activeSurface===\"members-pending\"?\"pending\":activeSurface===\"members-active\"?\"active\":\"\";return{product:reviewActive?activeSurface.startsWith(\"members\")?\"members-area\":activeSurface:\"admin-os\",persona,reviewMode:reviewActive,page:reviewActive?reviewName||\"Orbit Studio Review\":workspaceConfig.title||document.title,module:reviewActive?\"review-\"+(document.querySelector(\"[data-review-surface].active\")?.dataset.reviewSurface||\"custom\"):mod,url:reviewActive&&reviewUrl?reviewUrl:location.href,pageTitle:reviewActive?reviewName||reviewUrl:active?.querySelector(\"h1,h2\")?.textContent?.trim()||workspaceConfig.title||document.title,selectedTab:reviewActive?\"Live Review Studio\":orbitSelectedTab(),selectedRecord:orbitSelectedRecord(),orbitVersion:\"V716.0.0\",handbookVersion:\"V716.0.0\",viewport:innerWidth+\" \\xD7 \"+innerHeight,device:innerWidth<768?\"Mobile\":innerWidth<1100?\"Tablet\":\"Desktop\",browser:navigator.userAgent,visibleHeadings:[...active?.querySelectorAll(\"h1,h2,h3\")||[]].filter(el=>{const r=el.getBoundingClientRect();return r.bottom>0&&r.top<innerHeight}).map(el=>el.textContent.trim()).filter(Boolean).slice(0,12),capturedAt:new Date().toISOString()}}function openOrbitDialog(dialog){if(!dialog)throw new Error(\"The requested Orbit OS panel is not available on this page.\");dialog.open||(typeof dialog.showModal==\"function\"?dialog.showModal():(dialog.setAttribute(\"open\",\"\"),dialog.style.display=\"block\"))}function closeOrbitDialog(dialog){dialog&&(typeof dialog.close==\"function\"&&dialog.open?dialog.close():(dialog.removeAttribute(\"open\"),dialog.style.display=\"none\"))}const ORBIT_QUICK_NOTE_DRAFT_KEY=\"orbitQuickNoteDraftV415\";function quickNoteDraftV415(){try{return JSON.parse(localStorage.getItem(ORBIT_QUICK_NOTE_DRAFT_KEY)||\"null\")}catch{return null}}function saveQuickNoteDraftV415(){const dialog=document.getElementById(\"orbitReviewNoteDialog\");if(!dialog)return;const payload={description:document.getElementById(\"reviewNoteDescription\")?.value||\"\",title:document.getElementById(\"reviewNoteTitle\")?.value||\"\",expected:document.getElementById(\"reviewNoteExpected\")?.value||\"\",actual:document.getElementById(\"reviewNoteActual\")?.value||\"\",type:document.getElementById(\"reviewNoteType\")?.value||\"Improvement\",priority:document.getElementById(\"reviewNotePriority\")?.value||\"Normal\",status:document.getElementById(\"reviewNoteStatus\")?.value||\"Open\",context:dialog.dataset.context||\"\",screenshots:orbitReviewScreenshots,attachments:orbitReviewAttachments,updatedAt:new Date().toISOString()};try{localStorage.setItem(ORBIT_QUICK_NOTE_DRAFT_KEY,JSON.stringify(payload)),document.getElementById(\"orbitReviewNotesFloatingButton\")?.classList.add(\"has-draft\")}catch{const safe={...payload,screenshots:[],attachments:[]};try{localStorage.setItem(ORBIT_QUICK_NOTE_DRAFT_KEY,JSON.stringify(safe))}catch{}}}function clearQuickNoteDraftV415(){try{localStorage.removeItem(ORBIT_QUICK_NOTE_DRAFT_KEY)}catch{}document.getElementById(\"orbitReviewNotesFloatingButton\")?.classList.remove(\"has-draft\")}function restoreQuickNoteDraftV415(draft){if(!draft)return!1;const set=(id,value)=>{const el=document.getElementById(id);el&&(el.value=value||\"\")};set(\"reviewNoteDescription\",draft.description),set(\"reviewNoteTitle\",draft.title),set(\"reviewNoteExpected\",draft.expected),set(\"reviewNoteActual\",draft.actual),set(\"reviewNoteType\",draft.type||\"Improvement\"),set(\"reviewNotePriority\",draft.priority||\"Normal\"),set(\"reviewNoteStatus\",draft.status||\"Open\"),orbitReviewScreenshots=Array.isArray(draft.screenshots)?draft.screenshots:[],orbitReviewAttachments=Array.isArray(draft.attachments)?draft.attachments:[],renderReviewEvidenceV563();const dialog=document.getElementById(\"orbitReviewNoteDialog\");return dialog&&draft.context&&(dialog.dataset.context=draft.context),document.getElementById(\"orbitReviewNotesFloatingButton\")?.classList.add(\"has-draft\"),!0}function openOrbitReviewNote(forceSurface=!1){const dialog=document.getElementById(\"orbitReviewNoteDialog\");try{const context=captureOrbitReviewContext(forceSurface),draft=quickNoteDraftV415();orbitReviewScreenshots=[],orbitReviewAttachments=[];const preview=document.getElementById(\"reviewScreenshotPreview\");preview&&(preview.innerHTML=\"\");const title=document.getElementById(\"reviewNoteTitle\");title&&(title.value=\"\");const status=document.getElementById(\"reviewNoteStatus\");status&&(status.value=\"Open\");const type=document.getElementById(\"reviewNoteType\");type&&(type.value=\"Improvement\");const priority=document.getElementById(\"reviewNotePriority\");priority&&(priority.value=\"Normal\");const description=document.getElementById(\"reviewNoteDescription\");description&&(description.value=\"\");const expected=document.getElementById(\"reviewNoteExpected\");expected&&(expected.value=\"\");const actual=document.getElementById(\"reviewNoteActual\");actual&&(actual.value=\"\");const summary=document.getElementById(\"reviewNoteContextSummary\");summary&&(summary.textContent=(context.pageTitle||context.module||\"Admin OS\")+\" \\xB7 \"+context.device+\" \\xB7 \"+new Date(context.capturedAt).toLocaleString(\"en-GB\"));const details=document.getElementById(\"reviewNoteContextDetails\");if(details&&(details.textContent=JSON.stringify(context,null,2)),!dialog)throw new Error(\"The Report Issue panel could not be found. Refresh Admin OS and try again.\");dialog.dataset.context=JSON.stringify(context),draft&&restoreQuickNoteDraftV415(draft),openOrbitDialog(dialog),setTimeout(()=>description?.focus(),60)}catch(err){setNotice2(\"Could not open Report Issue: \"+(err.message||err),!0)}}function formatEvidenceBytesV563(value){const bytes=Number(value||0);return bytes?bytes>=1e6?(bytes/1e6).toFixed(bytes>=1e7?0:1)+\" MB\":bytes>=1e3?Math.round(bytes/1e3)+\" KB\":bytes+\" B\":\"\"}function renderReviewEvidenceV563(){const box=document.getElementById(\"reviewScreenshotPreview\");if(!box)return;const images=orbitReviewScreenshots.map((img,i)=>\"<figure><img src='\"+img.dataUrl+\"' alt='Pasted screenshot'><figcaption><span>\"+esc(img.name)+\"</span><button type='button' data-remove-review-image='\"+i+\"'>Remove</button></figcaption></figure>\"),files=orbitReviewAttachments.map((file,i)=>\"<article class='orbit-file-evidence-v563'><div><strong>\\u{1F4CE} \"+esc(file.name)+\"</strong><small>\"+esc(file.mimeType||\"Document\")+(file.uploadBytes?\" \\xB7 \"+formatEvidenceBytesV563(file.uploadBytes):\"\")+\"</small></div><button type='button' class='secondary' data-remove-review-file='\"+i+\"'>Remove</button></article>\");box.innerHTML=images.concat(files).join(\"\")}function renderReviewScreenshots(){renderReviewEvidenceV563()}async function optimiseDevelopmentScreenshotV341(file){if(!/^image\\/(png|jpeg|webp)$/i.test(file.type))throw new Error(\"Only PNG, JPG and WebP screenshots are supported.\");if(file.size>8e6)throw new Error((file.name||\"Screenshot\")+\" is larger than 8 MB.\");if(file.size<=45e4)return file;let bitmap=null;try{bitmap=await createImageBitmap(file);const scale=Math.min(1,1600/Math.max(bitmap.width,bitmap.height)),width=Math.max(1,Math.round(bitmap.width*scale)),height=Math.max(1,Math.round(bitmap.height*scale)),canvas=document.createElement(\"canvas\");canvas.width=width,canvas.height=height,canvas.getContext(\"2d\",{alpha:!1}).drawImage(bitmap,0,0,width,height);const blob=await new Promise(resolve=>canvas.toBlob(resolve,\"image/webp\",.84));return!blob||blob.size>=file.size?file:new File([blob],String(file.name||\"screenshot\").replace(/\\.[^.]+$/,\"\")+\".webp\",{type:\"image/webp\",lastModified:Date.now()})}catch{return file}finally{try{bitmap?.close?.()}catch{}}}function fileAsOrbitEvidenceV341(file,prefix=\"IMG\"){return new Promise((resolve,reject)=>{const reader=new FileReader;reader.onload=()=>resolve({id:prefix+\"-\"+Date.now()+\"-\"+Math.random().toString(16).slice(2),name:file.name||(prefix===\"FILE\"?\"Attachment\":\"Pasted screenshot\"),mimeType:file.type,dataUrl:reader.result,uploadBytes:file.size}),reader.onerror=reject,reader.readAsDataURL(file)})}async function addReviewImageFile(file){const optimised=await optimiseDevelopmentScreenshotV341(file),image=await fileAsOrbitEvidenceV341(optimised,\"IMG\");orbitReviewScreenshots.push(image),renderReviewEvidenceV563(),saveQuickNoteDraftV415()}const ORBIT_NOTE_FILE_TYPES_V563=new Set([\"application/pdf\",\"text/csv\",\"text/plain\",\"application/json\",\"application/msword\",\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",\"application/vnd.ms-excel\",\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"]);function noteFileMimeV563(file){const type=String(file?.type||\"\").toLowerCase();if(type)return type;const ext=String(file?.name||\"\").toLowerCase().split(\".\").pop();return{pdf:\"application/pdf\",csv:\"text/csv\",txt:\"text/plain\",json:\"application/json\",doc:\"application/msword\",docx:\"application/vnd.openxmlformats-officedocument.wordprocessingml.document\",xls:\"application/vnd.ms-excel\",xlsx:\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\"}[ext]||\"\"}async function addReviewAttachmentFileV563(file){const mimeType=noteFileMimeV563(file);if(!ORBIT_NOTE_FILE_TYPES_V563.has(mimeType))throw new Error((file.name||\"File\")+\" is not a supported note attachment. Use PDF, CSV, TXT, JSON, Word or Excel.\");if(Number(file.size||0)>3e6)throw new Error((file.name||\"File\")+\" is larger than 3 MB.\");if(orbitReviewAttachments.reduce((sum,item)=>sum+Number(item.uploadBytes||0),0)+Number(file.size||0)>6e6)throw new Error(\"Quick Note attachments are limited to 6 MB total.\");const normalised=new File([file],file.name,{type:mimeType,lastModified:file.lastModified||Date.now()}),evidence=await fileAsOrbitEvidenceV341(normalised,\"FILE\");orbitReviewAttachments.push(evidence),renderReviewEvidenceV563(),saveQuickNoteDraftV415()}async function addReviewFiles(files){const remaining=Math.max(0,12-orbitReviewScreenshots.length-orbitReviewAttachments.length);for(const file of[...files].slice(0,remaining))try{String(file.type||\"\").startsWith(\"image/\")?await addReviewImageFile(file):await addReviewAttachmentFileV563(file)}catch(err){setNotice2(err.message,!0)}}async function saveOrbitReviewNote(){const button2=document.getElementById(\"saveReviewNoteButton\"),result=document.getElementById(\"reviewNoteResult\"),descriptionInput=document.getElementById(\"reviewNoteDescription\");if(!button2||!result||!descriptionInput){setNotice2(\"Review Note form could not be opened correctly. Refresh Admin OS and try again.\",!0);return}const description=descriptionInput.value.trim();if(!description){result.hidden=!1,result.textContent=\"Add a description before saving.\";return}const original=button2.textContent;button2.disabled=!0,button2.textContent=\"Saving\\u2026\";try{const context=JSON.parse(document.getElementById(\"orbitReviewNoteDialog\").dataset.context||\"{}\"),data=await api(\"/api/admin/development-notes\",{method:\"POST\",body:JSON.stringify({source:\"quick_note\",type:document.getElementById(\"reviewNoteType\").value,priority:document.getElementById(\"reviewNotePriority\").value,status:document.getElementById(\"reviewNoteStatus\").value,title:document.getElementById(\"reviewNoteTitle\").value,description,expectedBehaviour:document.getElementById(\"reviewNoteExpected\").value,actualBehaviour:document.getElementById(\"reviewNoteActual\").value,context,screenshots:orbitReviewScreenshots,attachments:orbitReviewAttachments})});if(!data?.note?.id)throw new Error(\"Orbit did not return a saved note ID. The note has not been confirmed.\");clearQuickNoteDraftV415(),orbitReviewScreenshots=[],orbitReviewAttachments=[],result.hidden=!1,result.textContent=\"Saved as \"+data.note.id+\".\",setNotice2(\"Quick Note saved and verified.\"),setTimeout(()=>closeOrbitDialog(document.getElementById(\"orbitReviewNoteDialog\")),650),loadOrbitDevelopmentHub().catch(err=>setNotice2(\"Note saved. Development Hub will refresh when reopened: \"+(err.message||err),!0))}catch(err){result.hidden=!1,result.textContent=err.message||err}finally{button2.disabled=!1,button2.textContent=original}}function developmentStatusOptions(current,roadmap){return(roadmap?[\"Idea\",\"Planned\",\"Approved\",\"In Development\",\"Testing\",\"Live\",\"Cancelled\"]:[\"Open\",\"In Development\",\"Ready for Testing\",\"Complete\",\"Archived\"]).map(v=>\"<option\"+(v===current?\" selected\":\"\")+\">\"+v+\"</option>\").join(\"\")}function aiDossierBadgeV548(dossier,label){if(!dossier)return\"<span class='orbit-ai-dossier-badge-v548 is-pending'>AI research pending</span>\";const status=dossier.viability?.status||\"researched\",when=dossier.researchedAt?new Date(dossier.researchedAt).toLocaleString(\"en-GB\"):\"researched\";return\"<span class='orbit-ai-dossier-badge-v548' title='\"+esc(when)+\"'>\"+esc(label||\"AI research\")+\" \\xB7 \"+esc(status.replace(/_/g,\" \"))+\"</span>\"}function renderAiDossierV548(dossier,type,id){if(!dossier)return\"<section class='orbit-ai-dossier-v548 is-empty'><div><strong>AI \"+(type===\"roadmap\"?\"Roadmap Research\":\"Engineering Dossier\")+\"</strong><p>Orbit has not researched this record yet. The persistent read-only agent will pick it up automatically, or you can research it now.</p></div><button type='button' class='secondary' data-ai-dossier-refresh-v548='\"+esc(type)+\"' data-ai-dossier-id-v548='\"+esc(id)+\"'>Research now</button></section>\";const roots=(dossier.likelyRootCauses||[]).slice(0,6).map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\"),files=(dossier.relatedFiles||[]).slice(0,10).map(x=>\"<li><code>\"+esc(x)+\"</code></li>\").join(\"\"),options=(dossier.implementationOptions||[]).slice(0,4).map(x=>\"<article><strong>\"+esc(x.name||\"Option\")+\"</strong><span class='orbit-ai-risk-v548'>\"+esc(x.risk||\"\")+\"</span><p>\"+esc(x.summary||\"\")+\"</p></article>\").join(\"\"),tests=(dossier.requiredRegressionTests||[]).slice(0,10).map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\"),deps=(dossier.dependencies||[]).slice(0,12).map(x=>\"<code>\"+esc(x)+\"</code>\").join(\" \");return\"<section class='orbit-ai-dossier-v548'><div class='orbit-ai-dossier-head-v548'><div><p class='orbit-kicker'>READ ONLY \\xB7 \"+esc(dossier.analysisMode===\"ai\"?dossier.model||\"AI researched\":\"Evidence researched\")+\"</p><h3>\"+(type===\"roadmap\"?\"AI Roadmap Research\":\"AI Engineering Dossier\")+\"</h3><small>Updated \"+esc(dossier.researchedAt?new Date(dossier.researchedAt).toLocaleString(\"en-GB\"):\"unknown\")+\" \\xB7 no code or production changes</small></div><button type='button' class='secondary' data-ai-dossier-refresh-v548='\"+esc(type)+\"' data-ai-dossier-id-v548='\"+esc(id)+\"'>Refresh research</button></div><div class='orbit-ai-dossier-summary-v548'><strong>What Orbit thinks</strong><p>\"+esc(dossier.plainEnglishDiagnosis||\"Research complete.\")+\"</p></div>\"+(dossier.viability?\"<div class='orbit-ai-viability-v548' data-status='\"+esc(dossier.viability.status||\"\")+\"'><strong>Viability: \"+esc(String(dossier.viability.status||\"unknown\").replace(/_/g,\" \"))+\" \\xB7 \"+esc(dossier.viability.confidence||\"\")+\" confidence</strong><p>\"+esc(dossier.viability.reason||\"\")+\"</p></div>\":\"\")+(dossier.recommendedNextStep?\"<div class='orbit-ai-next-v548'><strong>Recommended next step</strong><p>\"+esc(dossier.recommendedNextStep)+\"</p></div>\":\"\")+\"<details open><summary>Implementation options</summary><div class='orbit-ai-options-v548'>\"+(options||\"<p class='orbit-muted'>No implementation option has been proven yet.</p>\")+\"</div></details>\"+(roots?\"<details><summary>Likely causes / hypotheses</summary><ul>\"+roots+\"</ul></details>\":\"\")+(files?\"<details><summary>Related source files</summary><ul>\"+files+\"</ul></details>\":\"\")+(tests?\"<details><summary>Regression tests required</summary><ol>\"+tests+\"</ol></details>\":\"\")+(deps?\"<details><summary>Related notes / dependencies</summary><p class='orbit-ai-deps-v548'>\"+deps+\"</p></details>\":\"\")+\"</section>\"}function renderDevelopmentPacketV558(packet){if(!packet)return\"\";const steps=(packet.implementationSteps||[]).slice(0,10).map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\"),files=(packet.filesToInspect||[]).slice(0,16).map(x=>\"<li><code>\"+esc(x)+\"</code></li>\").join(\"\"),tests=(packet.proposedTests||[]).slice(0,12).map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\"),acceptance=(packet.acceptanceChecklist||[]).slice(0,12).map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\");return\"<section class='orbit-ai-dossier-v548 orbit-development-packet-v558'><div class='orbit-ai-dossier-head-v548'><div><p class='orbit-kicker'>DEVELOPMENT AGENT \\xB7 DRAFT ONLY</p><h3>Implementation Packet</h3><small>Prepared \"+esc(packet.updatedAt?new Date(packet.updatedAt).toLocaleString(\"en-GB\"):\"\")+\" \\xB7 \"+esc(packet.gate?.label||\"No execution authority\")+\"</small></div></div><div class='orbit-ai-dossier-summary-v548'><strong>Proposed approach</strong><p>\"+esc(packet.summary||\"Implementation plan prepared.\")+\"</p></div>\"+(steps?\"<details open><summary>Implementation steps</summary><ol>\"+steps+\"</ol></details>\":\"\")+(files?\"<details open><summary>Exact source targets</summary><ul>\"+files+\"</ul></details>\":\"\")+(tests?\"<details><summary>Regression tests to run</summary><ol>\"+tests+\"</ol></details>\":\"\")+(acceptance?\"<details><summary>Acceptance checklist</summary><ol>\"+acceptance+\"</ol></details>\":\"\")+\"<p class='orbit-muted'>Planning evidence only. Source writes 0 \\xB7 production writes 0 \\xB7 staging unavailable.</p></section>\"}function renderDevelopmentNotes(){const box=document.getElementById(\"orbitDevelopmentNotesList\");if(!box)return;const filter=document.getElementById(\"developmentNoteStatusFilter\")?.value||\"All\",rows=orbitDevelopmentNotes.filter(n=>($2(\"developmentAutoErrorsOnlyV71601\")?.checked?n.source===\"ui_error_sentinel\":operatorDevelopmentItemV559(n))&&![\"Complete\",\"Archived\"].includes(n.status)&&(filter===\"All\"||n.status===filter));box.innerHTML=rows.length?rows.map(n=>\"<article class='orbit-development-card' data-note-id='\"+esc(n.id)+\"'><div class='orbit-development-card-top'><div><span class='orbit-development-type'>\"+esc(n.type)+\"</span><h4>\"+esc(n.title)+\"</h4><p>\"+esc(n.description).slice(0,300)+\"</p></div><div class='orbit-development-card-side-v548'><span class='orbit-priority orbit-priority-\"+esc(n.priority).toLowerCase()+\"'>\"+esc(n.priority)+\"</span>\"+aiDossierBadgeV548(n.aiDossier,\"AI dossier\")+\"</div></div><div class='orbit-development-context'>\"+esc(n.context?.pageTitle||n.context?.module||\"Admin OS\")+\" \\xB7 \"+esc(n.context?.device||\"\")+\" \\xB7 \"+new Date(n.createdAt).toLocaleString(\"en-GB\")+(Number(n.screenshotCount||0)?\" \\xB7 \"+Number(n.screenshotCount||0)+\" screenshot\"+(Number(n.screenshotCount||0)===1?\"\":\"s\"):\"\")+(Number(n.attachmentCount||0)?\" \\xB7 \"+Number(n.attachmentCount||0)+\" file\"+(Number(n.attachmentCount||0)===1?\"\":\"s\"):\"\")+\"</div><div class='orbit-development-actions'><select data-note-status='\"+esc(n.id)+\"'>\"+developmentStatusOptions(n.status,!1)+\"</select><button type='button' class='secondary' data-view-note='\"+esc(n.id)+\"'>Open</button><button type='button' class='secondary' data-edit-note='\"+esc(n.id)+\"'>Edit</button><button type='button' class='secondary orbit-danger-button' data-delete-note='\"+esc(n.id)+\"'>Delete</button><button type='button' class='secondary' data-promote-note='\"+esc(n.id)+\"'>Promote to Roadmap</button></div></article>\").join(\"\"):\"<div class='orbit-empty-state'><strong>No notes in this view</strong><p>Use the floating Review Notes button while reviewing Admin OS.</p></div>\"}window.addEventListener(\"orbit:open-error-note\",event=>{const noteId=String(event.detail?.noteId||\"\");/^AUTO-ERR-[A-F0-9]{20}$/.test(noteId)&&openDevelopmentNoteById(noteId).catch(error=>setNotice2(error.message,!0))});async function openUiErrorDiagnosticsV71601(){let modal=$2(\"uiErrorDiagnosticsDialogV71601\");modal||(modal=document.createElement(\"dialog\"),modal.id=\"uiErrorDiagnosticsDialogV71601\",modal.className=\"orbit-dialog\",modal.dataset.orbitSentinelIgnore=\"diagnostic-history\",modal.setAttribute(\"aria-labelledby\",\"uiErrorDiagnosticsTitleV71601\"),modal.style.cssText=\"width:min(960px,94vw);max-height:88dvh;overflow:auto;padding:24px;border:0;border-radius:18px\",document.body.appendChild(modal)),modal.innerHTML='<div class=\"orbit-dialog-heading\"><div><p class=\"orbit-kicker\">READ-ONLY ERROR CAPTURE</p><h2 id=\"uiErrorDiagnosticsTitleV71601\">Error Sentinel diagnostics</h2></div><button type=\"button\" class=\"secondary\" data-error-diagnostics-close>Close</button></div><p role=\"status\">Loading saved incidents\\u2026</p>',modal.open||modal.showModal(),modal.querySelector(\"[data-error-diagnostics-close]\").onclick=()=>modal.close();try{const data=await api(\"/api/admin/ui-errors?limit=50\",{cacheMs:0,timeoutMs:15e3});if(!modal.isConnected)return;const body=document.createElement(\"div\");body.innerHTML=\"<p><strong>\"+Number(data.pending||0)+' occurrence(s) awaiting note confirmation.</strong> Captured means recorded, not fixed. No deployment or account changes are permitted.</p><p class=\"orbit-muted\">'+esc(data.policy)+\"</p>\"+(data.rows||[]).map(row=>'<article class=\"orbit-development-card\"><div><strong>'+esc(row.evidence?.message||\"Runtime error\")+\"</strong><p>\"+esc(row.evidence?.method||\"\")+\" \"+esc(row.evidence?.endpoint||\"\")+\" \\xB7 \"+esc(row.evidence?.version||\"\")+\"</p><p>\"+Number(row.occurrenceCount||0)+\" occurrence(s) \\xB7 \"+Number(row.recurrences||0)+\" recurrence(s) after a fix \\xB7 First \"+esc(prettyDate(row.firstSeen))+\" \\xB7 Last \"+esc(prettyDate(row.lastSeen))+'</p></div><button type=\"button\" class=\"secondary\" data-error-diagnostics-note=\"'+esc(row.noteId)+'\">Open '+esc(row.noteId)+\"</button></article>\").join(\"\"),(data.rows||[]).length||(body.innerHTML+=\"<p>No captured incidents yet.</p>\"),modal.querySelector('[role=\"status\"]')?.remove(),modal.appendChild(body),body.querySelectorAll(\"[data-error-diagnostics-note]\").forEach(button2=>button2.onclick=()=>{modal.close(),openDevelopmentNoteById(button2.dataset.errorDiagnosticsNote).catch(error=>setNotice2(error.message,!0))})}catch(error){modal.querySelector('[role=\"status\"]').textContent=\"Diagnostics could not be loaded. Close and retry; existing records are unchanged.\",setNotice2(error.message,!0)}}document.addEventListener(\"click\",event=>{event.target.closest?.(\"#uiErrorDiagnosticsV71601\")&&openUiErrorDiagnosticsV71601()}),document.addEventListener(\"change\",event=>{event.target?.id===\"developmentAutoErrorsOnlyV71601\"&&renderDevelopmentNotes()});function renderVerificationEvidence(noteId){const card=document.querySelector(\".orbit-verification-card[data-note-id='\"+CSS.escape(noteId)+\"']\");if(!card)return;const evidence=orbitVerificationEvidenceV149.get(noteId)||[],count=card.querySelector(\"[data-verification-evidence-count]\"),preview=card.querySelector(\"[data-verification-evidence-preview]\");count&&(count.textContent=evidence.length?evidence.length+\" screenshot\"+(evidence.length===1?\"\":\"s\")+\" attached\":\"No screenshots attached\"),preview&&(preview.innerHTML=evidence.map((x,i)=>\"<figure class='orbit-verification-evidence-item'><div class='orbit-verification-evidence-image'><img src='\"+x.dataUrl+\"' alt='Testing screenshot'><button type='button' class='orbit-verification-remove-image' data-remove-verification-image='\"+i+\"' aria-label='Remove screenshot \"+(i+1)+\"' title='Remove screenshot'>\\xD7</button></div><figcaption><span>\"+esc(x.name)+\"</span><button type='button' class='orbit-verification-remove-text' data-remove-verification-image='\"+i+\"'>Remove screenshot</button></figcaption></figure>\").join(\"\"))}function verificationClipboardImages(clipboardData){if(!clipboardData)return[];const itemFiles=[...clipboardData.items||[]].filter(item=>item.kind===\"file\").map(item=>{try{return item.getAsFile()}catch{return null}}).filter(file=>file&&(/^image\\//i.test(String(file.type||\"\"))||/\\.(png|jpe?g|webp)$/i.test(String(file.name||\"\")))),directFiles=[...clipboardData.files||[]].filter(file=>file&&(/^image\\//i.test(String(file.type||\"\"))||/\\.(png|jpe?g|webp)$/i.test(String(file.name||\"\"))));return[...itemFiles,...directFiles].filter((file,index,all)=>all.findIndex(other=>other===file||other.name===file.name&&other.size===file.size&&other.type===file.type)===index)}async function addVerificationFiles(noteId,files){const evidence=orbitVerificationEvidenceV149.get(noteId)||[];for(const file of[...files].slice(0,6-evidence.length))try{const optimised=await optimiseDevelopmentScreenshotV341(file),image=await fileAsOrbitEvidenceV341(optimised);if(evidence.some(existing=>existing.dataUrl===image.dataUrl))continue;evidence.push(image)}catch(error){setNotice2(error.message||String(error),!0);continue}orbitVerificationEvidenceV149.set(noteId,evidence),renderVerificationEvidence(noteId)}function verificationEditorIsActiveV257(){if(document.activeElement?.closest?.(\"[data-verification-feedback]\"))return!0;if(!orbitOpenVerificationNoteV149)return!1;const form=document.querySelector(\"[data-verification-form='\"+CSS.escape(orbitOpenVerificationNoteV149)+\"']\");return!!(form&&!form.hidden)}function acceptanceHeldV500(note){return note?.status===\"Ready for Testing\"&&note?.acceptanceHold?.held===!0}function operatorDevelopmentItemV559(note){return!(!note||note?.acceptancePolicy?.operatorAcceptanceRequired===!1||note?.source===\"release_acceptance\"||note?.source===\"engineering_change\"||note?.source===\"ui_error_sentinel\"||note?.intelligence?.internalTechnical===!0)}function operatorAcceptanceItemV559(note){return operatorDevelopmentItemV559(note)&&note?.status===\"Ready for Testing\"}function developerCommandLikeAcceptanceV688(value){const text2=String(value||\"\").trim();return/(?:^|\\s)(?:node|npm|npx|yarn|pnpm|python3?|pytest|bash|sh|curl|grep|rg)\\s|backend\\/scripts\\/|theme\\/assets\\/|\\.(?:js|py|sh)(?:\\s|$)/i.test(text2)}function operatorAcceptanceInstructionsV688(n){const meta=n?.releaseAcceptance||{},structured=(Array.isArray(meta.steps)?meta.steps:[]).map(step=>({action:String(step?.action||\"\").trim(),expected:String(step?.expected||\"\").trim()})).filter(step=>step.action&&!developerCommandLikeAcceptanceV688(step.action));if(structured.length)return structured;const priority=(Array.isArray(meta.priority)?meta.priority:[]).map(x=>String(x||\"\").trim()).filter(x=>x&&!developerCommandLikeAcceptanceV688(x));if(priority.length)return priority.map(action=>({action,expected:\"\"}));const adaptive=(Array.isArray(n?.adaptiveScope?.acceptanceTests)?n.adaptiveScope.acceptanceTests:[]).map(x=>String(x||\"\").trim()).filter(x=>x&&!developerCommandLikeAcceptanceV688(x));return adaptive.length?adaptive.map(action=>({action,expected:\"\"})):[{action:`Open ${String(n?.context?.pageTitle||n?.context?.page||n?.context?.module||\"the relevant Orbit screen\").trim()} and repeat the action described in the original note.`,expected:String(n?.expectedBehaviour||n?.releaseAcceptance?.description||\"The original problem no longer occurs and the screen behaves as described.\").trim()}]}function operatorAcceptanceHtmlV688(n){return`<details open class=\"orbit-operator-acceptance-v688\"><summary>What to test now</summary><ol>${operatorAcceptanceInstructionsV688(n).map(step=>`<li><strong>${esc(step.action)}</strong>${step.expected?`<span class=\"orbit-acceptance-expected-v688\">Expected: ${esc(step.expected)}</span>`:\"\"}</li>`).join(\"\")}</ol></details>`}function engineeringEvidenceHtmlV688(n){const tests=(n?.implementationEvidence?.tests||[]).map(x=>String(x||\"\").trim()).filter(Boolean);return tests.length?`<details class=\"orbit-engineering-evidence-v688\"><summary>Automated engineering evidence</summary><p class=\"orbit-muted\">These checks were run by Orbit engineering. You do not need to run them manually.</p><ul>${tests.map(t=>`<li><code>${esc(t)}</code></li>`).join(\"\")}</ul></details>`:\"\"}function verificationCardHtmlV500(n,held=!1){const engineering=n.source===\"engineering_change\"||n.type===\"Engineering\",releaseAcceptance=n.source===\"release_acceptance\"||!!n.releaseAcceptance,parentIds=Array.isArray(n.releaseAcceptance?.parentNoteIds)?n.releaseAcceptance.parentNoteIds:[],holdMeta=held?\"<div class='orbit-acceptance-hold-meta-v500'><strong>Held for later testing</strong><span>\"+esc(n.acceptanceHold?.reason||\"Waiting for a natural real-world result.\")+(n.acceptanceHold?.heldAt?\" \\xB7 \"+new Date(n.acceptanceHold.heldAt).toLocaleString(\"en-GB\"):\"\")+\"</span></div>\":\"\",actions=engineering?\"<button type='button' data-view-note='\"+esc(n.id)+\"' class='secondary'>Read details</button><button type='button' data-mark-engineering-read='\"+esc(n.id)+\"' class='orbit-fixed-button'>Mark Read</button>\":\"<button type='button' data-view-note='\"+esc(n.id)+\"' class='secondary'>View original note</button><button type='button' data-verify-fixed='\"+esc(n.id)+\"' class='orbit-fixed-button'>Fixed</button><button type='button' data-verify-failed='\"+esc(n.id)+\"' class='orbit-not-fixed-button'>Not Fixed</button>\"+(held?\"<button type='button' data-resume-verification='\"+esc(n.id)+\"' class='secondary orbit-return-testing-v500'>Return to Testing</button>\":\"<button type='button' data-hold-verification='\"+esc(n.id)+\"' class='secondary orbit-test-later-v500'>Test Later</button>\")+\"<button type='button' data-delete-verification='\"+esc(n.id)+\"' class='secondary orbit-delete-test-button'>Delete</button>\";return\"<article class='orbit-development-card orbit-verification-card\"+(held?\" is-held-v500\":\"\")+\"' data-note-id='\"+esc(n.id)+\"'><div class='orbit-development-card-top'><div><span class='orbit-development-type'>\"+(engineering?\"Engineering change\":releaseAcceptance?\"Release Acceptance \\xB7 \"+esc(n.releaseVersion||n.releaseAcceptance?.releaseVersion||\"\"):\"Acceptance test \\xB7 \"+esc(n.context?.product||\"Orbit OS\"))+\"</span><h4>\"+esc(n.title)+\"</h4><p>\"+esc(n.description).slice(0,420)+\"</p>\"+(parentIds.length?\"<small class='orbit-acceptance-parent-link'>Parent Development Note\"+(parentIds.length>1?\"s\":\"\")+\": \"+parentIds.map(esc).join(\", \")+\"</small>\":\"\")+\"</div><div class='orbit-development-card-side-v548'><span class='orbit-priority orbit-priority-\"+esc(n.priority).toLowerCase()+\"'>\"+esc(n.priority)+\"</span>\"+aiDossierBadgeV548(n.aiDossier,\"AI dossier\")+\"</div></div><div class='orbit-development-context'>\"+esc(n.context?.pageTitle||n.context?.page||n.context?.module||\"Orbit OS\")+\" \\xB7 \"+esc(n.releaseVersion||\"\")+(Number(n.screenshotCount||0)?\" \\xB7 \"+Number(n.screenshotCount||0)+\" original screenshot\"+(Number(n.screenshotCount||0)===1?\"\":\"s\"):\"\")+\"</div>\"+holdMeta+(n.implementationEvidence?.summary?\"<aside class='orbit-ai-developer-note'><strong>Implementation summary</strong><p>\"+esc(n.implementationEvidence.summary)+\"</p>\"+(n.implementationEvidence.currentImplementationTarget?\"<section class='orbit-current-target'><strong>Current Implementation Target\"+(n.implementationEvidence.scopeRevision?\" \\xB7 Revision \"+esc(n.implementationEvidence.scopeRevision):\"\")+\"</strong><p>\"+esc(n.implementationEvidence.currentImplementationTarget).replace(/\\n/g,\"<br>\")+\"</p></section>\":\"\")+(n.implementationEvidence.currentScope?\"<details class='orbit-adaptive-scope'><summary>Full Current Scope</summary><p>\"+esc(n.implementationEvidence.currentScope).replace(/\\n/g,\"<br>\")+\"</p></details>\":\"\")+((n.implementationEvidence.changesSinceLastAttempt||[]).length?\"<section class='orbit-scope-delta'><strong>What changed since the last attempt</strong><ul>\"+n.implementationEvidence.changesSinceLastAttempt.map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\")+\"</ul></section>\":\"\")+(n.implementationEvidence.developerBrief?\"<details class='orbit-adaptive-brief'><summary>Developer Brief</summary><p>\"+esc(n.implementationEvidence.developerBrief).replace(/\\n/g,\"<br>\")+\"</p></details>\":\"\")+engineeringEvidenceHtmlV688(n)+\"</aside>\":\"\")+(engineering?\"\":operatorAcceptanceHtmlV688(n))+\"<div class='orbit-development-actions'>\"+actions+\"</div>\"+(engineering?\"\":\"<section class='orbit-inline-verification' data-verification-form='\"+esc(n.id)+\"' hidden><h5>Tell Orbit what is still wrong</h5><textarea rows='4' data-verification-feedback='\"+esc(n.id)+\"' placeholder='Type what happened. You can paste a screenshot with Ctrl + V.'></textarea><div class='orbit-inline-verification-tools'><input class='orbit-verification-file-input' type='file' accept='image/png,image/jpeg,image/webp' multiple data-verification-file='\"+esc(n.id)+\"'><button type='button' class='secondary' data-choose-verification-file='\"+esc(n.id)+\"'>Add screenshots</button><span data-verification-evidence-count>No screenshots attached</span></div><div class='orbit-screenshot-preview' data-verification-evidence-preview></div><div class='orbit-inline-verification-actions'><button type='button' class='secondary' data-cancel-verification='\"+esc(n.id)+\"'>Cancel</button><button type='button' class='orbit-submit-not-fixed' data-submit-inline-verification='\"+esc(n.id)+\"'>Submit Not Fixed</button></div></section>\")+\"</article>\"}function renderVerificationRowsV500(box,rows,emptyTitle,emptyText){box&&(box.innerHTML=rows.length?rows.map(n=>verificationCardHtmlV500(n,acceptanceHeldV500(n))).join(\"\"):\"<div class='orbit-empty-state'><strong>\"+esc(emptyTitle)+\"</strong><p>\"+esc(emptyText)+\"</p></div>\",rows.forEach(n=>{const form=box.querySelector(\"[data-verification-form='\"+CSS.escape(n.id)+\"']\");form&&orbitOpenVerificationNoteV149===n.id&&(form.hidden=!1);const field=box.querySelector(\"[data-verification-feedback='\"+CSS.escape(n.id)+\"']\"),draft=getVerificationDraftV149(n.id);field&&draft&&(field.value=draft)}))}function renderVerificationQueue(force=!1){const box=document.getElementById(\"orbitVerificationList\");if(!box||!force&&verificationEditorIsActiveV257())return;const readyNotes=orbitDevelopmentNotes.filter(n=>operatorAcceptanceItemV559(n)&&!acceptanceHeldV500(n));renderVerificationRowsV500(box,stableAcceptanceRowsV239(readyNotes),\"Nothing waiting for your acceptance\",\"Only Development Notes you created appear here. Orbit AI QA verifies internal engineering and agent work automatically in the background.\")}function renderHeldVerificationQueue(force=!1){const box=document.getElementById(\"orbitHeldVerificationList\");if(!box||!force&&verificationEditorIsActiveV257())return;const heldNotes=orbitDevelopmentNotes.filter(n=>operatorAcceptanceItemV559(n)&&acceptanceHeldV500(n));renderVerificationRowsV500(box,stableAcceptanceRowsV239(heldNotes),\"Nothing held for later\",\"Use Test Later on an Acceptance Test when you need to wait for a natural payment, cancellation or other real-world result.\")}let orbitDevelopmentDeferredRefreshTimerV337=null;function refreshDevelopmentHubDeferredV337(delayMs=250){window.clearTimeout(orbitDevelopmentDeferredRefreshTimerV337),orbitDevelopmentDeferredRefreshTimerV337=window.setTimeout(()=>{loadOrbitDevelopmentHub({background:!0}).catch(err=>console.warn(\"Deferred Development Hub refresh failed:\",err.message||err))},Math.max(0,Number(delayMs||0)))}async function submitVerification(noteId,outcome){const note=orbitDevelopmentNotes.find(x=>x.id===noteId);if(!note)return;if(outcome===\"read\"){const card=document.querySelector(\".orbit-verification-card[data-note-id='\"+CSS.escape(noteId)+\"']\");card&&(card.classList.add(\"is-processing\"),card.setAttribute(\"aria-busy\",\"true\"));try{await api(\"/api/admin/development-notes/\"+encodeURIComponent(noteId)+\"/verify\",{method:\"POST\",body:JSON.stringify({outcome:\"read\"}),cacheMs:0}),markDevelopmentMutationV340(),note.status=\"Complete\",orbitDevelopmentNotes=orbitDevelopmentNotes.filter(x=>x.id!==noteId),renderVerificationQueue(!0),renderHeldVerificationQueue(!0),renderDevelopmentNotes(),syncDevelopmentCountersFromLocalV339(),setNotice2(\"Engineering change marked as read.\"),refreshDevelopmentHubDeferredV337(150)}catch(err){card&&(card.classList.remove(\"is-processing\"),card.removeAttribute(\"aria-busy\")),setNotice2(err.message||err,!0)}return}if(outcome===\"delete\"){if(!confirm(`Delete this Acceptance Test permanently?\n\n`+note.title+`\n\nChoose OK to delete or Cancel to keep it.`))return;const card=document.querySelector(\".orbit-verification-card[data-note-id='\"+CSS.escape(noteId)+\"']\");card&&(card.classList.add(\"is-processing\"),card.setAttribute(\"aria-busy\",\"true\"));try{await api(\"/api/admin/development-notes/\"+encodeURIComponent(noteId),{method:\"DELETE\",body:JSON.stringify({confirmed:!0}),cacheMs:0}),markDevelopmentMutationV340(),orbitDevelopmentNotes=orbitDevelopmentNotes.filter(x=>x.id!==noteId),renderVerificationQueue(!0),renderHeldVerificationQueue(!0),renderDevelopmentNotes(),syncDevelopmentCountersFromLocalV339(),setNotice2(\"Acceptance Test permanently deleted.\"),refreshDevelopmentHubDeferredV337(150)}catch(err){card&&(card.classList.remove(\"is-processing\"),card.removeAttribute(\"aria-busy\")),setNotice2(err.message||err,!0)}return}if(outcome===\"fixed\"){if(!confirm(\"Confirm this change is working correctly?\"))return;const card=document.querySelector(\".orbit-verification-card[data-note-id='\"+CSS.escape(noteId)+\"']\");card&&(card.classList.add(\"is-processing\"),card.setAttribute(\"aria-busy\",\"true\"));try{await api(\"/api/admin/development-notes/\"+encodeURIComponent(noteId)+\"/verify\",{method:\"POST\",body:JSON.stringify({outcome:\"fixed\"}),cacheMs:0}),markDevelopmentMutationV340(),orbitDevelopmentNotes=orbitDevelopmentNotes.filter(function(item){return item.id!==noteId}),clearVerificationDraftV149(noteId),renderVerificationQueue(!0),renderHeldVerificationQueue(!0),renderDevelopmentNotes(),syncDevelopmentCountersFromLocalV339(),setNotice2(\"Acceptance test passed. The original note is now complete.\"),refreshDevelopmentHubDeferredV337(150)}catch(err){card&&(card.classList.remove(\"is-processing\"),card.removeAttribute(\"aria-busy\")),setNotice2(err.message||err,!0)}return}orbitDevelopmentCommentScreenshots=[],orbitOpenVerificationNoteV149=noteId,document.querySelectorAll(\"[data-verification-form]\").forEach(x=>x.hidden=x.dataset.verificationForm!==noteId);const form=document.querySelector(\"[data-verification-form='\"+CSS.escape(noteId)+\"']\");form&&(form.hidden=!1,form.querySelector(\"textarea\")?.focus(),renderVerificationEvidence(noteId),form.scrollIntoView({behavior:\"smooth\",block:\"nearest\"}))}async function setAcceptanceHoldV500(noteId,held,button2=null){const note=orbitDevelopmentNotes.find(x=>x.id===noteId);if(note){if(note.status!==\"Ready for Testing\"){setNotice2(\"This Acceptance Test is no longer waiting for testing. Refresh the queue.\",!0);return}button2&&setLoading(button2,!0);try{const data=await api(\"/api/admin/development-notes/\"+encodeURIComponent(noteId)+\"/acceptance-hold\",{method:\"POST\",body:JSON.stringify({held:!!held,reason:held?\"Test later \\u2014 waiting for a natural real-world result.\":\"Returned to Acceptance Testing.\"}),timeoutMs:3e4,cacheMs:0});if(!data?.note?.id||data.note.id!==noteId||!!data.note.acceptanceHold?.held!=!!held)throw new Error(\"Orbit could not verify the Acceptance hold state.\");markDevelopmentMutationV340();const index=orbitDevelopmentNotes.findIndex(x=>x.id===noteId);index>=0&&(orbitDevelopmentNotes[index]={...orbitDevelopmentNotes[index],...data.note}),orbitOpenVerificationNoteV149=null,renderVerificationQueue(!0),renderHeldVerificationQueue(!0),renderDevelopmentNotes(),syncDevelopmentCountersFromLocalV339(),setNotice2(held?\"Acceptance Test moved to Held Acceptance. It will not clutter the live queue while you wait.\":\"Acceptance Test returned to the live testing queue.\"),refreshGlobalDeploymentAlertV418().catch(()=>{}),refreshDevelopmentHubDeferredV337(150)}catch(err){setNotice2(err.message||err,!0)}finally{button2&&setLoading(button2,!1)}}}function renderRoadmap(){const box=document.getElementById(\"orbitRoadmapList\");box&&(box.innerHTML=orbitRoadmapItems.length?orbitRoadmapItems.map(n=>\"<article class='orbit-development-card' data-roadmap-id='\"+esc(n.id)+\"'><div class='orbit-development-card-top'><div><span class='orbit-development-type'>Roadmap</span><h4>\"+esc(n.title)+\"</h4><p>\"+esc(n.description||n.rationale).slice(0,300)+\"</p></div><div class='orbit-development-card-side-v548'><span class='orbit-priority orbit-priority-\"+esc(n.priority).toLowerCase()+\"'>\"+esc(n.priority)+\"</span>\"+aiDossierBadgeV548(n.aiResearchDossier,\"AI research\")+\"</div></div><div class='orbit-development-actions'><select data-roadmap-status='\"+esc(n.id)+\"'>\"+developmentStatusOptions(n.status,!0)+\"</select><button type='button' class='secondary' data-roadmap-ai-v548='\"+esc(n.id)+\"'>AI research</button><button type='button' class='secondary' data-edit-roadmap='\"+esc(n.id)+\"'>Edit</button><button type='button' class='secondary orbit-danger-button' data-delete-roadmap='\"+esc(n.id)+\"'>Delete</button></div></article>\").join(\"\"):\"<div class='orbit-empty-state'><strong>No roadmap items yet</strong><p>Promote a review note or add a roadmap item.</p></div>\")}let orbitAiArtifactStateV701=null,orbitDevelopmentPipelineV600=null,orbitWorkbenchTimerV685=null,orbitWorkbenchBoundV685=!1,orbitWorkbenchDownloadReadinessV68603=null,orbitHandoverTrafficV702={state:\"red\",safeToStartHandover:!1,message:\"Checking Development worker activity\\u2026\"};function aiPackageHasNewerWorkerWorkV701(artifact=orbitAiArtifactStateV701){const workbench=orbitDevelopmentPipelineV600?.workbench||{},readiness=orbitWorkbenchDownloadReadinessV68603||workbench.downloadReadiness||{};if(Number(readiness.activeCount||0)>0||Number(readiness.pendingContinuationCount||0)>0)return!0;const artifactAt=Date.parse(artifact?.generatedAt||artifact?.readyAt||\"\");return Number.isFinite(artifactAt)?(Array.isArray(workbench.jobs)?workbench.jobs:[]).some(job=>{const updated=Date.parse(job.updatedAt||job.lastActivityAt||\"\");return Number.isFinite(updated)&&updated>artifactAt}):!1}function setHandoverTrafficV702(value){const raw=value||{},state2=[\"green\",\"red\",\"amber\"].includes(String(raw.state||\"\").toLowerCase())?String(raw.state).toLowerCase():\"red\";orbitHandoverTrafficV702={...raw,state:state2,safeToStartHandover:state2===\"green\"&&raw.safeToStartHandover!==!1},renderAiArtifactReadinessV701()}function renderAiArtifactReadinessV701(){const node=document.getElementById(\"orbitWorkDownloadReadiness\");if(!node)return;const button2=document.getElementById(\"downloadOrbitBackendSourceButton\"),traffic=orbitHandoverTrafficV702||{},state2=[\"green\",\"red\",\"amber\"].includes(traffic.state)?traffic.state:\"red\",artifact=orbitAiArtifactStateV701||{};if(node.classList.remove(\"is-checking\",\"is-green\",\"is-red\",\"is-amber\"),node.classList.add(state2===\"green\"?\"is-green\":state2===\"amber\"?\"is-amber\":\"is-red\"),button2&&(button2.disabled=state2===\"amber\"||button2.dataset.handoverBusy===\"1\"),state2===\"amber\"){const stage=traffic.lock?.stage||artifact.stage||\"preparing\",label=stage===\"verify\"?\"VERIFYING ZIP\":stage===\"package\"||stage===\"archive\"?\"PACKAGING ZIP\":stage===\"downloading\"?\"DOWNLOADING ZIP\":\"PREPARING HANDOVER\";node.innerHTML=`<span class=\"orbit-download-light-v68603\" aria-hidden=\"true\"></span><span><strong>${label} \\u2014 PLEASE WAIT</strong><small>Workers are paused by the exclusive handover lock. ${esc(traffic.message||\"Orbit is preparing the exact snapshot you requested.\")}</small><button type=\"button\" class=\"secondary\" data-orbit-recover-interrupted-zip style=\"margin-top:8px;display:block;max-width:300px\">Recover interrupted ZIP and resume workers</button><small>This only clears an expired or proven previous-release handover. A healthy active ZIP cannot be cancelled here.</small></span>`;const recovery=node.querySelector(\"[data-orbit-recover-interrupted-zip]\");recovery&&recovery.addEventListener(\"click\",async()=>{if(!recovery.disabled){recovery.disabled=!0,recovery.textContent=\"Checking handover safety\\u2026\";try{if(!(await api(\"/api/admin/development-workbench/control\",{method:\"POST\",body:JSON.stringify({action:\"recover-interrupted-zip\"}),timeoutMs:3e4,cacheMs:0}))?.result?.recovered)throw Error(\"No interrupted handover remains. Refresh the Development Home.\");setAiPackageProgressV436(\"Interrupted ZIP safely released.\",{success:!0,detail:\"Prior verified ZIPs remain available. No Development budget or note status was reset.\"}),setNotice2(\"Interrupted ZIP released. Automatic Development work resumed safely.\"),await loadOrbitBootstrapStatus(),typeof loadDevelopmentPipelineV600==\"function\"&&await loadDevelopmentPipelineV600(!0)}catch(e){setNotice2(\"Cannot clear a potentially active ZIP: \"+(e.message||e),!0),recovery.disabled=!1,recovery.textContent=\"Recover interrupted ZIP and resume workers\"}}});return}if(state2===\"red\"){const active=Number(traffic.activeCount||0),queued=Number(traffic.queuedCount||0),pending=Number(traffic.pendingContinuationCount||0),counts=[active?active+\" active\":\"\",queued?queued+\" queued\":\"\",pending?pending+\" continuing\":\"\"].filter(Boolean).join(\" \\xB7 \");node.innerHTML=`<span class=\"orbit-download-light-v68603\" aria-hidden=\"true\"></span><span><strong>WORKERS ACTIVE \\u2014 DOWNLOAD ANYTIME</strong><small>${esc(traffic.message||\"Press the button to stop Development workers and export immediately.\")}${counts?\" \"+esc(counts)+\".\":\"\"}</small></span>`;return}let detail=traffic.workersPaused?\"Development workers are paused. Download another ZIP or use Resume automatic work to restart them.\":\"Press Prepare & Download ZIP whenever you need an export.\";artifact?.state===\"failed\"?detail=`The previous ZIP attempt failed (${esc(artifact.message||artifact.error||\"unknown error\")}). It is safe to press once and retry.`:artifact?.safeToDownload===!0&&artifact?.state===\"verified\"&&(detail=`${artifact.filename?esc(artifact.filename)+\" is the last verified snapshot. \":\"\"}Press once to refresh and download the newest snapshot.`),node.innerHTML=`<span class=\"orbit-download-light-v68603\" aria-hidden=\"true\"></span><span><strong>${traffic.workersPaused?\"DEVELOPMENT WORKERS PAUSED \\u2014 NO NOTES WILL PROGRESS\":\"ZIP AVAILABLE\"}</strong><small>${detail}</small>${traffic.workersPaused?'<button type=\"button\" class=\"secondary\" data-orbit-resume-workers style=\"margin-top:8px;display:block;max-width:260px\">Resume automatic Development work</button>':\"\"}</span>`;const resume=node.querySelector(\"[data-orbit-resume-workers]\");resume&&resume.addEventListener(\"click\",async()=>{if(!resume.disabled){resume.disabled=!0,resume.textContent=\"Resuming workers\\u2026\";try{const result=await api(\"/api/admin/development-workbench/control\",{method:\"POST\",body:JSON.stringify({action:\"resume\"}),timeoutMs:2e4,cacheMs:0}),repaired=Number(result?.result?.verifiedCacheKeyRetries?.queued||0);setNotice2(\"Development workers resumed. Automatic note pickup is enabled.\"+(repaired?\" \"+repaired+\" verified cache-key retries queued.\":\"\"),!1),await loadOrbitBootstrapStatus(),typeof loadDevelopmentPipelineV600==\"function\"&&await loadDevelopmentPipelineV600(!0)}catch(e){setNotice2(\"Could not resume Development workers: \"+(e.message||e),!0),resume.disabled=!1,resume.textContent=\"Resume automatic Development work\"}}})}async function loadOrbitBootstrapStatus(){const target=document.getElementById(\"orbitBootstrapStatus\"),missionTitle=document.getElementById(\"orbitCurrentMissionTitle\"),missionStatement=document.getElementById(\"orbitCurrentMissionStatement\");let timeoutHandle=null;target&&(target.innerHTML=\"<strong>AI Handover \\xB7 Checking\\u2026</strong><span>Reading the latest automatic handover state.</span>\",timeoutHandle=setTimeout(()=>{target&&target.textContent.includes(\"Checking\")&&(target.innerHTML=\"<strong>AI Handover \\xB7 Background check still running</strong><span>Development Notes and Acceptance remain live independently. The last verified AI Project ZIP remains valid while this check completes.</span>\")},12500));try{const data=await api(\"/api/admin/orbit-bootstrap/status\",{timeoutMs:12e3,cacheMs:0}),status=data.status||{},counts=status.counts||{};timeoutHandle&&clearTimeout(timeoutHandle),orbitAiArtifactStateV701=data.artifact||null,setHandoverTrafficV702(data.handoverTraffic||{state:\"red\",message:\"Worker traffic state was not returned.\"});const mission=status.currentMission||data.currentMission||{};if(missionTitle&&(missionTitle.textContent=mission.title||mission.headline||\"Current mission unavailable\"),missionStatement&&(missionStatement.textContent=mission.statement||mission.description||\"Refresh Development Hub to retrieve the current release mission.\"),target)if(status.synced&&status.validation?.ok){const generatedAt=status.generatedAt?new Date(status.generatedAt):null;target.innerHTML=\"<strong>AI Handover \\xB7 Synced</strong><span>\"+esc(String(counts.operatorOpenDevelopmentNotes??counts.openDevelopmentNotes??0))+\" open</span><span>\"+esc(String(counts.operatorInDevelopment??counts.inDevelopment??0))+\" in development</span><span>\"+esc(String(counts.operatorReadyForTesting??counts.readyForTesting??0))+\" ready for your testing</span><span>\"+esc(String(counts.completeDevelopmentNotes??0))+\" complete</span><span>\"+esc(String(counts.failedAcceptanceTests??0))+\" failed tests recorded</span><span>\"+esc(String(counts.roadmapItems??0))+\" roadmap items</span>\"+(generatedAt&&!Number.isNaN(generatedAt.getTime())?\"<span>Updated \"+esc(generatedAt.toLocaleString(\"en-GB\"))+\"</span>\":\"\")}else target.innerHTML=\"<strong>AI Handover \\xB7 Waiting to sync</strong><span>\"+esc(status.reason||\"Save a Development Note to start automatic synchronisation.\")+\"</span>\";return status}catch(err){return timeoutHandle&&clearTimeout(timeoutHandle),target&&(target.innerHTML=\"<strong>AI Handover \\xB7 Check failed</strong><span>\"+esc(err.message||err)+\"</span><span>The last verified ZIP state is preserved; use Refresh Development Hub to retry this status read.</span>\"),null}}const orbitWorkbenchOpenEvidenceV68603=new Map,wbStateV685=s=>({queued:\"Queued\",researching:\"Investigating evidence\",implementing:\"Writing sandbox code\",testing:\"Running before/after tests\",ready_for_zip_reconciliation:\"Tested \\xB7 waiting for next ZIP\",needs_stronger_tests:\"Needs stronger tests\",needs_evidence:\"Legacy evidence hold \\xB7 auto-reinvestigate\",blocked_external:\"External blocker after full investigation\",protected_review:\"Protected engineering review\",provider_wait:\"Provider receipt / transport held\",request_configuration:\"Worker request configuration held\",budget_capped:\"Development budget limit reached\",executor_unavailable:\"Executor unavailable\",interrupted:\"Interrupted \\xB7 work preserved\",cancelled:\"Cancelled \\xB7 work preserved\",stale:\"New evidence \\xB7 old attempt held\",failed:\"Needs investigation\",needs_reconciliation:\"Partial work \\xB7 ready for ZIP review\"})[s]||s;function wbMoneyV685(n){return\"$\"+Number(n||0).toFixed(3)}function wbAgeV68602(seconds){const n=Number(seconds);return!Number.isFinite(n)||n<0?\"unknown\":n<60?Math.floor(n)+\"s ago\":n<3600?Math.floor(n/60)+\"m \"+Math.floor(n%60)+\"s ago\":Math.floor(n/3600)+\"h \"+Math.floor(n%3600/60)+\"m ago\"}function wbSelectionInsideV68603(node){try{const selection=window.getSelection?.();if(!node||!selection||selection.isCollapsed||!selection.rangeCount)return!1;const range=selection.getRangeAt(0);return node.contains(range.commonAncestorContainer)}catch{return!1}}function wbRenderDownloadReadinessV68603(readiness){orbitWorkbenchDownloadReadinessV68603=readiness||null,renderAiArtifactReadinessV701()}function wbRestoreOpenEvidenceV68603(controls){for(const[id,state2]of orbitWorkbenchOpenEvidenceV68603.entries()){const box=controls?.querySelector('[data-wb-detail-box=\"'+CSS.escape(id)+'\"]');box&&(box.hidden=!1,box.dataset.pinnedOpen=\"true\",state2?.html&&(box.innerHTML=state2.html))}}function wbReceiptRecoveryDetailV68502(recovery){if(!recovery)return\"\";const result=recovery.reconciliation||recovery,blocked=Array.isArray(result.blockingReceipts)?result.blockingReceipts:[],review=result.review,history2=result.historicalReview;if(review&&result.code===\"HISTORICAL_AUDIT_REVIEW_REQUIRED\")return`<div class=\"orbit-wb-historical-review-v68503\"><h4>Review historical receipt gaps</h4><p><strong>${Number(review.receiptCount)} old receipt mirrors, from ${esc(String(review.from||\"\").slice(0,10))} to ${esc(String(review.through||\"\").slice(0,10))}.</strong> These predate the Development Workbench. No matching final-cost records were found.</p><p>The current budget authority has no active or unknown requests and no current rolling-window charges. This is not permission to mark the old calls free or settled.</p><p>Historical reservation estimates: $${Number(review.historicReservedUsd||0).toFixed(6)}. Recorded overrun retained: $${Number(review.recordedOverrunUsd||0).toFixed(6)}. <strong>Actual historical receipt costs remain unverified.</strong></p><p>Acknowledging this gap keeps all original receipt rows and the audit warning. It resumes the existing pilot without resetting recorded spend. V686 Development work uses an independent <strong>$1 allowance per record</strong>, then the separately governed <strong>$10 rolling 24-hour Development overflow</strong> if needed. No spending, note history or budget cycle is reset.</p><label class=\"orbit-wb-historical-consent-v68503\" style=\"display:flex;align-items:flex-start;gap:10px;margin:12px 0\"><input type=\"checkbox\" data-wb-historical-check> I have reviewed the historical gap and want to resume the existing pilot while retaining these unverified records for audit.</label><label style=\"display:block\">Type <strong>ACKNOWLEDGE HISTORICAL GAPS</strong><input type=\"text\" data-wb-historical-confirm autocomplete=\"off\" style=\"display:block;width:100%;max-width:100%;box-sizing:border-box\" placeholder=\"ACKNOWLEDGE HISTORICAL GAPS\"></label><button type=\"button\" data-wb-action=\"acknowledge-historical-receipts\" data-wb-review-token=\"${esc(review.reviewToken)}\" disabled style=\"margin-top:12px;white-space:normal\">Acknowledge gap &amp; resume existing pilot</button><details style=\"margin-top:12px\"><summary>Historical receipt identities (${Number(review.receiptCount)})</summary><ul>${(review.receipts||[]).map(r=>`<li style=\"overflow-wrap:anywhere\">${esc(r.reservationId)} \\xB7 ${esc(r.dispatchedAt)} \\xB7 actual cost unverified</li>`).join(\"\")}</ul></details></div>`;if(history2?.kind===\"historical_mirror_audit_gap\"&&history2.actualCostsVerified===!1)return`<p><strong>${Number(history2.receiptCount)} historical receipt gaps retained for audit.</strong> No receipt was marked settled or free. Recorded overrun: $${Number(history2.recordedOverrunUsd||0).toFixed(6)}. Actual individual historical costs remain unverified. The existing budget limits and note cycles are unchanged.</p>`;const count=Number(result.receiptsRepaired||0),code=String(result.code||\"\"),ineligible=history2?.eligible===!1?history2.reason:null;return`<p>${count} final receipt${count===1?\"\":\"s\"} repaired without resetting spending.${code?\" Check: \"+esc(code)+\".\":\"\"}</p>${ineligible?`<p>Historical review is unavailable: ${esc(ineligible)}</p>`:\"\"}${blocked.length?`<details open><summary>Receipt evidence still needed (${Number(result.unresolvedCount||blocked.length)})</summary><ul>${blocked.slice(0,20).map(r=>`<li style=\"overflow-wrap:anywhere\"><strong>${esc(r.reservationId||\"Unidentified receipt\")}</strong> \\xB7 ${esc(r.status||\"unknown\")}<br>${esc(r.reason||r.code||\"Unknown cost remains held.\")}</li>`).join(\"\")}</ul><p>These costs remain held. Download the Complete AI Project ZIP for the exact receipt and usage diagnostics. Do not start another pilot.</p></details>`:\"\"}`}async function wbActionV685(action,button2,extra={}){setLoading(button2,!0);try{const r=await api(\"/api/admin/development-workbench/control\",{method:\"POST\",body:JSON.stringify({action,...extra}),timeoutMs:2e4,cacheMs:0});if(await loadDevelopmentPipelineV600(!0),[\"recover-pilot\",\"acknowledge-historical-receipts\"].includes(action)){setNotice2(r.result?.reason||\"Pilot recovery checked. Review the result below.\",r.result?.ok===!1&&r.result?.code!==\"HISTORICAL_AUDIT_REVIEW_REQUIRED\");return}setNotice2(action===\"self-check\"?r.result?.available?\"The OS-sealed executor passed both positive and negative self-tests.\":\"Executor unavailable. Paid implementation remains blocked.\":action===\"pause\"?\"Workbench paused. In-flight receipts are retained; no new jobs start.\":\"Workbench request saved. Follow the evidence and per-record budget below. Production is unchanged.\")}catch(e){setNotice2(e.message||e,!0)}finally{setLoading(button2,!1)}}function renderDevelopmentPipelineV600(pipeline){orbitDevelopmentPipelineV600=pipeline||null;const row=pipeline||{},w=row.workbench||{},jobs=w.jobs||[],costs=w.budgets||[],stateNode=$2(\"developmentPipelineStateV600\"),countsNode=$2(\"developmentPipelineCountsV600\"),jobsNode=$2(\"developmentPipelineJobsV600\");wbRenderDownloadReadinessV68603(w.downloadReadiness||null),w.handoverTraffic&&setHandoverTrafficV702(w.handoverTraffic);const ready=w.capability?.available===!0,devOverflow=w.developmentOverflow||{},lastAppliedReconciliation=w.control?.lastAppliedZipReconciliation||null,throughput=w.throughput||{},ai24h=throughput.ai24h||{};stateNode&&(stateNode.dataset.state=ready?\"ready\":\"attention\",stateNode.textContent=ready?w.control?.handoverPaused?\"Executor verified \\xB7 handover paused\":w.control?.enabled?w.control?.autoEnqueue===!1?\"Executor enabled \\xB7 auto backlog OFF\":Number(throughput.working||0)>0?\"Workers actively processing\":Number(throughput.queued||0)>0?\"Automatic work on \\xB7 jobs queued\":\"Automatic work on \\xB7 currently idle\":\"Executor verified \\xB7 paused\":\"Executor unavailable\");const count=s=>jobs.filter(x=>s.includes(x.status)).length,workingNow=throughput.working??count([\"researching\",\"implementing\",\"testing\"]),queuedNow=throughput.queued??count([\"queued\"]),readyForZip=throughput.readyForZip??count([\"ready_for_zip_reconciliation\"]),needsReconciliation=throughput.needsReconciliation??count([\"needs_reconciliation\"]),aiActivity=ai24h.available===!1?\"Unavailable\":`${Number(ai24h.calls||0)} calls \\xB7 ${wbMoneyV685(ai24h.estimatedEffectiveUsd||0)}`;countsNode&&(countsNode.innerHTML=[[\"Worker AI \\xB7 24h\",aiActivity],[\"Working now\",workingNow],[\"Queued\",queuedNow],[\"Tested \\xB7 next ZIP\",readyForZip],[\"Needs ZIP reconciliation\",needsReconciliation],[\"Rebased without AI\",Number(throughput.deterministicRebasesCurrentRelease||0)],[\"Recovery pilot\",String(throughput.recoveryPilot?.queued??0)+\" retried \\xB7 \"+String(throughput.recoveryPilot?.held??0)+\" held\"],[\"Own allowance per record\",\"$1.00\"],[\"Shared overflow\",wbMoneyV685(devOverflow.remainingUsd)+\" / $10 remaining\"]].map(([label,value])=>`<article><small>${esc(label)}</small><strong>${esc(String(value))}</strong></article>`).join(\"\"));const controls=$2(\"orbitDevelopmentPipelineV600\");if(controls&&!orbitWorkbenchBoundV685){orbitWorkbenchBoundV685=!0,controls.addEventListener(\"click\",async event=>{const b=event.target.closest(\"[data-wb-action],[data-wb-details]\");if(b){if(b.dataset.wbDetails){const id=b.dataset.wbDetails,box=controls.querySelector('[data-wb-detail-box=\"'+CSS.escape(id)+'\"]');if(!box)return;if(!box.hidden){box.hidden=!0,delete box.dataset.pinnedOpen,orbitWorkbenchOpenEvidenceV68603.delete(id);return}box.hidden=!1,box.dataset.pinnedOpen=\"true\";const saved=orbitWorkbenchOpenEvidenceV68603.get(id);if(saved?.html){box.innerHTML=saved.html;return}box.innerHTML='<p class=\"orbit-muted\">Loading durable engineering evidence\\u2026</p>',orbitWorkbenchOpenEvidenceV68603.set(id,{html:box.innerHTML}),b.disabled=!0;try{const result=await api(\"/api/admin/development-workbench/jobs/\"+encodeURIComponent(id),{cacheMs:0,timeoutMs:2e4}),j=result.job||{},a=result.artifact||{},brief=j.brief||a.brief||{},html=`<h4>Engineering evidence</h4><p><strong>Intent:</strong> ${esc(brief.intent||\"Not yet investigated\")}</p><p><strong>Root cause:</strong> ${esc(brief.rootCause||\"Not yet established\")}</p><p><strong>Latest failed Acceptance:</strong> ${esc(j.latestAcceptance?.feedback||\"None recorded for this attempt\")}</p><p><strong>Re-investigation:</strong> ${esc(brief.latestFailureExplained||\"Pending\")}</p>${j.retryDiagnosis?.source===\"zip_reconciliation_rejected\"?`<p><strong>ZIP reconciliation retry:</strong> attempt ${Number(j.reconciliationRetryCount||1)} \\xB7 ${esc(j.retryDiagnosis.reason||j.reconciliationReason||\"Previous attempt rejected\")}</p>`:\"\"}<p><strong>Plan:</strong> ${esc((brief.implementationPlan||[]).join(\" \\xB7 \"))}</p><p><strong>Roadmap ideas:</strong> ${esc((brief.ideas||[]).join(\" \\xB7 \")||\"Not applicable\")}</p><p><strong>Evidence:</strong> ${(j.evidence||[]).map(x=>esc((x.name||x.id)+\": \"+(x.contentConsumed?x.checkpointReused?\"saved visual read reused\":\"visually read\":\"not visually consumed\")+(x.observation?\" \\u2014 \"+x.observation:\"\"))).join(\"<br>\")||\"No screenshot attached\"}</p><p><strong>Code:</strong> ${esc((j.changedFiles||[]).map(x=>x.path).join(\", \")||\"No patch yet\")}</p><p><strong>Tests:</strong> ${esc(j.proof?JSON.stringify({beforeFailed:j.proof.reproduced,afterPassed:j.proof.candidate?.ok,scope:j.proof.scope,fullApplicationTested:!1}):\"No executable proof yet\")}</p><p><strong>Release boundary:</strong> Next ZIP reconciliation and complete application regression are still required. No live Acceptance was created.</p><details><summary>Test results and chronological worker receipts</summary><pre>${esc(JSON.stringify({blockerCode:j.blockerCode,lastRequest:j.lastRequest,checkpoints:Object.fromEntries(Object.entries(j.paidCheckpoints||{}).map(([stage,c])=>[stage,{at:c.at,model:c.model,receipt:c.receipt,complete:c.complete}])),tests:a.proof||j.proof,history:j.history,limitations:a.bundle?.limitations},null,2))}</pre></details>`;box.innerHTML=html,orbitWorkbenchOpenEvidenceV68603.set(id,{html})}catch(e){const html='<p class=\"orbit-error-state\">'+esc(e.message||String(e))+\"</p>\";box.innerHTML=html,orbitWorkbenchOpenEvidenceV68603.set(id,{html})}finally{b.disabled=!1}return}if(b.dataset.wbAction===\"acknowledge-historical-receipts\"){const checked=controls.querySelector(\"[data-wb-historical-check]\")?.checked,confirmation=controls.querySelector(\"[data-wb-historical-confirm]\")?.value;if(!checked||confirmation!==\"ACKNOWLEDGE HISTORICAL GAPS\")return;await wbActionV685(b.dataset.wbAction,b,{reviewToken:b.dataset.wbReviewToken,confirmation});return}if(b.dataset.wbAction===\"enqueue-selected\"){const sel=controls.querySelector(\"[data-wb-select]\"),v=sel?.value||\"\";if(!v)return;const colon=v.indexOf(\":\");await wbActionV685(\"enqueue\",b,{kind:v.slice(0,colon),id:v.slice(colon+1)});return}await wbActionV685(b.dataset.wbAction,b,b.dataset.wbJob?{jobId:b.dataset.wbJob}:{})}});const updateHistoricalConfirm=()=>{const button2=controls.querySelector('[data-wb-action=\"acknowledge-historical-receipts\"]');button2&&(button2.disabled=!(controls.querySelector(\"[data-wb-historical-check]\")?.checked&&controls.querySelector(\"[data-wb-historical-confirm]\")?.value===\"ACKNOWLEDGE HISTORICAL GAPS\"))};controls.addEventListener(\"input\",updateHistoricalConfirm),controls.addEventListener(\"change\",updateHistoricalConfirm)}const choiceNotes=(typeof orbitDevelopmentNotes<\"u\"?orbitDevelopmentNotes:[]).filter(x=>[\"Open\",\"In Development\"].includes(x.status)),choiceRoad=(typeof orbitRoadmapItems<\"u\"?orbitRoadmapItems:[]).filter(x=>[\"Approved\",\"Prioritised\",\"Prioritized\",\"In Development\"].includes(x.status)),options=[...choiceNotes.map(x=>({kind:\"note\",...x})),...choiceRoad.map(x=>({kind:\"roadmap\",...x}))],ordinary=w.globalBudget?.ordinary||{},preserveWorkbenchDomV68603=wbSelectionInsideV68603(jobsNode);jobsNode&&!preserveWorkbenchDomV68603&&(jobsNode.innerHTML=`<div class=\"orbit-wb-controls-v685 orbit-wb-operator-controls-v688\"><button type=\"button\" data-wb-action=\"${w.control?.enabled?\"pause\":\"resume\"}\" class=\"secondary\">${w.control?.enabled?\"Pause automatic work\":\"Resume automatic work\"}</button><span class=\"orbit-wb-auto-state-v688\"><strong>${w.control?.enabled?\"Automatic backlog processing is on\":\"Automatic backlog processing is paused\"}</strong><small>Eligible Development Notes are picked up automatically. You normally do not need to start or retry workers.</small></span></div>${lastAppliedReconciliation&&Array.isArray(lastAppliedReconciliation.applied)&&lastAppliedReconciliation.applied.length?`<div class=\"orbit-wb-recovery-v68501\" role=\"status\"><strong>${lastAppliedReconciliation.applied.length} rejected worker attempt${lastAppliedReconciliation.applied.length===1?\"\":\"s\"} returned to the queue</strong><p>${esc(lastAppliedReconciliation.applied.map(x=>x.noteId+(x.retryAttempt?\" \\xB7 retry \"+x.retryAttempt:\"\")).join(\" \\xB7 \"))}</p><p class=\"orbit-muted\">Previous evidence was preserved and the workers received the ZIP-reconciliation rejection reason. ${lastAppliedReconciliation.checkedAt?\"Last applied \"+esc(new Date(lastAppliedReconciliation.checkedAt).toLocaleString(\"en-GB\"))+\".\":\"\"}</p></div>`:\"\"}<details class=\"orbit-wb-advanced-v688\"><summary>Advanced worker controls</summary><p class=\"orbit-muted\">Diagnostics and manual recovery controls. Ordinary Development work is automatic.</p><div class=\"orbit-wb-controls-v685\"><button type=\"button\" data-wb-action=\"self-check\" class=\"secondary\">Run executor diagnostic</button><button type=\"button\" data-wb-action=\"pilot\" ${jobs.length?'disabled title=\"Existing jobs already prove the pipeline; do not start another pilot unless engineering asks.\"':\"\"}>Start diagnostic pilot</button><button type=\"button\" data-wb-action=\"recover-pilot\">Run recovery diagnostic</button></div>${ordinary.frozen?`<div class=\"orbit-wb-recovery-v68501\" role=\"alert\"><strong>Shared provider ledger is held, not necessarily your note\\u2019s $1 budget.</strong><p>${esc(ordinary.freezeReason||\"Final receipt reconciliation is required.\")}</p><p>Recover blocked pilot checks final receipts and resumes the existing jobs only when safe. It does not reset spending, increase an allowance or select another batch.</p></div>`:\"\"}${ordinary.historicalReceiptReview?`<div class=\"orbit-wb-recovery-v68501\" data-wb-historical-audit><strong>Historical AI accounting gap remains on record</strong><p>${Number(ordinary.historicalReceiptReview.receiptCount)} old receipt amounts remain unverified. They have not been marked free or settled. Current requests and their budgets remain separately enforced.</p></div>`:\"\"}${w.control?.lastRecovery?`<div class=\"orbit-wb-recovery-v68501\" role=\"status\"><strong>Last recovery check</strong><p>${esc(w.control.lastRecovery.reason||\"See receipt evidence\")}</p>${wbReceiptRecoveryDetailV68502(w.control.lastRecovery)}<p>${Number(w.control.lastRecovery.queued||0)} jobs resumed. ${(w.control.lastRecovery.held||[]).map(x=>esc(x.id+\": \"+x.reason)).join(\"<br>\")}</p></div>`:\"\"}<p class=\"orbit-wb-policy-v685\">Each note has its own <strong>$1 Development allowance</strong>, including research, screenshots, code, retries and review. If that allowance cannot fund the next bounded action, the note may use the separately tracked <strong>$10 rolling 24-hour Development overflow</strong>. Neither allowance resets on retry, restart or failed Acceptance. Roadmap prototypes remain separate and cannot auto-release.</p><p class=\"orbit-muted\">Source: ${esc(w.source?.backendRelease||\"checking\")} backend \\xB7 ${w.source?.themeAvailable?\"Admin theme available\":\"Admin theme will be captured read-only when work starts\"}. Execution: Linux x64 sealed process, no host files, credentials, shell or network. Browser, full-app and provider regressions happen during ZIP reconciliation.</p><div class=\"orbit-wb-select-v685\"><label>Manually queue a specific note or approved roadmap item<select data-wb-select><option value=\"\">Choose a record\\u2026</option>${options.map(x=>`<option value=\"${esc(x.kind+\":\"+x.id)}\">${x.kind===\"roadmap\"?\"Roadmap\":\"Note\"} \\xB7 ${esc(x.title||x.id)}</option>`).join(\"\")}</select></label><button type=\"button\" class=\"secondary\" data-wb-action=\"enqueue-selected\">Queue selected</button></div></details>${w.coverage?.truncated?\"<p>Showing the 100 most recently updated jobs. Older durable work is retained.</p>\":\"\"}${jobs.length?jobs.map(j=>{const b=costs.find(x=>x.subject?.kind===j.subject?.kind&&x.subject?.id===j.subject?.id)||j.budget||{},proof=j.proof||{},busy=[\"queued\",\"researching\",\"implementing\",\"testing\"].includes(j.status),testCount=proof.candidate?.tests?.length||0,activity=j.activity||{},live=activity.workerActive===!0,activityText=esc(activity.stage||wbStateV685(j.status)),retryCount=Number(j.reconciliationRetryCount||0),retryReason=j.retryDiagnosis?.source===\"zip_reconciliation_rejected\"?String(j.retryDiagnosis.reason||j.reconciliationReason||\"Previous ZIP attempt rejected\"):\"\";return`<article class=\"orbit-wb-job-v685\" data-state=\"${esc(j.status)}\"><div class=\"orbit-wb-heading-v685\"><div><small>${j.subject?.kind===\"roadmap\"?\"ROADMAP R&D \\xB7 SANDBOX ONLY\":\"DEVELOPMENT NOTE\"} \\xB7 ${esc(j.subject?.id||\"\")}</small><h4>${esc(j.title||j.id)}</h4></div><strong>${live?'<span class=\"orbit-wb-spinner-v68602\" aria-hidden=\"true\"></span>':\"\"}${esc(wbStateV685(j.status))}</strong></div><div class=\"orbit-wb-activity-v68602 ${live?\"is-live\":activity.stale?\"is-stale\":\"\"}\"><span>${live?'<span class=\"orbit-wb-live-dot-v68602\" aria-hidden=\"true\"></span>':\"\"}<strong>${activityText}</strong></span>${activity.heartbeatAgeSec!=null?`<span>Heartbeat ${esc(wbAgeV68602(activity.heartbeatAgeSec))}</span>`:\"\"}${activity.lastActivityAt?`<span>Last stage update ${esc(new Date(activity.lastActivityAt).toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\",second:\"2-digit\"}))}</span>`:\"\"}${activity.stale?\"<span><strong>Heartbeat stale \\xB7 automatic recovery pending</strong></span>\":\"\"}${retryCount?`<span><strong>Reconciliation retry ${retryCount}</strong></span>`:\"\"}</div>${retryReason?`<p><strong>Previous ZIP attempt rejected:</strong> ${esc(retryReason)}</p>`:\"\"}<p>${j.error?esc(j.error):esc(j.brief?.intent||\"Waiting for full-note investigation, source inspection and executable tests.\")}</p><div class=\"orbit-wb-proof-v685\"><span>${(j.changedFiles||[]).length} changed files</span><span>${testCount} automated checks${testCount?\" \\xB7 before \"+(proof.reproduced?\"fails\":\"unproven\")+\" / after \"+(proof.candidate?.ok?\"passes\":\"fails\"):\"\"}</span><span>Own $1: used ${esc(wbMoneyV685(b.usedUsd))} \\xB7 held ${esc(wbMoneyV685(b.reservedUsd))} \\xB7 remaining ${esc(wbMoneyV685(b.remainingUsd??1))}${Number(b.overflowUsedUsd||0)>0?\" \\xB7 overflow used \"+esc(wbMoneyV685(b.overflowUsedUsd)):\"\"}</span></div><div class=\"orbit-wb-controls-v685\"><button type=\"button\" class=\"secondary\" data-wb-details=\"${esc(j.id)}\">Engineering details</button>${busy?`<button type=\"button\" class=\"secondary\" data-wb-action=\"cancel\" data-wb-job=\"${esc(j.id)}\">Stop this job</button>`:j.status!==\"ready_for_zip_reconciliation\"?`<button type=\"button\" class=\"secondary\" data-wb-action=\"retry\" data-wb-job=\"${esc(j.id)}\">Retry with remaining budget</button>`:\"\"}</div><div class=\"orbit-wb-detail-v685\" data-wb-detail-box=\"${esc(j.id)}\" hidden></div></article>`}).join(\"\"):'<div class=\"orbit-empty-state\"><strong>No active Development work</strong><p>Orbit automatically picks up eligible Development Notes and approved Roadmap R&amp;D when work is available. No manual Start action is required.</p></div>'}`),jobsNode&&!preserveWorkbenchDomV68603&&wbRestoreOpenEvidenceV68603(controls),clearTimeout(orbitWorkbenchTimerV685),count([\"queued\",\"researching\",\"implementing\",\"testing\",\"interrupted\",\"needs_stronger_tests\",\"provider_wait\",\"failed\"])&&w.control?.enabled&&(orbitWorkbenchTimerV685=setTimeout(()=>{!document.hidden&&$2(\"orbitDevelopmentHomePanel\")&&!$2(\"orbitDevelopmentHomePanel\").hidden&&loadDevelopmentPipelineV600(!0).catch(()=>{})},5e3))}document.addEventListener(\"visibilitychange\",()=>{!document.hidden&&orbitDevelopmentPipelineV600?.workbench?.control?.enabled&&$2(\"orbitDevelopmentHomePanel\")&&!$2(\"orbitDevelopmentHomePanel\").hidden&&loadDevelopmentPipelineV600(!0).catch(()=>{})});async function loadDevelopmentPipelineV600(force=!1){if(orbitDevelopmentPipelineV600&&!force)return renderDevelopmentPipelineV600(orbitDevelopmentPipelineV600),orbitDevelopmentPipelineV600;const data=await api(\"/api/admin/development-pipeline\",{timeoutMs:2e4,cacheMs:0});return renderDevelopmentPipelineV600(data.pipeline||{}),data.pipeline||{}}async function runDevelopmentBuilderV600(agentId,button2){setLoading(button2,!0);try{const data=await api(\"/api/admin/intelligence/agents/\"+encodeURIComponent(agentId)+\"/run\",{method:\"POST\",body:\"{}\",timeoutMs:2e4,cacheMs:0});await loadDevelopmentPipelineV600(!0),setNotice2((data.run?.queued||0)+\" record(s) queued for sandbox investigation. Each record has its own $1 allowance; the shared $10 Development overflow is used only when that record cannot cover another bounded request.\")}catch(e){setNotice2(e.message||e,!0)}finally{setLoading(button2,!1)}}async function applyDevelopmentSandboxV600(button2){setLoading(button2,!0);try{await loadDevelopmentPipelineV600(!0),setNotice2(\"Workbench evidence refreshed. No untested legacy candidate was promoted.\")}catch(e){setNotice2(e.message||e,!0)}finally{setLoading(button2,!1)}}let orbitDevelopmentStateEpochV340=0;function markDevelopmentMutationV340(){return orbitDevelopmentStateEpochV340+=1,orbitDevelopmentStateEpochV340}function syncDevelopmentCountersFromLocalV339(){const operatorNotes=orbitDevelopmentNotes.filter(operatorDevelopmentItemV559),counts={};operatorNotes.forEach(n=>counts[n.status]=(counts[n.status]||0)+1);const activeWork=(counts.Open||0)+(counts[\"In Development\"]||0),readyNotes=operatorNotes.filter(n=>n.status===\"Ready for Testing\"),held=readyNotes.filter(acceptanceHeldV500).length,ready=Math.max(0,readyNotes.length-held),outstanding=activeWork+readyNotes.length;state.acceptanceReadyCount=ready,state.acceptanceHeldCount=held;const box=document.getElementById(\"orbitDevelopmentSummary\");return box&&(box.innerHTML=\"<strong>\"+outstanding+\" outstanding</strong><span>\"+(held?held+\" held for later \\xB7 \":\"\")+\"Your Development Notes loaded. AI engineering verification runs separately in the background.</span>\"),[[\"developmentNotesTabCount\",activeWork],[\"acceptanceTestingTabCount\",ready],[\"heldAcceptanceTabCount\",held]].forEach(([id,value])=>{const node=document.getElementById(id);node&&(node.textContent=String(value),node.hidden=value===0)}),state.acceptanceCountLoadedV539=!0,state.acceptanceCountErrorV539=!1,renderTaskCountV539(),renderOperationsV74(),updateCommandCentre(),{activeWork,ready,held,outstanding}}async function loadOrbitDevelopmentHub(options={}){const forceFresh=!!options.forceFresh,background=!!options.background,requestEpoch=orbitDevelopmentStateEpochV340,notesBox=document.getElementById(\"orbitDevelopmentNotesList\");notesBox&&!orbitDevelopmentNotes.length&&!background&&(notesBox.innerHTML=\"<p class='orbit-muted'>Loading notes\\u2026</p>\"),forceFresh&&(orbitReadEpoch++,orbitGetCache.clear());let notes=null;try{if(notes=await api(\"/api/admin/development-notes?active=1\",{timeoutMs:15e3,cacheMs:0}),requestEpoch!==orbitDevelopmentStateEpochV340)return{ignoredStaleResponse:!0,requestEpoch,currentEpoch:orbitDevelopmentStateEpochV340};orbitDevelopmentNotes=notes.notes||[],renderDevelopmentNotes(),renderVerificationQueue(),renderHeldVerificationQueue(),syncDevelopmentCountersFromLocalV339()}catch(err){throw notesBox&&!background&&(notesBox.innerHTML=\"<div class='orbit-empty-state orbit-error-state'><strong>Development Notes could not load</strong><span>\"+esc(err.message||err)+\"</span><button type='button' class='secondary' id='retryDevelopmentNotesButton'>Try again</button></div>\",document.getElementById(\"retryDevelopmentNotesButton\")?.addEventListener(\"click\",()=>loadOrbitDevelopmentHub().catch(error=>setNotice2(error.message,!0)))),err}return syncDevelopmentCountersFromLocalV339(),background||Promise.allSettled([api(\"/api/admin/product-roadmap\",{timeoutMs:1e4,cacheMs:forceFresh?0:3e3}),loadOrbitBootstrapStatus(),loadDevelopmentPipelineV600(forceFresh)]).then(results=>{const roadmap=results[0].status===\"fulfilled\"?results[0].value:null;if(roadmap){orbitRoadmapItems=roadmap.items||[],renderRoadmap(),orbitDevelopmentPipelineV600&&renderDevelopmentPipelineV600(orbitDevelopmentPipelineV600);const roadmapCount=orbitRoadmapItems.filter(x=>![\"Live\",\"Cancelled\"].includes(x.status)).length,node=document.getElementById(\"roadmapTabCount\");node&&(node.textContent=String(roadmapCount),node.hidden=roadmapCount===0)}results[0].status===\"rejected\"&&console.warn(\"Roadmap background refresh failed:\",results[0].reason?.message||results[0].reason),results[1].status===\"rejected\"&&console.warn(\"Bootstrap background refresh failed:\",results[1].reason?.message||results[1].reason),results[2].status===\"rejected\"&&console.warn(\"Development pipeline background refresh failed:\",results[2].reason?.message||results[2].reason)}),notes}let orbitDeploymentFreshnessPoll=null;async function confirmLiveDevelopmentState(){window.clearTimeout(orbitDeploymentFreshnessPoll);const started=Date.now(),deadline=started+9e4,check=async function(){try{const notesPromise=loadOrbitDevelopmentHub({forceFresh:!0}),statusPromise=loadOrbitBootstrapStatus();await notesPromise;const status=await statusPromise,liveVersion=String(status?.version||status?.currentMission?.release||\"\"),liveCounts=status?.counts||{},localReady=orbitDevelopmentNotes.filter(n=>operatorAcceptanceItemV559(n)).length,localOpen=orbitDevelopmentNotes.filter(n=>operatorDevelopmentItemV559(n)&&n.status===\"Open\").length,versionCurrent=liveVersion.includes(ORBIT_RELEASE),countsCurrent=Number(liveCounts.operatorReadyForTesting??liveCounts.readyForTesting??localReady)===localReady&&Number(liveCounts.operatorOpenDevelopmentNotes??liveCounts.openDevelopmentNotes??localOpen)===localOpen;if(versionCurrent&&countsCurrent){const node=document.getElementById(\"orbitDevelopmentSummary\");node&&(node.dataset.liveRelease=ORBIT_RELEASE);return}}catch(error){console.warn(\"Orbit deployment freshness check waiting:\",error.message||error)}Date.now()<deadline&&(orbitDeploymentFreshnessPoll=window.setTimeout(check,2500))};await check()}async function openDevelopmentNoteById(noteId){const id=String(noteId||\"\").trim();if(!id)return;const local=orbitDevelopmentNotes.find(x=>x.id===id)||null;try{local&&await openDevelopmentNoteDetail(local,{note:local});const detail=await api(\"/api/admin/development-notes/\"+encodeURIComponent(id),{timeoutMs:3e4,cacheMs:0}),note=detail?.note||local;if(!note)throw new Error(\"The original Development Note could not be found.\");if(!local)await openDevelopmentNoteDetail(note,detail);else{const dialog=document.getElementById(\"orbitDevelopmentDetailDialog\");dialog?.open&&(closeOrbitDialog(dialog),await openDevelopmentNoteDetail(note,detail))}}catch(err){if(setNotice2(\"Could not open original note \"+id+\": \"+(err.message||err),!0),!local)throw err}}function renderDevelopmentAttachmentsV563(items){return(Array.isArray(items)?items:[]).map(file=>\"<a class='orbit-note-file-link-v563' href='\"+file.dataUrl+\"' download='\"+esc(file.name||\"attachment\")+\"' target='_blank' rel='noopener'><span>\\u{1F4CE}</span><span><strong>\"+esc(file.name||\"Attachment\")+\"</strong><small>\"+esc(file.mimeType||\"Document\")+\"</small></span></a>\").join(\"\")}async function openDevelopmentNoteDetail(note,prefetchedDetail=null){if(!note?.id)return;note=(prefetchedDetail||await api(\"/api/admin/development-notes/\"+encodeURIComponent(note.id),{timeoutMs:3e4})).note||note,orbitDevelopmentCommentScreenshots=[];const dialog=document.getElementById(\"orbitDevelopmentDetailDialog\"),box=document.getElementById(\"orbitDevelopmentDetail\");box.innerHTML=\"<div class='orbit-dialog-heading'><div><p class='orbit-kicker'>\"+esc(note.id)+\" \\xB7 \"+esc(note.status)+\"</p><h2>\"+esc(note.title)+\"</h2></div><button type='button' class='secondary' data-close-development-detail>Close</button></div><div class='orbit-development-detail-body'><p>\"+esc(note.description).replace(/\\n/g,\"<br>\")+\"</p>\"+(note.expectedBehaviour?\"<section><strong>Expected behaviour</strong><p>\"+esc(note.expectedBehaviour).replace(/\\n/g,\"<br>\")+\"</p></section>\":\"\")+(note.actualBehaviour?\"<section><strong>What actually happened</strong><p>\"+esc(note.actualBehaviour).replace(/\\n/g,\"<br>\")+\"</p></section>\":\"\")+(note.adaptiveScope?.currentScope?\"<section class='orbit-current-target orbit-current-target-detail'><strong>Current Implementation Target \\xB7 Revision \"+esc(note.adaptiveScope.revision||1)+\"</strong><p>\"+esc(note.adaptiveScope.currentImplementationTarget||note.adaptiveScope.currentScope).replace(/\\n/g,\"<br>\")+\"</p>\"+(note.adaptiveScope.repeatedFailureWarning?\"<div class='orbit-repeat-warning'>\"+esc(note.adaptiveScope.repeatedFailureWarning)+\"</div>\":\"\")+\"</section><details class='orbit-adaptive-scope orbit-adaptive-scope-detail'><summary>Full Current Scope</summary><p>\"+esc(note.adaptiveScope.currentScope).replace(/\\n/g,\"<br>\")+\"</p></details>\"+((note.adaptiveScope.changesSinceLastAttempt||[]).length?\"<section class='orbit-scope-delta'><strong>What changed since the last attempt</strong><ul>\"+note.adaptiveScope.changesSinceLastAttempt.map(x=>\"<li>\"+esc(x)+\"</li>\").join(\"\")+\"</ul></section>\":\"\")+\"<section class='orbit-adaptive-brief'><strong>Developer Brief</strong><p>\"+esc(note.adaptiveScope.developerBrief||\"\").replace(/\\n/g,\"<br>\")+\"</p></section><section><strong>What to test now</strong><ol>\"+(note.adaptiveScope.acceptanceTests||[]).map(t=>\"<li>\"+esc(t)+\"</li>\").join(\"\")+\"</ol></section>\":\"\")+((note.trancheAcceptanceHistory||[]).length?\"<section class='orbit-tranche-acceptance-history'><strong>Release tranche acceptance history</strong><ul>\"+note.trancheAcceptanceHistory.slice().reverse().map(item=>\"<li><b>\"+esc(item.outcome||\"\")+\"</b> \\xB7 \"+esc(item.releaseVersion||\"\")+\" \\xB7 \"+esc(item.acceptanceId||\"\")+(item.feedback?\"<br>\"+esc(item.feedback):\"\")+\"</li>\").join(\"\")+\"</ul></section>\":\"\")+renderAiDossierV548(note.aiEngineeringDossier||null,\"note\",note.id)+renderDevelopmentPacketV558(note.aiDevelopmentPacket||null)+\"<div class='orbit-detail-screenshots'>\"+(note.screenshots||[]).map(x=>\"<a href='\"+x.dataUrl+\"' target='_blank'><img src='\"+x.dataUrl+\"' alt='Issue screenshot'></a>\").join(\"\")+\"</div>\"+((note.attachments||[]).length?\"<section><strong>Attached files</strong><div class='orbit-note-files-v563'>\"+renderDevelopmentAttachmentsV563(note.attachments)+\"</div></section>\":\"\")+\"<details open><summary>Captured context</summary><pre>\"+esc(JSON.stringify(note.context||{},null,2))+\"</pre></details><section><strong>Discussion</strong><div class='orbit-note-comments'>\"+(note.comments||[]).map(c=>\"<article><p>\"+esc(c.body).replace(/\\n/g,\"<br>\")+\"</p>\"+((c.screenshots||[]).length?\"<div class='orbit-comment-screenshots'>\"+(c.screenshots||[]).map(x=>\"<a href='\"+x.dataUrl+\"' target='_blank'><img src='\"+x.dataUrl+\"' alt='Comment screenshot'></a>\").join(\"\")+\"</div>\":\"\")+\"<small>\"+esc(c.author)+\" \\xB7 \"+new Date(c.createdAt).toLocaleString(\"en-GB\")+\"</small></article>\").join(\"\")+\"</div><textarea id='developmentNoteComment' rows='4' placeholder='Add testing feedback or implementation notes'></textarea><div class='orbit-comment-evidence'><button type='button' class='secondary' data-choose-comment-screenshots>Add screenshots</button><span id='developmentCommentScreenshotCount'>No screenshots attached</span></div><div id='developmentCommentScreenshotPreview' class='orbit-screenshot-preview'></div><button type='button' data-add-note-comment='\"+esc(note.id)+\"'>Add comment</button></section></div>\",openOrbitDialog(dialog)}function mountOrbitReviewLauncher(){let button2=document.getElementById(\"orbitReviewNotesFloatingButton\");return button2||(button2=document.createElement(\"button\"),button2.type=\"button\",button2.id=\"orbitReviewNotesFloatingButton\",button2.className=\"orbit-review-floating\",button2.setAttribute(\"aria-label\",\"Open Orbit Studio development note\"),button2.innerHTML='<span aria-hidden=\"true\">!</span><strong>Orbit Studio</strong>',button2.title=\"Create development note\"),button2.parentElement!==document.body&&document.body.appendChild(button2),button2.hidden=!1,Object.assign(button2.style,{position:\"fixed\",right:\"24px\",bottom:\"72px\",zIndex:\"2147483000\",display:\"flex\",visibility:\"visible\",opacity:\"1\",pointerEvents:\"auto\"}),button2}mountOrbitReviewLauncher();function reconcileOrbitAttentionCountsV185(root=document){(root&&root.querySelectorAll?root:document).querySelectorAll(\"[data-notification-count],[data-count],.orbit-alert-count,.orbit-count-badge,.orbit-nav-badge,.orbit-shipping-tabs button span\").forEach(function(el){const raw=String(el.dataset.notificationCount??el.dataset.count??el.textContent??\"\").trim(),numericText=raw.replace(/[^0-9.-]/g,\"\"),numeric=numericText===\"\"?NaN:Number(numericText);if(!(el.hasAttribute(\"data-notification-count\")||el.hasAttribute(\"data-count\")||el.matches(\".orbit-alert-count,.orbit-count-badge,.orbit-nav-badge,.orbit-shipping-tabs button span\")))return;const hide=raw===\"\"||Number.isFinite(numeric)&&numeric===0;el.hidden=hide,el.setAttribute(\"aria-hidden\",hide?\"true\":\"false\"),hide?el.dataset.orbitZeroCount=\"true\":delete el.dataset.orbitZeroCount})}let orbitAttentionCountFrameV185=0;function scheduleOrbitAttentionCountReconcileV185(root=document){orbitAttentionCountFrameV185||(orbitAttentionCountFrameV185=requestAnimationFrame(function(){orbitAttentionCountFrameV185=0,reconcileOrbitAttentionCountsV185(root)}))}const orbitAttentionCountObserverV185=new MutationObserver(function(records){const root=records.find(record=>record.target)?.target?.closest?.(\".orbit-admin-shell\")||document;scheduleOrbitAttentionCountReconcileV185(root)});reconcileOrbitAttentionCountsV185(),orbitAttentionCountObserverV185.observe(document.body,{subtree:!0,childList:!0,characterData:!0,attributes:!0,attributeFilter:[\"data-count\",\"data-notification-count\",\"hidden\"]}),document.addEventListener(\"click\",function(e){const trigger=e.target.closest(\"#orbitReviewNotesFloatingButton,#openReviewNoteFromHub,[data-open-review-note]\");trigger&&(e.preventDefault(),e.stopPropagation(),openOrbitReviewNote(trigger.id===\"openReviewNoteFromStudio\"))},!0),document.getElementById(\"minimiseReviewNoteDialog\")?.addEventListener(\"click\",()=>{saveQuickNoteDraftV415(),closeOrbitDialog(document.getElementById(\"orbitReviewNoteDialog\")),setNotice2(\"Quick Note minimised. Your draft is preserved.\")}),document.getElementById(\"clearReviewNoteDraft\")?.addEventListener(\"click\",()=>{confirm(\"Clear this unsaved Quick Note draft?\")&&(clearQuickNoteDraftV415(),orbitReviewScreenshots=[],orbitReviewAttachments=[],closeOrbitDialog(document.getElementById(\"orbitReviewNoteDialog\")),setNotice2(\"Quick Note draft cleared.\"))}),document.getElementById(\"chooseReviewScreenshots\")?.addEventListener(\"click\",function(){const input=document.getElementById(\"reviewScreenshotInput\");if(!input)return setNotice2(\"Screenshot picker is unavailable. Refresh Admin OS and try again.\",!0);try{typeof input.showPicker==\"function\"?input.showPicker():input.click()}catch{input.click()}}),document.getElementById(\"reviewScreenshotInput\")?.addEventListener(\"change\",function(){const selected=[...this.files||[]];this.value=\"\",selected.length&&addReviewFiles(selected)}),document.getElementById(\"reviewScreenshotPreview\")?.addEventListener(\"click\",e=>{const image=e.target.closest(\"[data-remove-review-image]\"),file=e.target.closest(\"[data-remove-review-file]\");if(image){orbitReviewScreenshots.splice(Number(image.dataset.removeReviewImage),1),renderReviewEvidenceV563(),saveQuickNoteDraftV415();return}file&&(orbitReviewAttachments.splice(Number(file.dataset.removeReviewFile),1),renderReviewEvidenceV563(),saveQuickNoteDraftV415())}),document.getElementById(\"saveReviewNoteButton\")?.addEventListener(\"click\",saveOrbitReviewNote),document.getElementById(\"orbitReviewNoteDialog\")?.addEventListener(\"input\",()=>saveQuickNoteDraftV415()),document.getElementById(\"orbitReviewNoteDialog\")?.addEventListener(\"change\",()=>saveQuickNoteDraftV415()),window.addEventListener(\"beforeunload\",()=>{document.getElementById(\"orbitReviewNoteDialog\")?.open&&saveQuickNoteDraftV415()}),quickNoteDraftV415()&&document.getElementById(\"orbitReviewNotesFloatingButton\")?.classList.add(\"has-draft\");const drop=document.getElementById(\"reviewScreenshotDropzone\");[\"dragenter\",\"dragover\"].forEach(name=>drop?.addEventListener(name,e=>{e.preventDefault(),drop.classList.add(\"is-dragging\")})),[\"dragleave\",\"drop\"].forEach(name=>drop?.addEventListener(name,e=>{e.preventDefault(),drop.classList.remove(\"is-dragging\"),name===\"drop\"&&addReviewFiles(e.dataTransfer.files)})),document.addEventListener(\"paste\",e=>{const dialog=document.getElementById(\"orbitReviewNoteDialog\");if(!!!(dialog&&(dialog.open===!0||dialog.hasAttribute(\"open\"))))return;const itemFiles=[...e.clipboardData?.items||[]].filter(i=>i.kind===\"file\"&&String(i.type||\"\").startsWith(\"image/\")).map(i=>i.getAsFile()).filter(Boolean),directFiles=[...e.clipboardData?.files||[]].filter(f=>String(f.type||\"\").startsWith(\"image/\")),files=[...itemFiles,...directFiles].filter((file,index,all)=>all.findIndex(other=>other===file||other.name===file.name&&other.size===file.size&&other.type===file.type)===index);files.length&&(e.preventDefault(),e.stopImmediatePropagation(),addReviewFiles(files),setNotice2(files.length+\" screenshot\"+(files.length===1?\"\":\"s\")+\" pasted into Quick Note.\"))},!0),document.addEventListener(\"keydown\",e=>{e.ctrlKey&&e.shiftKey&&e.key.toLowerCase()===\"n\"&&![\"INPUT\",\"TEXTAREA\"].includes(document.activeElement?.tagName)&&(e.preventDefault(),openOrbitReviewNote())});let orbitDeploymentStateV343={configuration:null,deployments:[]};const ORBIT_DEPLOYMENT_CACHE_KEY_V385=\"orbit:v385:deployment-status-cache\";function cacheDeploymentStateV385(){try{sessionStorage.setItem(ORBIT_DEPLOYMENT_CACHE_KEY_V385,JSON.stringify({savedAt:Date.now(),state:orbitDeploymentStateV343}))}catch{}}function hydrateDeploymentStateV385(){try{const cached=JSON.parse(sessionStorage.getItem(ORBIT_DEPLOYMENT_CACHE_KEY_V385)||\"null\");return!cached?.state||Date.now()-Number(cached.savedAt||0)>1800*1e3?!1:(orbitDeploymentStateV343=cached.state,renderDeployConfigurationV343(),renderDeploymentHistoryV343(),!0)}catch{return!1}}let orbitDeploymentAutoRefreshV370=null;function stopDeploymentAutoRefreshV370(){orbitDeploymentAutoRefreshV370&&(clearInterval(orbitDeploymentAutoRefreshV370),orbitDeploymentAutoRefreshV370=null)}function startDeploymentAutoRefreshV370(){stopDeploymentAutoRefreshV370(),orbitDeploymentAutoRefreshV370=setInterval(()=>{const panel=document.getElementById(\"orbitDeployPanel\");if(state.currentModule!==\"development\"||!panel||panel.hidden){stopDeploymentAutoRefreshV370();return}loadOrbitDeploymentsV343().catch(()=>{})},5e3)}function deploymentBadgeV343(status){const labels={staging:\"Verifying staged payload\",stage_failed:\"Staging blocked\",validated:\"Validated\",preparing:\"Preparing release\",deploying:\"Preparing release\",backend_committed:\"Deploy initiated\",backend_deploy_triggered:\"Deploy initiated\",deploy_initiated:\"Deploy initiated\",render_deploying:\"Deploying\",awaiting_acceptance:\"Release verification in progress\",acceptance_failed:\"Acceptance complete \\xB7 issues\",accepted:\"Certified\",failed:\"Failed\",failed_after_backend:\"Needs rollback\",rolling_back:\"Rollback initiated\",rollback_backend_triggered:\"Rollback deploying\",rolled_back:\"Rolled back\",rollback_failed:\"Rollback failed\"};return\"<span class='orbit-deploy-status status-\"+esc(String(status||\"unknown\").replace(/_/g,\"-\"))+\"'>\"+esc(labels[status]||status||\"Unknown\")+\"</span>\"}function renderDeployConfigurationV343(){const box=document.getElementById(\"orbitDeployConfiguration\"),c=orbitDeploymentStateV343.configuration;if(!box)return;if(!c){box.innerHTML=\"<p class='orbit-muted'>Deployment configuration unavailable.</p>\";return}const cards=[[\"GitHub backend\",c.github?.ready,c.github?.ready?c.github.owner+\"/\"+c.github.repo+\" \\xB7 \"+c.github.branch:\"Missing: \"+(c.github?.missing||[]).join(\", \")],[\"Render deploy\",c.render?.ready,c.render?.ready?\"Mode: \"+(c.render.mode||\"auto\")+(c.render.apiMonitoring?\" \\xB7 API truth enabled\":\" \\xB7 runtime truth only\")+(c.render.healthUrl?\" \\xB7 \"+c.render.healthUrl:\"\"):\"Missing: \"+(c.render?.missing||[]).join(\", \")],[\"Shopify live theme\",c.shopify?.ready,c.shopify?.ready?c.shopify.shop+(c.shopify.writeThemesKnown===null?\" \\xB7 write scope verified on deploy\":\" \\xB7 write_themes ready\"):\"Missing: \"+(c.shopify?.missing||[]).join(\", \")]];box.innerHTML=\"<div class='orbit-deploy-config-grid'>\"+cards.map(x=>\"<div class='orbit-deploy-config-card \"+(x[1]?\"ready\":\"needs-setup\")+\"'><span>\"+esc(x[0])+\"</span><strong>\"+(x[1]?\"Ready\":\"Setup required\")+\"</strong><small>\"+esc(x[2])+\"</small></div>\").join(\"\")+\"</div>\"+(c.github?.ready&&c.render?.ready?\"\":\"<div class='orbit-deploy-once'><strong>One-time setup</strong><span>Add the missing secret environment values in Render once. Orbit never displays or stores those secret values in the browser.</span></div>\")}function deploymentActionsV343(d){const actions=[];if(d.status===\"validated\"&&actions.push(\"<button type='button' data-orbit-deploy='\"+esc(d.id)+\"'>Deploy validated release</button><button type='button' class='secondary' data-orbit-discard-deploy='\"+esc(d.id)+\"'>Discard</button>\"),d.status===\"stage_failed\"&&actions.push(\"<button type='button' class='secondary' data-orbit-discard-deploy='\"+esc(d.id)+\"'>Discard failed staging</button>\"),[\"deploy_initiated\",\"backend_deploy_triggered\"].includes(d.status)){const ready=!!orbitDeploymentStateV343.configuration?.render?.manualDeployReady;actions.push(\"<button type='button' class='secondary' data-orbit-render-manual='\"+esc(d.id)+\"' \"+(ready?\"\":\"disabled title='Add ORBIT_RENDER_API_KEY in Render to enable exact-commit manual recovery'\")+\">Manual deploy exact commit</button>\")}return[\"backend_deploy_triggered\",\"deploy_initiated\",\"render_deploying\",\"awaiting_acceptance\",\"acceptance_failed\",\"accepted\",\"failed_after_backend\",\"rollback_failed\"].includes(d.status)&&actions.push(\"<button type='button' class='danger secondary' data-orbit-rollback='\"+esc(d.id)+\"'>Rollback \"+esc(d.manifest?.releaseVersion||\"current\")+\" \\u2192 \"+esc(d.manifest?.baseVersion||\"previous\")+\"</button>\"),actions.join(\"\")}function deploymentAcceptanceOwnershipV560(d){const ids=[...new Set((d.manifest?.acceptanceIds||[]).map(String))],items=Array.isArray(d.acceptanceSummary?.items)?d.acceptanceSummary.items:[],notes=new Map((orbitDevelopmentNotes||[]).map(n=>[String(n.id||n.noteId||\"\"),n])),itemMap=new Map(items.map(x=>[String(x.id||x.noteId||\"\"),x])),rows=ids.map(id=>{const note=notes.get(id),item=itemMap.get(id)||{},operator=note?operatorDevelopmentItemV559(note):!/^ACCEPT-/i.test(id),done=!!(item.passed||item.failed||item.resolved||item.held)||[\"Complete\",\"Archived\"].includes(String(item.status||\"\"));return{id,note,item,operator,pending:!done}});return{rows,operator:rows.filter(x=>x.operator),ai:rows.filter(x=>!x.operator),operatorPending:rows.filter(x=>x.operator&&x.pending),aiPending:rows.filter(x=>!x.operator&&x.pending)}}function deploymentIncidentSummaryV56702(d){const incident=d?.incident;if(!incident?.latestId)return\"\";const confidence=String(incident.confidence||\"\").replace(/_/g,\" \"),root=String(incident.rootCause||\"\").trim(),recovery=String(incident.safestRecovery||\"\").trim(),rollback=incident.rollbackCompleted===!0?\"Rollback was required and is complete\":incident.rollbackRequired===!0?\"Rollback required\":incident.rollbackRequired===!1?\"Rollback not required\":\"Rollback decision depends on remaining evidence\";return\"<details class='orbit-deploy-incident-v56702' open><summary>Deployment Incident Investigator \\xB7 \"+esc(confidence||\"forensics captured\")+\"</summary><div class='orbit-deploy-incident-body-v56702'>\"+(root?\"<p><strong>Cause</strong><span>\"+esc(root)+\"</span></p>\":\"\")+\"<p><strong>Recovery</strong><span>\"+esc(rollback+(recovery?\" \\xB7 \"+recovery:\"\"))+\"</span></p><small>Incident \"+esc(incident.latestId)+\" \\xB7 read-only investigation \\xB7 no deployment or rollback authority</small></div></details>\"}function deploymentAcceptanceSummaryV349(d){const own=deploymentAcceptanceOwnershipV560(d),a=d.acceptanceSummary||null;if(!(own.rows.length||Number(a?.total||0)))return\"\";const passed=Number(a?.passed||0),failed=Number(a?.failed||0),resolved=Number(a?.resolved||0),held=Number(a?.held||0),opPending=own.operatorPending.length,aiPending=own.aiPending.length;let state2,line;opPending?(state2=\"Your Acceptance in progress\",line=opPending+\" waiting for you\"+(aiPending?\" \\xB7 \"+aiPending+\" AI verification running\":\"\")):aiPending?(state2=\"AI verification in progress\",line=\"Nothing waiting for you \\xB7 \"+aiPending+\" AI check\"+(aiPending===1?\"\":\"s\")+\" running\"):(state2=failed>0?\"Release verification complete with issues\":\"Release verification complete\",line=\"Nothing waiting for you \\xB7 \"+own.operator.length+\" operator item\"+(own.operator.length===1?\"\":\"s\")+\" \\xB7 \"+own.ai.length+\" AI verification\"+(own.ai.length===1?\"\":\"s\")+\" \\xB7 \"+passed+\" passed\"+(resolved?\" \\xB7 \"+resolved+\" resolved\":\"\")+(held?\" \\xB7 \"+held+\" held\":\"\"));const detail=own.rows.length?\"<details class='orbit-deploy-acceptance-detail'><summary>View verification results</summary><div>\"+own.rows.map(row=>{const item=row.item||{},kind=row.operator?\"Your Acceptance\":\"AI verification\";return\"<div class='orbit-deploy-acceptance-item \"+(item.failed?\"failed\":item.passed?\"passed\":item.resolved?\"resolved\":item.held?\"held\":\"pending\")+\"'><strong>\"+esc(kind+\" \\xB7 \"+row.id)+\"</strong><span>\"+esc(item.held?\"Held for later\":item.outcome||\"Pending\")+\" \\xB7 \"+esc(item.status||\"Unknown\")+\"</span>\"+(item.holdReason?\"<small>\"+esc(item.holdReason)+\"</small>\":item.feedback?\"<small>\"+esc(item.feedback)+\"</small>\":\"\")+\"</div>\"}).join(\"\")+\"</div></details>\":\"\";return\"<div class='orbit-deploy-acceptance-summary'><strong>\"+esc(state2)+\"</strong><span>\"+esc(line)+\"</span>\"+detail+\"</div>\"}function newestDeploymentV418(rows){return[...rows||[]].sort((a,b)=>new Date(b.updatedAt||b.createdAt||0)-new Date(a.updatedAt||a.createdAt||0))[0]||null}function renderGlobalDeploymentAlertV418(data){const button2=$2(\"orbitGlobalDeploymentAlert\"),title=$2(\"orbitGlobalDeploymentAlertTitle\"),text2=$2(\"orbitGlobalDeploymentAlertText\");if(!button2)return;const current=[...data?.deployments||orbitDeploymentStateV343.deployments||[]].filter(x=>String(x.manifest?.releaseVersion||\"\")===ORBIT_RELEASE).sort((a,b)=>new Date(b.updatedAt||b.createdAt||0)-new Date(a.updatedAt||a.createdAt||0))[0]||null,status=String(current?.status||\"\");if(!(current&&[\"failed_after_backend\",\"rollback_failed\",\"rolling_back\",\"rollback_backend_triggered\"].includes(status))){button2.hidden=!0,button2.classList.remove(\"visible\",\"critical\");return}button2.hidden=!1,button2.classList.add(\"visible\",\"critical\"),title&&(title.textContent=\"Current release \"+ORBIT_RELEASE+\" needs recovery\"),text2&&(text2.textContent=status===\"failed_after_backend\"?\"Current deployment needs recovery \\xB7 open Deployments\":\"Current rollback needs recovery \\xB7 open Deployments\")}async function refreshGlobalDeploymentAlertV418(){if(state.adminAuthenticated)try{const data=await api(\"/api/admin/deployments/status\",{cacheMs:0,timeoutMs:12e3});renderGlobalDeploymentAlertV418(data)}catch{}}function renderDeploymentHistoryV343(){const box=document.getElementById(\"orbitDeploymentHistory\");if(!box)return;const openAcceptance=new Set([...box.querySelectorAll(\"details.orbit-deploy-acceptance-detail[open]\")].map(x=>x.closest(\"[data-orbit-deployment-card]\")?.dataset.orbitDeploymentCard).filter(Boolean)),rows=orbitDeploymentStateV343.deployments||[];if(!rows.length){box.innerHTML=\"<p class='orbit-muted'>No release ZIPs have been staged yet.</p>\";return}box.innerHTML=rows.map(d=>{const s=d.summary||{},events=d.events||[],last=events[events.length-1],release=d.manifest?.releaseVersion||\"Unknown release\",base=d.manifest?.baseVersion||\"\\u2014\",title=d.status===\"rolled_back\"||d.status===\"rollback_backend_triggered\"||d.status===\"rolling_back\"?release+\" \\u2192 \"+base:release,subtitle=d.status===\"rolled_back\"?base+\" is live after rollback \\xB7 \"+new Date(d.createdAt).toLocaleString(\"en-GB\"):\"from \"+base+\" \\xB7 \"+new Date(d.createdAt).toLocaleString(\"en-GB\"),lastMessage=String(last?.message||last?.type||\"\").trim(),errorMessage=String(d.lastError?.message||\"\").trim(),showError=![\"awaiting_acceptance\",\"accepted\",\"rolled_back\"].includes(d.status)&&errorMessage,showEvent=lastMessage&&(!showError||lastMessage!==errorMessage),payload=d.payloadIntegrity||null,payloadVerified=payload?.ok===!0,impossibleThemeOnly=Number(s.backendFiles||0)>0&&/theme-only/i.test(lastMessage),payloadMetric=payloadVerified?\"<span>staged payload \\u2713</span>\":\"\",integrityWarning=impossibleThemeOnly?\"<p class='orbit-deploy-error'><strong>Protected deployment inconsistency</strong> \\xB7 manifest declares backend files but this historical event was classified as theme-only. Do not treat this release as a coherent deployment.</p>\":\"\";return\"<article class='orbit-deploy-release' data-orbit-deployment-card='\"+esc(d.id)+\"'><div class='orbit-deploy-release-head'><div><strong>\"+esc(title)+\"</strong><small>\"+esc(subtitle)+\"</small></div>\"+deploymentBadgeV343(d.status)+\"</div><div class='orbit-deploy-metrics'><span>\"+Number(s.backendFiles||0)+\" backend</span><span>\"+Number(s.themeFiles||0)+\" theme</span><span>\"+Number(s.totalBytes||0).toLocaleString()+\" bytes</span>\"+payloadMetric+(()=>{const own=deploymentAcceptanceOwnershipV560(d);return(own.operator.length?\"<span>\"+own.operator.length+\" Your Acceptance</span>\":\"\")+(own.ai.length?\"<span>\"+own.ai.length+\" AI verification</span>\":\"\")})()+\"</div>\"+integrityWarning+deploymentAcceptanceSummaryV349(d)+deploymentIncidentSummaryV56702(d)+(showEvent?\"<p class='orbit-deploy-event'>\"+esc(lastMessage)+\"</p>\":\"\")+(showError?\"<p class='orbit-deploy-error'>\"+esc(errorMessage)+\"</p>\":\"\")+\"<div class='orbit-action-row'>\"+deploymentActionsV343(d)+\"</div></article>\"}).join(\"\");for(const id of openAcceptance){const details=box.querySelector(\"[data-orbit-deployment-card='\"+CSS.escape(id)+\"']\")?.querySelector(\"details.orbit-deploy-acceptance-detail\");details&&(details.open=!0)}}async function loadOrbitDeploymentsV343(){const data=await api(\"/api/admin/deployments/status\",{cacheMs:0,timeoutMs:2e4});return orbitDeploymentStateV343={configuration:data.configuration||null,deployments:data.deployments||[]},cacheDeploymentStateV385(),renderDeployConfigurationV343(),renderDeploymentHistoryV343(),renderGlobalDeploymentAlertV418(data),data}async function stageOrbitReleaseV343(file){if(!file)return;const name=document.getElementById(\"orbitReleaseZipName\"),result=document.getElementById(\"orbitReleaseStageResult\");name&&(name.textContent=file.name+\" \\xB7 \"+Math.round(file.size/1024)+\" KB\"),result&&(result.hidden=!1,result.className=\"orbit-deploy-stage-result\",result.innerHTML=\"<strong>Validating\\u2026</strong><span>Checking manifest, paths, hashes and release identity.</span>\");try{const d=(await api(\"/api/admin/deployments/stage\",{method:\"POST\",headers:{\"Content-Type\":\"application/zip\"},body:file,timeoutMs:9e4,cacheMs:0})).deployment,s=d.summary||{},payloadVerified=d.payloadIntegrity?.ok===!0;result&&(result.innerHTML=\"<strong>\"+esc(d.manifest.releaseVersion)+\" validated \\u2713</strong><span>\"+Number(s.backendFiles||0)+\" backend files \\xB7 \"+Number(s.themeFiles||0)+\" Shopify theme files \\xB7 base \"+esc(d.manifest.baseVersion)+(payloadVerified?\" \\xB7 staged payload read-back verified\":\"\")+\"</span><small>Nothing has been deployed yet. Review the release below, then press Deploy validated release.</small>\"),await loadOrbitDeploymentsV343()}catch(err){throw result&&(result.classList.add(\"error\"),result.innerHTML=\"<strong>Package rejected</strong><span>\"+esc(err.message||err)+\"</span>\"),err}}const ORBIT_PENDING_DEPLOYMENT_KEY_V366=\"orbitPendingDeploymentIdV366\";function rememberPendingDeploymentV366(id){try{id?localStorage.setItem(ORBIT_PENDING_DEPLOYMENT_KEY_V366,String(id)):localStorage.removeItem(ORBIT_PENDING_DEPLOYMENT_KEY_V366)}catch{}}function pendingDeploymentV366(){try{return localStorage.getItem(ORBIT_PENDING_DEPLOYMENT_KEY_V366)||\"\"}catch{return\"\"}}function resumePendingDeploymentPollV366(){const id=pendingDeploymentV366();!id||state.currentModule!==\"development\"||pollDeploymentV343(id).catch(()=>{})}async function activateDeployedAdminReleaseV829(deployment){\n  const release=normaliseAdminReleaseV793(deployment?.manifest?.releaseVersion),theme=deployment?.theme?.deployment;\n  if(!release||release===ORBIT_RELEASE||!['awaiting_acceptance','acceptance_failed','accepted'].includes(deployment?.status))return false;\n  // A running backend alone does not prove that the replacement Admin document is ready.\n  if(deployment?.payloadIntegrity?.ok!==true||theme?.verified!==true||theme?.adminVerification?.verified!==true||theme?.adminVerification?.normalAdminUrlVerified!==true)return false;\n  const live=await readAuthoritativeAdminReleaseV829({fresh:true});if(live!==release)return false;\n  const panel=document.getElementById('orbitDeployPanel');\n  if(window.__ORBIT_ADMIN_DIRTY_INPUT_V829__||state.currentModule!=='development'||!panel||panel.hidden||!panel.getClientRects().length){showAdminReleaseUpdateV829(release);return false;}\n  const key='orbit:v829:deployed-admin:'+String(deployment.id||release);\n  try{if(sessionStorage.getItem(key)==='1')return false;sessionStorage.setItem(key,'1');}catch{}\n  if(window.__ORBIT_ADMIN_RELEASE_NAVIGATION_V793__)return false;\n  window.__ORBIT_ADMIN_RELEASE_NAVIGATION_V793__=true;\n  window.location.replace(orbitAdminReleaseAddressedUrlV359(release,{forceRefresh:params.get(ORBIT_ADMIN_RELEASE_PARAM)===release}).toString());\n  return true;\n}\nasync function pollDeploymentV343(id,minutes=10){\n  const deadline=Date.now()+minutes*60000;\n  for(;Date.now()<deadline;){\n    await new Promise(r=>setTimeout(r,5000));\n    try{\n      const d=(await api('/api/admin/deployments/'+encodeURIComponent(id),{cacheMs:0,timeoutMs:12000})).deployment;\n      await loadOrbitDeploymentsV343();\n      if(['awaiting_acceptance','acceptance_failed','accepted','rolled_back','failed','failed_after_backend','rollback_failed'].includes(d.status)){\n        rememberPendingDeploymentV366('');\n        if(['awaiting_acceptance','acceptance_failed','accepted'].includes(d.status)){\n          if(await activateDeployedAdminReleaseV829(d))return d;\n          try{await loadOrbitDevelopmentHub({forceFresh:true,background:true});renderVerificationQueue(true);renderHeldVerificationQueue(true);}catch(error){console.warn('Post-deploy Acceptance refresh waiting:',error.message||error);}\n        }\n        return d;\n      }\n    }catch{}\n  }\n  return null;\n}\nasync function recoverDeployStartV375(id,originalError){const deadline=Date.now()+9e4;for(;Date.now()<deadline;){try{const d=(await api(\"/api/admin/deployments/\"+encodeURIComponent(id),{cacheMs:0,timeoutMs:12e3})).deployment||{};if(await loadOrbitDeploymentsV343().catch(()=>{}),d.status&&d.status!==\"validated\")return await activateDeployedAdminReleaseV829(d),setNotice2([\"failed\",\"failed_after_backend\"].includes(d.status)?d.lastError?.message||\"Deployment failed.\":\"Deploy accepted on the first press \\xB7 \"+String(d.status).replace(/_/g,\" \")+\".\"),[\"preparing\",\"deploying\",\"backend_committed\",\"backend_deploy_triggered\",\"deploy_initiated\",\"render_deploying\"].includes(d.status)&&pollDeploymentV343(id).catch(()=>{}),!0}catch{}await new Promise(r=>setTimeout(r,3e3))}return rememberPendingDeploymentV366(\"\"),setNotice2(originalError?.message||originalError||\"Orbit could not confirm that deployment started.\",!0),!1}function unresolvedPriorDeploymentV385(currentId){const unresolved=new Set([\"failed_after_backend\",\"rollback_failed\",\"preparing\",\"deploying\",\"backend_committed\",\"backend_deploy_triggered\",\"deploy_initiated\",\"render_deploying\",\"rolling_back\",\"rollback_backend_triggered\"]);return(orbitDeploymentStateV343.deployments||[]).find(d=>{if(!d||d.id===currentId||!unresolved.has(String(d.status||\"\")))return!1;const release=String(d.manifest?.releaseVersion||\"\"),base=String(d.manifest?.baseVersion||\"\");return release===ORBIT_RELEASE||base===ORBIT_RELEASE})||null}async function deployReleaseV343(id,button2){const prior=unresolvedPriorDeploymentV385(id);if(prior){const label=String(prior.manifest?.releaseVersion||\"Previous release\");if(!confirm(`\\u26A0\\uFE0F PREVIOUS DEPLOYMENT UNRESOLVED\n\n`+label+\" is still \"+String(prior.status||\"unresolved\").replace(/_/g,\" \")+`.\n\nContinuing may create version drift or complicate recovery.\n\nChoose Cancel to investigate. Press OK only if you deliberately want to continue.`))return}if(!confirm(`Deploy this validated Orbit release to production?\n\nOrbit will snapshot the current backend/theme state first and keep rollback available.`))return;const original=button2?.textContent||\"Deploy validated release\";button2&&(button2.disabled=!0,button2.classList.add(\"is-working\"),button2.setAttribute(\"aria-busy\",\"true\"),button2.textContent=\"Starting deployment\\u2026\"),rememberPendingDeploymentV366(id);try{const data=await api(\"/api/admin/deployments/\"+encodeURIComponent(id)+\"/deploy\",{method:\"POST\",body:\"{}\",timeoutMs:12e4,cacheMs:0});button2&&document.contains(button2)&&(button2.textContent=[\"backend_deploy_triggered\",\"deploy_initiated\"].includes(data.deployment?.status)?\"Deploy initiated\\u2026\":data.deployment?.status===\"render_deploying\"?\"Deploying\\u2026\":\"Deployment accepted\\u2026\"),setNotice2([\"backend_deploy_triggered\",\"deploy_initiated\"].includes(data.deployment?.status)?\"Deploy initiated. GitHub is complete; Orbit is waiting for positive Render confirmation.\":data.deployment?.status===\"render_deploying\"?\"Render confirmed the exact commit is deploying.\":\"Release deployed.\"),await loadOrbitDeploymentsV343(),[\"backend_deploy_triggered\",\"deploy_initiated\",\"render_deploying\"].includes(data.deployment?.status)?pollDeploymentV343(id).catch(()=>{}):(rememberPendingDeploymentV366(\"\"),await activateDeployedAdminReleaseV829(data.deployment))}catch(err){button2&&document.contains(button2)&&(button2.textContent=\"Confirming deployment\\u2026\"),setNotice2(\"Deploy request sent. Orbit is confirming the persisted deployment state\\u2026\"),!await recoverDeployStartV375(id,err)&&button2&&document.contains(button2)&&(button2.disabled=!1,button2.classList.remove(\"is-working\"),button2.removeAttribute(\"aria-busy\"),button2.textContent=original)}}async function manualRenderDeployV392(id,button2){if(confirm(`Manually trigger Render for the exact Git commit already attached to this Orbit release?\n\nThis does not create a new GitHub commit and will not deploy a different release.`)){setLoading(button2,!0);try{const data=await api(\"/api/admin/deployments/\"+encodeURIComponent(id)+\"/render-manual\",{method:\"POST\",body:\"{}\",timeoutMs:6e4,cacheMs:0});setNotice2(\"Render manual recovery requested for the exact release commit.\"),await loadOrbitDeploymentsV343(),pollDeploymentV343(id).catch(()=>{})}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}}async function rollbackReleaseV343(id,button2){if(confirm(`ROLL BACK this release to its exact pre-deployment backend/theme snapshot?\n\nOrbit will create a verified forward recovery commit from the stored pre-release snapshot and refuse only if that deterministic recovery cannot be proven.`)){setLoading(button2,!0);try{const data=await api(\"/api/admin/deployments/\"+encodeURIComponent(id)+\"/rollback\",{method:\"POST\",body:\"{}\",timeoutMs:12e4,cacheMs:0});setNotice2(data.deployment?.status===\"rollback_backend_triggered\"?\"Rollback deploy triggered. Orbit will restore the theme after the previous backend boots.\":\"Rollback completed.\"),await loadOrbitDeploymentsV343(),data.deployment?.status===\"rollback_backend_triggered\"&&pollDeploymentV343(id).catch(()=>{})}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}}function ensureOrbitV824Shell(){\n const select=$2(\"orbitBusinessWorkspaceV599\");\n if(select&&!select.querySelector('option[value=\"influencer-engine\"]')){const option=document.createElement(\"option\");option.value=\"influencer-engine\";option.textContent=\"Influencer Engine\";const before=select.querySelector('option[value=\"communications\"]');select.insertBefore(option,before||null)}\n const rail=document.querySelector(\".orbit-v76-rail\"),railDefs=[[\"influencer-home\",\"\uD83C\uDFAC\",\"Home\"],[\"influencer-market\",\"\uD83D\uDCC8\",\"Market Intelligence\"],[\"influencer-stories\",\"\uD83D\uDCA1\",\"Story Queue\"],[\"influencer-production\",\"\uD83C\uDFA5\",\"Production\"],[\"influencer-assets\",\"\uD83E\uDDCD\",\"PokeMaya Assets\"],[\"influencer-publishing\",\"\uD83D\uDE80\",\"Publishing\"],[\"influencer-performance\",\"\uD83D\uDCCA\",\"Performance\"],[\"influencer-settings\",\"\uD83D\uDD0C\",\"Connections\"]];\n if(rail)for(const [key,icon,label] of railDefs)if(!rail.querySelector('[data-workspace-nav=\"'+key+'\"]')){const b=document.createElement(\"button\");b.type=\"button\";b.dataset.workspaceNav=key;b.innerHTML='<span class=\"orbit-rail-icon\" aria-hidden=\"true\">'+icon+'</span><strong>'+label+'</strong>';rail.appendChild(b)}\n const context=document.querySelector(\".orbit-v76-context-nav\");\n if(context&&!context.querySelector('[data-workspace-group=\"influencer-engine\"]')){const group=document.createElement(\"div\");group.dataset.workspaceGroup=\"influencer-engine\";group.innerHTML='<button type=\"button\" data-module-nav=\"influencer-engine\" data-influencer-open=\"home\" class=\"active\">Home</button><button type=\"button\" data-module-nav=\"influencer-engine\" data-influencer-open=\"market\">Market Intelligence</button><button type=\"button\" data-module-nav=\"influencer-engine\" data-influencer-open=\"stories\">Story Queue</button><button type=\"button\" data-module-nav=\"influencer-engine\" data-influencer-open=\"production\">Production</button><button type=\"button\" data-module-nav=\"influencer-engine\" data-influencer-open=\"assets\">PokeMaya Assets</button><button type=\"button\" data-module-nav=\"influencer-engine\" data-influencer-open=\"publishing\">Publishing</button><button type=\"button\" data-module-nav=\"influencer-engine\" data-influencer-open=\"performance\">Performance</button><button type=\"button\" data-module-nav=\"influencer-engine\" data-influencer-open=\"settings\">Connections</button>';const finance=context.querySelector('[data-workspace-group=\"finance\"]');context.insertBefore(group,finance||null)}\n const devGroup=document.querySelector('[data-workspace-group=\"development\"]');\n if(devGroup&&!devGroup.querySelector('[data-development-tab=\"costs\"]')){const b=document.createElement(\"button\");b.type=\"button\";b.dataset.developmentTab=\"costs\";b.textContent=\"Subscriptions & Costs\";const deploy=devGroup.querySelector('[data-development-tab=\"deploy\"]');devGroup.insertBefore(b,deploy||null)}\n const shell=document.querySelector(\".orbit-admin-shell\"),devModule=shell?.querySelector('[data-module=\"development\"]');\n if(shell&&!$2(\"orbitInfluencerEngineV824\")){const section=document.createElement(\"section\");section.id=\"orbitInfluencerEngineV824\";section.className=\"orbit-module\";section.dataset.module=\"influencer-engine\";section.setAttribute(\"aria-label\",\"Influencer Engine\");section.innerHTML='<div class=\"orbit-section-heading\"><div><p class=\"orbit-kicker\">INFLUENCER ENGINE</p><h2>PokeMaya Content Studio</h2><p>Market Intelligence \u2192 Story Queue \u2192 Script \u2192 Voice \u2192 Render \u2192 Edit \u2192 QA \u2192 Ready \u2192 Published.</p></div><button type=\"button\" class=\"secondary\" data-inf-refresh-v824>Refresh</button></div><div id=\"influencerHomeV824\" data-influencer-pane-v824=\"home\"><p class=\"orbit-muted\">Loading PokeMaya workspace\u2026</p></div><div id=\"influencerMarketV824\" data-influencer-pane-v824=\"market\" hidden></div><div id=\"influencerStoriesV824\" data-influencer-pane-v824=\"stories\" hidden></div><div id=\"influencerProductionV824\" data-influencer-pane-v824=\"production\" hidden></div><div id=\"influencerAssetsV824\" data-influencer-pane-v824=\"assets\" hidden></div><div id=\"influencerPublishingV824\" data-influencer-pane-v824=\"publishing\" hidden></div><div id=\"influencerPerformanceV824\" data-influencer-pane-v824=\"performance\" hidden></div><div id=\"influencerSettingsV824\" data-influencer-pane-v824=\"settings\" hidden></div>';shell.insertBefore(section,devModule||null)}\n const devHome=$2(\"orbitDevelopmentHomePanel\");\n if(devHome&&!$2(\"orbitDevelopmentCostsPanel\")){const panel=document.createElement(\"div\");panel.id=\"orbitDevelopmentCostsPanel\";panel.className=\"orbit-development-panel\";panel.hidden=!0;panel.innerHTML='<div class=\"orbit-development-toolbar\"><div><p class=\"orbit-kicker\">ORBIT RUNNING COSTS</p><h3>Subscriptions & Costs</h3><p>Accounts, subscriptions, usage providers and AI/API spend related to Orbit OS.</p></div><button type=\"button\" class=\"secondary\" data-cost-refresh-v824>Refresh</button></div><div id=\"orbitDevelopmentCostsContentV824\"><p class=\"orbit-muted\">Loading service register and AI usage\u2026</p></div>';devHome.parentElement?.insertBefore(panel,devHome)}\n}\nconst influencerStagesV824=[\"market_intelligence\",\"story_queue\",\"script\",\"voice\",\"render\",\"edit\",\"qa\",\"ready\",\"published\"];\nconst influencerStageLabelsV824={market_intelligence:\"Market Intelligence\",story_queue:\"Story Queue\",script:\"Script\",voice:\"Voice\",render:\"Render\",edit:\"Edit\",qa:\"QA\",ready:\"Ready\",published:\"Published\"};\nfunction setInfluencerPaneV824(pane){const allowed=new Set([\"home\",\"market\",\"stories\",\"production\",\"assets\",\"publishing\",\"performance\",\"settings\"]);pane=allowed.has(String(pane))?String(pane):\"home\";state.currentInfluencerPaneV824=pane;document.querySelectorAll(\"[data-influencer-pane-v824]\").forEach(el=>{el.hidden=el.dataset.influencerPaneV824!==pane});document.querySelectorAll(\"[data-influencer-open]\").forEach(b=>b.classList.toggle(\"active\",b.dataset.influencerOpen===pane))}\nfunction influencerBadgeV824(status){const value=String(status||\"\").replaceAll(\"_\",\" \");return \"<span class='orbit-status-chip'>\"+esc(value||\"unknown\")+\"</span>\"}\nfunction influencerStoryRowsV824(stories,filter){const rows=(stories||[]).filter(x=>!filter||filter.includes(x.stage));if(!rows.length)return\"<div class='orbit-empty-state'><strong>No stories here yet</strong><p>Add a story or move one through the pipeline.</p></div>\";return\"<div class='orbit-table-wrap'><table><thead><tr><th>Story</th><th>Stage</th><th>Updated</th><th>Move</th></tr></thead><tbody>\"+rows.map(row=>\"<tr><td><strong>\"+esc(row.title)+\"</strong><small>\"+esc(row.angle||row.sourceNotes||\"\")+\"</small></td><td>\"+influencerBadgeV824(influencerStageLabelsV824[row.stage]||row.stage)+\"</td><td>\"+esc(row.updatedAt?new Date(row.updatedAt).toLocaleString(\"en-GB\"):\"\u2014\")+\"</td><td><select data-inf-story-stage-v824='\"+esc(row.id)+\"'>\"+influencerStagesV824.map(stage=>\"<option value='\"+stage+\"'\"+(stage===row.stage?\" selected\":\"\")+\">\"+esc(influencerStageLabelsV824[stage])+\"</option>\").join(\"\")+\"</select><button type='button' class='secondary' data-inf-story-save-v824='\"+esc(row.id)+\"'>Save</button></td></tr>\").join(\"\")+\"</tbody></table></div>\"}\nfunction renderInfluencerEngineV824(data){const settings=data.settings||{},counts=data.counts||{},stories=data.stories||[],brand=settings.brand||{},locks=settings.locks||{};\n const metrics=influencerStagesV824.map(stage=>\"<article><span>\"+esc(influencerStageLabelsV824[stage])+\"</span><strong>\"+Number(counts[stage]||0)+\"</strong><small>items</small></article>\").join(\"\");\n const home=$2(\"influencerHomeV824\");if(home)home.innerHTML=\"<div class='orbit-panel'><p class='orbit-kicker'>POKEMAYA COMMAND CENTRE</p><h2>\"+esc(brand.publicBrand||\"PokeMaya\")+\" \u00B7 \"+esc(brand.presenterName||\"Maya Vale\")+\"</h2><p>Maya-only presenter. Face, studio, voice, lip-sync and motion stay locked; variation comes from the story and delivery, not redesigning her.</p></div><div class='orbit-metrics'>\"+metrics+\"</div><div class='orbit-panel'><h3>Creative safety rules</h3><ul><li>Use genuine card, sealed-product and logo assets only.</li><li>Use verified sold/price evidence and programmatic charts.</li><li>Format: Maya hook \u2192 full-screen real card/chart with continuous voiceover \u2192 Maya conclusion.</li><li>Human approval stays required; auto-publish is off.</li></ul></div>\";\n const market=$2(\"influencerMarketV824\");if(market)market.innerHTML=\"<div class='orbit-panel'><h3>Market Intelligence</h3><p>Signals belong here only when they can be backed by real Pok\u00E9mon market evidence. Paid scanning remains off unless explicitly reintroduced later.</p></div>\"+influencerStoryRowsV824(stories,[\"market_intelligence\"]);\n const story=$2(\"influencerStoriesV824\");if(story)story.innerHTML=\"<div class='orbit-panel'><h3>Add story</h3><div class='orbit-form-grid'><label>Title<input id='infStoryTitleV824' maxlength='220'></label><label>Angle<input id='infStoryAngleV824' maxlength='2000'></label><label>Evidence / source notes<textarea id='infStorySourceV824' rows='3'></textarea></label></div><div class='orbit-action-row'><button type='button' data-inf-story-create-v824>Add to Story Queue</button></div></div>\"+influencerStoryRowsV824(stories,[\"story_queue\"]);\n const prod=$2(\"influencerProductionV824\");if(prod)prod.innerHTML=\"<div class='orbit-panel'><h3>Production pipeline</h3><p>Script \u2192 Voice \u2192 Render \u2192 Edit \u2192 QA \u2192 Ready. Provider connections are managed separately; opening this page never spends credits.</p></div>\"+influencerStoryRowsV824(stories,[\"script\",\"voice\",\"render\",\"edit\",\"qa\",\"ready\"]);\n const assets=$2(\"influencerAssetsV824\");if(assets)assets.innerHTML=\"<div class='orbit-metrics'><article><span>Presenter</span><strong>\"+esc(brand.presenterName||\"Maya Vale\")+\"</strong><small>Locked</small></article><article><span>Studio</span><strong>\"+(locks.studio?\"Locked\":\"Review\")+\"</strong><small>PokeMaya studio</small></article><article><span>Voice</span><strong>\"+(locks.voice?\"Locked\":\"Review\")+\"</strong><small>ElevenLabs \u00B7 Maya voice</small></article><article><span>Motion</span><strong>\"+(locks.motion?\"Locked\":\"Review\")+\"</strong><small>Lip-sync & movement</small></article></div><div class='orbit-panel'><h3>Asset rule</h3><p>Never AI-generate Pok\u00E9mon cards, boxes, logos, prices or charts. Use genuine images and verified/programmatic data graphics.</p></div>\";\n const pub=$2(\"influencerPublishingV824\");if(pub)pub.innerHTML=\"<div class='orbit-panel'><h3>Human-approved publishing</h3><p>Ready content stays here until you explicitly approve it. Auto-publish remains disabled.</p><div id='influencerPublishConnectionsV825' class='orbit-muted'>Loading publishing connections\u2026</div></div>\"+influencerStoryRowsV824(stories,[\"ready\",\"published\"]);\n const perf=$2(\"influencerPerformanceV824\");if(perf)perf.innerHTML=\"<div class='orbit-metrics'><article><span>Published</span><strong>\"+Number(counts.published||0)+\"</strong><small>content items</small></article><article><span>Feedback loop</span><strong>Connection-ready</strong><small>Social metrics can feed story selection after accounts are linked.</small></article></div>\";\n const settingsEl=$2(\"influencerSettingsV824\");if(settingsEl)settingsEl.innerHTML=\"<div class='orbit-panel'><h3>Connections</h3><p>Loading secure provider connections\u2026</p></div>\";\n bindInfluencerEngineV824()}\nasync function loadInfluencerEngineV824(force=!1){const data=await api(\"/api/admin/influencer-engine\",{cacheMs:force?0:5e3,timeoutMs:15e3});renderInfluencerEngineV824(data);loadInfluencerConnectionsV825(force).catch(err=>{const n=$2(\"influencerSettingsV824\");if(n)n.innerHTML=\"<div class='orbit-notice error'>Connections unavailable: \"+esc(err.message||err)+\"</div>\"});return data}\nfunction bindInfluencerEngineV824(){const root=$2(\"orbitInfluencerEngineV824\");if(!root||root.dataset.boundV824)return;root.dataset.boundV824=\"1\";root.addEventListener(\"click\",async event=>{const refresh=event.target.closest(\"[data-inf-refresh-v824]\"),create=event.target.closest(\"[data-inf-story-create-v824]\"),save=event.target.closest(\"[data-inf-story-save-v824]\"),connections=event.target.closest(\"[data-inf-save-connections-v824]\");if(refresh){setLoading(refresh,!0);try{await loadInfluencerEngineV824(!0);setNotice2(\"Influencer Engine refreshed.\")}finally{setLoading(refresh,!1)}return}if(create){const title=$2(\"infStoryTitleV824\")?.value.trim(),angle=$2(\"infStoryAngleV824\")?.value.trim(),sourceNotes=$2(\"infStorySourceV824\")?.value.trim();if(!title)return setNotice2(\"Add a story title first.\",!0);setLoading(create,!0);try{await api(\"/api/admin/influencer-engine/stories\",{method:\"POST\",body:JSON.stringify({title,angle,sourceNotes,stage:\"story_queue\"}),cacheMs:0});await loadInfluencerEngineV824(!0);setNotice2(\"Story added to PokeMaya queue.\")}finally{setLoading(create,!1)}return}if(save){const id=save.dataset.infStorySaveV824,stage=root.querySelector(\"[data-inf-story-stage-v824='\"+CSS.escape(id)+\"']\")?.value;setLoading(save,!0);try{await api(\"/api/admin/influencer-engine/stories/\"+encodeURIComponent(id),{method:\"PATCH\",body:JSON.stringify({stage}),cacheMs:0});await loadInfluencerEngineV824(!0);setNotice2(\"Story stage updated.\")}finally{setLoading(save,!1)}return}if(connections){const payload=[...root.querySelectorAll(\".orbit-inf-connection-v824\")].map(row=>({id:row.dataset.infConnectionId,status:row.querySelector(\"[data-inf-connection-status]\")?.value,accountLabel:row.querySelector(\"[data-inf-connection-account]\")?.value,reference:row.querySelector(\"[data-inf-connection-reference]\")?.value}));setLoading(connections,!0);try{await api(\"/api/admin/influencer-engine/settings\",{method:\"POST\",body:JSON.stringify({connections:payload}),cacheMs:0});await loadInfluencerEngineV824(!0);setNotice2(\"Influencer Engine connection details saved.\")}finally{setLoading(connections,!1)}}})}\n\nfunction infConnStateV825(p){if(p.id===\"higgsfield\")return p.status===\"available_in_chat\"?\"ChatGPT connected\":\"ChatGPT only\";if(p.connected)return\"Connected\";if(p.configuration?.ready)return\"Ready to connect\";return\"Setup required\"}\nfunction infConnClassV825(p){return p.connected?\"ok\":p.configuration?.ready||p.id===\"higgsfield\"?\"info\":\"warn\"}\nfunction infTargetsV825(p){if(!Array.isArray(p.targets)||!p.targets.length)return\"\";return\"<label>Publishing target<select data-inf-target-v825='\"+esc(p.id)+\"'>\"+p.targets.map(t=>\"<option value='\"+esc(t.id)+\"'\"+(String(p.activeTargetId||\"\")===String(t.id)?\" selected\":\"\")+\">\"+esc(t.label||t.id)+(t.instagramUsername?\" \u00B7 @\"+esc(t.instagramUsername):\"\")+\"</option>\").join(\"\")+\"</select></label><button type='button' class='secondary' data-inf-target-save-v825='\"+esc(p.id)+\"'>Use target</button>\"}\nfunction infOauthSetupV825(p){if(![\"youtube\",\"meta\",\"tiktok\"].includes(p.id))return\"\";const cfg=p.configuration||{},label=p.id===\"meta\"?\"Meta App ID\":p.id===\"tiktok\"?\"TikTok Client Key\":\"Google Client ID\",secret=p.id===\"meta\"?\"Meta App Secret\":p.id===\"tiktok\"?\"TikTok Client Secret\":\"Google Client Secret\";return\"<details class='orbit-panel' style='margin-top:12px'><summary>\"+(cfg.ready?\"OAuth app configured\":\"Configure OAuth app\")+\"</summary><p><strong>Callback URL</strong><br><code>\"+esc(cfg.redirectUri||\"Backend URL not configured\")+\"</code></p><div class='orbit-form-grid'><label>\"+label+\"<input data-inf-app-id-v825='\"+esc(p.id)+\"' autocomplete='off' placeholder='\"+(cfg.appCredentialsStored?\"Stored securely \u2014 enter only to replace\":\"\")+\"' value=''></label><label>\"+secret+\"<input type='password' data-inf-app-secret-v825='\"+esc(p.id)+\"' autocomplete='new-password' placeholder='\"+(cfg.appCredentialsStored?\"Stored securely \u2014 enter only to replace\":\"\")+\"' value=''></label></div><div class='orbit-action-row'><button type='button' class='secondary' data-inf-app-save-v825='\"+esc(p.id)+\"'>Save app credentials</button><button type='button' class='secondary' data-inf-copy-v825='\"+esc(cfg.redirectUri||\"\")+\"'>Copy callback URL</button></div><small>Secrets are encrypted server-side and are never displayed again.</small></details>\"}\nfunction infProviderCardV825(p){const oauth=[\"youtube\",\"meta\",\"tiktok\"].includes(p.id),connected=p.connected===true,state=infConnStateV825(p),account=p.accountLabel||\"\",buttons=[];if(oauth&&p.configuration?.ready)buttons.push(\"<button type='button' data-inf-connect-v825='\"+esc(p.id)+\"'>\"+(connected?\"Reconnect\":\"Connect\")+\"</button>\");if(connected&&[\"youtube\",\"meta\",\"tiktok\",\"elevenlabs\",\"metricool\"].includes(p.id))buttons.push(\"<button type='button' class='secondary' data-inf-test-v825='\"+esc(p.id)+\"'>Test connection</button>\");if(connected)buttons.push(\"<button type='button' class='secondary' data-inf-disconnect-v825='\"+esc(p.id)+\"'>Disconnect</button>\");\n let form=\"\";if(p.id===\"elevenlabs\"&&!connected)form=\"<div class='orbit-form-grid'><label>ElevenLabs API key<input type='password' data-inf-eleven-key-v825 autocomplete='new-password'></label><label>Locked Maya voice ID<input data-inf-eleven-voice-v825></label></div><button type='button' data-inf-eleven-save-v825>Save & test Maya voice</button>\";\n if(p.id===\"metricool\"&&!connected)form=\"<div class='orbit-form-grid'><label>Metricool API token<input type='password' data-inf-metricool-token-v825 autocomplete='new-password'></label><label>User ID<input data-inf-metricool-user-v825></label><label>Brand/Blog ID (optional)<input data-inf-metricool-blog-v825></label></div><button type='button' data-inf-metricool-save-v825>Save & test Metricool</button>\";\n if([\"market_data\",\"asset_library\"].includes(p.id)&&!connected)form=\"<div class='orbit-form-grid'><label>Account / source label<input data-inf-manual-label-v825='\"+esc(p.id)+\"'></label><label>Reference / account ID<input data-inf-manual-id-v825='\"+esc(p.id)+\"'></label><label>Notes<textarea rows='2' data-inf-manual-notes-v825='\"+esc(p.id)+\"'></textarea></label></div><button type='button' data-inf-manual-save-v825='\"+esc(p.id)+\"'>Save connection</button>\";\n const usage=p.usage?(\"<small>\"+Number(p.usage.characterCount||0).toLocaleString(\"en-GB\")+\" / \"+Number(p.usage.characterLimit||0).toLocaleString(\"en-GB\")+\" characters\"+(p.plan?\" \u00B7 \"+esc(p.plan):\"\")+\"</small>\"):\"\";\n return\"<article class='orbit-panel' data-inf-provider-card-v825='\"+esc(p.id)+\"'><div class='orbit-panel-header'><div><p class='orbit-kicker'>\"+esc(p.label)+\"</p><h3>\"+esc(state)+\"</h3><p>\"+esc(p.purpose||\"\")+\"</p></div><span class='orbit-status-chip \"+infConnClassV825(p)+\"'>\"+esc(state)+\"</span></div>\"+(p.id===\"higgsfield\"?\"<div class='orbit-notice info'><strong>Connected to ChatGPT, not directly to Orbit OS.</strong> PokeMaya generation can be driven through the connected Higgsfield tool while a future direct backend integration remains separate.</div>\":\"\")+(account?\"<p><strong>Account:</strong> \"+esc(account)+(p.voiceId?\" \u00B7 Maya voice \"+esc(p.voiceId):\"\")+\"</p>\":\"\")+usage+(p.lastTest?\"<p><small>Last test: \"+esc(p.lastTest.message||\"\")+\" \u00B7 \"+esc(p.lastTest.at?new Date(p.lastTest.at).toLocaleString(\"en-GB\"):\"\")+\"</small></p>\":\"\")+(p.lastError?\"<div class='orbit-notice error'>\"+esc(p.lastError)+\"</div>\":\"\")+\"<div class='orbit-action-row'>\"+buttons.join(\"\")+infTargetsV825(p)+\"</div>\"+infOauthSetupV825(p)+form+\"</article>\"}\nfunction renderInfluencerConnectionsV825(data){const providers=data.providers||[],root=$2(\"influencerSettingsV824\");if(root)root.innerHTML=\"<div class='orbit-panel'><p class='orbit-kicker'>SECURE CONNECTION CENTRE</p><h2>Connect PokeMaya</h2><p>Link the services Maya actually uses. OAuth/API secrets stay encrypted on the backend; this page receives only safe status and account labels. Connecting a service never enables automatic posting.</p>\"+(!data.encryptionReady?\"<div class='orbit-notice error'><strong>Secret encryption is not configured.</strong> Provider secrets cannot be stored until the backend encryption key is available.</div>\":\"\")+\"</div><div class='orbit-stack'>\"+providers.map(infProviderCardV825).join(\"\")+\"</div>\";\n const pub=$2(\"influencerPublishConnectionsV825\");if(pub){const ids=[\"youtube\",\"meta\",\"tiktok\",\"metricool\"],map=new Map(providers.map(x=>[x.id,x]));pub.innerHTML=\"<div class='orbit-action-row'>\"+ids.map(id=>{const p=map.get(id);return\"<span class='orbit-status-chip \"+(p?.connected?\"ok\":\"warn\")+\"'>\"+esc(p?.label||id)+\": \"+(p?.connected?\"connected\":\"not connected\")+\"</span>\"}).join(\"\")+\"</div><p><small>Approve & Publish remains human-controlled. Direct publishing actions will only be offered for connected targets.</small></p>\"}\n bindInfluencerConnectionsV825()}\nasync function loadInfluencerConnectionsV825(force=!1){const data=await api(\"/api/admin/influencer-engine/connections\",{cacheMs:force?0:5e3,timeoutMs:15e3});renderInfluencerConnectionsV825(data);return data}\nfunction bindInfluencerConnectionsV825(){const root=$2(\"orbitInfluencerEngineV824\");if(!root||root.dataset.boundConnectionsV825)return;root.dataset.boundConnectionsV825=\"1\";root.addEventListener(\"click\",async e=>{const button=e.target.closest(\"[data-inf-connect-v825],[data-inf-test-v825],[data-inf-disconnect-v825],[data-inf-app-save-v825],[data-inf-copy-v825],[data-inf-eleven-save-v825],[data-inf-metricool-save-v825],[data-inf-manual-save-v825],[data-inf-target-save-v825]\");if(!button)return;\n  let provider=button.dataset.infConnectV825||button.dataset.infTestV825||button.dataset.infDisconnectV825||button.dataset.infAppSaveV825||button.dataset.infManualSaveV825||button.dataset.infTargetSaveV825||\"\";if(button.dataset.infElevenSaveV825!==undefined)provider=\"elevenlabs\";if(button.dataset.infMetricoolSaveV825!==undefined)provider=\"metricool\";\n  if(button.dataset.infCopyV825!==undefined){try{await navigator.clipboard.writeText(button.dataset.infCopyV825);setNotice2(\"Callback URL copied.\")}catch(_){setNotice2(\"Could not copy automatically.\",!0)}return}\n  setLoading(button,!0);try{\n   if(button.dataset.infConnectV825){const x=await api(\"/api/admin/influencer-engine/connections/\"+encodeURIComponent(provider)+\"/start\",{method:\"POST\",body:\"{}\",cacheMs:0});const w=window.open(x.url,\"orbitInfluencerOauth\",\"width=720,height=820,resizable=yes,scrollbars=yes\");if(!w)throw Error(\"Popup blocked. Allow popups for Orbit Admin and try Connect again.\");}\n   else if(button.dataset.infTestV825)await api(\"/api/admin/influencer-engine/connections/\"+encodeURIComponent(provider)+\"/test\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:2e4});\n   else if(button.dataset.infDisconnectV825){if(!confirm(\"Disconnect \"+provider+\" from Orbit? Saved OAuth app setup is preserved.\"))return;await api(\"/api/admin/influencer-engine/connections/\"+encodeURIComponent(provider),{method:\"DELETE\",cacheMs:0});}\n   else if(button.dataset.infAppSaveV825){const clientId=root.querySelector(\"[data-inf-app-id-v825='\"+CSS.escape(provider)+\"']\")?.value.trim(),clientSecret=root.querySelector(\"[data-inf-app-secret-v825='\"+CSS.escape(provider)+\"']\")?.value.trim();if(!clientId||!clientSecret)throw Error(\"Enter both the app/client ID and client secret.\");await api(\"/api/admin/influencer-engine/connections/\"+encodeURIComponent(provider)+\"/app-config\",{method:\"POST\",body:JSON.stringify({clientId,clientSecret}),cacheMs:0});}\n   else if(button.dataset.infElevenSaveV825!==undefined){const apiKey=root.querySelector(\"[data-inf-eleven-key-v825]\")?.value.trim(),voiceId=root.querySelector(\"[data-inf-eleven-voice-v825]\")?.value.trim();await api(\"/api/admin/influencer-engine/connections/elevenlabs/configure\",{method:\"POST\",body:JSON.stringify({apiKey,voiceId}),cacheMs:0,timeoutMs:2e4});}\n   else if(button.dataset.infMetricoolSaveV825!==undefined){const token=root.querySelector(\"[data-inf-metricool-token-v825]\")?.value.trim(),userId=root.querySelector(\"[data-inf-metricool-user-v825]\")?.value.trim(),blogId=root.querySelector(\"[data-inf-metricool-blog-v825]\")?.value.trim();await api(\"/api/admin/influencer-engine/connections/metricool/configure\",{method:\"POST\",body:JSON.stringify({token,userId,blogId}),cacheMs:0,timeoutMs:2e4});}\n   else if(button.dataset.infManualSaveV825){const id=provider,accountLabel=root.querySelector(\"[data-inf-manual-label-v825='\"+CSS.escape(id)+\"']\")?.value.trim(),accountId=root.querySelector(\"[data-inf-manual-id-v825='\"+CSS.escape(id)+\"']\")?.value.trim(),notes=root.querySelector(\"[data-inf-manual-notes-v825='\"+CSS.escape(id)+\"']\")?.value.trim();await api(\"/api/admin/influencer-engine/connections/\"+encodeURIComponent(id)+\"/configure\",{method:\"POST\",body:JSON.stringify({accountLabel,accountId,notes}),cacheMs:0});}\n   else if(button.dataset.infTargetSaveV825){const targetId=root.querySelector(\"[data-inf-target-v825='\"+CSS.escape(provider)+\"']\")?.value;await api(\"/api/admin/influencer-engine/connections/\"+encodeURIComponent(provider)+\"/target\",{method:\"POST\",body:JSON.stringify({targetId}),cacheMs:0});}\n   if(!button.dataset.infConnectV825){await loadInfluencerConnectionsV825(!0);setNotice2(\"PokeMaya connection updated.\")}\n  }catch(err){setNotice2(err.message||String(err),!0)}finally{setLoading(button,!1)}});if(!window.orbitInfluencerOauthListenerV825){window.orbitInfluencerOauthListenerV825=!0;window.addEventListener(\"message\",e=>{if(e?.data?.type===\"orbit-influencer-connection\"&&[\"youtube\",\"meta\",\"tiktok\"].includes(String(e.data.provider||\"\"))){loadInfluencerConnectionsV825(!0).then(()=>setNotice2(e.data.ok?\"Social account connected.\":\"Connection was not completed.\")).catch(()=>{})}})}}\n\nfunction costMoneyV824(value,currency=\"USD\"){if(value==null||value===\"\")return\"\u2014\";try{return new Intl.NumberFormat(\"en-GB\",{style:\"currency\",currency:currency||\"USD\"}).format(Number(value||0))}catch{return Number(value||0).toFixed(2)+\" \"+currency}}\nfunction costStatusV824(value){return String(value||\"\").replaceAll(\"_\",\" \")}\nfunction renderOrbitSubscriptionCostsV824(data){const target=$2(\"orbitDevelopmentCostsContentV824\");if(!target)return;const rows=data.services||[],totals=data.monthlyCommitmentsByCurrency||{},ai=data.ai||{},w=ai.windows||{},day=w[24]||{},week=w[168]||{},month=w[720]||{},p24=ai.provider?.hours24||{},workers=data.workers||{},workerRows=workers.workers||[];\n target.innerHTML=\"<div class='orbit-metrics'><article><span>Known monthly USD</span><strong>\"+costMoneyV824(totals.USD||0,\"USD\")+\"</strong><small>Fixed subscriptions only</small></article><article><span>Known monthly GBP</span><strong>\"+costMoneyV824(totals.GBP||0,\"GBP\")+\"</strong><small>Fixed subscriptions only</small></article><article><span>AI/API \u00B7 24h</span><strong>\"+costMoneyV824(day.estimatedEffectiveUsd||0,\"USD\")+\"</strong><small>\"+Number(day.totalTokens||0).toLocaleString(\"en-GB\")+\" tokens</small></article><article><span>AI/API \u00B7 30d</span><strong>\"+costMoneyV824(month.estimatedEffectiveUsd||0,\"USD\")+\"</strong><small>Projection \"+costMoneyV824(day.projected30DayEffectiveUsd||0,\"USD\")+\"</small></article></div>\"+\n \"<div class='orbit-panel'><div class='orbit-panel-header'><div><p class='orbit-kicker'>WORKER COST CONTROL</p><h3>Owner usefulness policy \u00B7 keep 5/10+</h3><p>Workers below 5 are owner-paused. Deployment, release certification and general system-health workers remain enabled. Directory stays Manual Proving even where a deterministic worker scored 5+.</p></div><button type='button' class='secondary' data-worker-policy-apply-v825>Reapply owner policy</button></div><div class='orbit-metrics'><article><span>Policy</span><strong>\"+(workers.active?\"ACTIVE\":\"Checking\")+\"</strong><small>Threshold \"+Number(workers.threshold||5)+\"/10</small></article><article><span>Kept</span><strong>\"+Number(workers.summary?.kept||0)+\"</strong><small>5/10+</small></article><article><span>Below threshold</span><strong>\"+Number(workers.summary?.belowThreshold||0)+\"</strong><small>paused</small></article><article><span>Worker AI \u00B7 30d</span><strong>\"+costMoneyV824(workers.summary?.spend30dUsd||0,\"USD\")+\"</strong><small>estimated</small></article></div><div class='orbit-table-wrap'><table><thead><tr><th>Worker</th><th>Score</th><th>State</th><th>30d AI</th><th>Task</th></tr></thead><tbody>\"+workerRows.sort((a,b)=>b.score-a.score||a.id.localeCompare(b.id)).map(x=>{const state=x.keep?(x.manualProvingMode?\"MANUAL ONLY\":x.automatic?(x.enabled?\"ON\":\"PAUSED\"):\"ON DEMAND\"):\"PAUSED BY OWNER\";return\"<tr><td><strong>\"+esc(x.id)+\"</strong></td><td><strong>\"+Number(x.score)+\"/10</strong></td><td>\"+influencerBadgeV824(state)+\"</td><td>\"+costMoneyV824(x.usage30d?.usd||0,\"USD\")+\"<small>\"+Number(x.usage30d?.calls||0).toLocaleString(\"en-GB\")+\" calls \u00B7 \"+Number(x.usage30d?.tokens||0).toLocaleString(\"en-GB\")+\" tokens</small></td><td>\"+esc(x.task||\"\")+\"</td></tr>\"}).join(\"\")+\"</tbody></table></div></div>\"+\n \"<div class='orbit-panel'><div class='orbit-panel-header'><div><p class='orbit-kicker'>AI & API COSTS</p><h3>Orbit model usage</h3><p>Provider invoice remains authoritative. Orbit tracks model tokens, cache, tools, agents and estimated effective spend.</p></div><button type='button' class='secondary' data-cost-refresh-v824>Refresh provider costs</button></div><div class='orbit-metrics'><article><span>7 days</span><strong>\"+costMoneyV824(week.estimatedEffectiveUsd||0,\"USD\")+\"</strong><small>\"+Number(week.calls||0)+\" calls</small></article><article><span>30 days</span><strong>\"+costMoneyV824(month.estimatedEffectiveUsd||0,\"USD\")+\"</strong><small>\"+Number(month.calls||0)+\" calls</small></article><article><span>Cache rate 24h</span><strong>\"+Math.round(Number(day.cachedInputRate||0)*100)+\"%</strong><small>\"+Number(day.webSearchCalls||0)+\" web searches</small></article><article><span>Provider reconciliation</span><strong>\"+(p24.reconciliationAvailable?costMoneyV824(p24.providerCostUsd||0,\"USD\"):\"Unavailable\")+\"</strong><small>\"+esc(p24.warning||p24.scopeWarning||\"24h provider view\")+\"</small></article></div></div>\"+\n \"<div class='orbit-panel'><div class='orbit-panel-header'><div><p class='orbit-kicker'>ACCOUNTS & SUBSCRIPTIONS</p><h3>Orbit service register</h3><p>Confirmed bills, free accounts, social/provider accounts and items still needing review.</p></div></div><div class='orbit-table-wrap'><table><thead><tr><th>Service</th><th>Purpose / account</th><th>Plan / cost</th><th>Evidence</th></tr></thead><tbody>\"+rows.map(row=>\"<tr><td><strong>\"+esc(row.label)+\"</strong><small>\"+esc(row.category)+\" \u00B7 \"+esc(costStatusV824(row.billingModel))+\"</small></td><td>\"+esc(row.purpose||\"\")+\"<small>\"+esc(row.accountLabel||\"Account not recorded\")+\"</small></td><td>\"+esc(row.plan||\"Plan not confirmed\")+\"<small>\"+(row.amount!=null?costMoneyV824(row.amount,row.currency||\"USD\")+\" \"+esc(row.cadence||\"\"):(row.latestChargeAmount!=null?\"Latest \"+costMoneyV824(row.latestChargeAmount,row.latestChargeCurrency||row.currency||\"USD\"):\"Price needs review\"))+\"</small></td><td>\"+influencerBadgeV824(costStatusV824(row.evidenceStatus))+\"<small>\"+esc(row.evidence||\"\")+\"</small></td></tr>\").join(\"\")+\"</tbody></table></div></div>\"+\n \"<div class='orbit-panel'><h3>Add or correct a service</h3><div class='orbit-form-grid'><label>Service<input id='costServiceLabelV824'></label><label>Account / owner<input id='costServiceAccountV824'></label><label>Monthly/annual amount<input id='costServiceAmountV824' type='number' min='0' step='0.01'></label><label>Currency<select id='costServiceCurrencyV824'><option>USD</option><option>GBP</option><option>EUR</option></select></label><label>Cadence<select id='costServiceCadenceV824'><option value='monthly'>Monthly</option><option value='annual'>Annual</option><option value='usage'>Usage</option><option value='unknown'>Unknown</option></select></label><label>Purpose / notes<textarea id='costServiceNotesV824' rows='3'></textarea></label></div><div class='orbit-action-row'><button type='button' data-cost-add-v824>Save service</button></div></div>\";\n bindOrbitSubscriptionCostsV824()}\nasync function loadOrbitSubscriptionCostsV824(force=!1){const data=await api(\"/api/admin/development/subscriptions-costs\"+(force?\"?refresh=1\":\"\"),{cacheMs:0,timeoutMs:3e4});renderOrbitSubscriptionCostsV824(data);return data}\nfunction bindOrbitSubscriptionCostsV824(){const root=$2(\"orbitDevelopmentCostsPanel\");if(!root||root.dataset.boundV825)return;root.dataset.boundV825=\"1\";root.addEventListener(\"click\",async e=>{const refresh=e.target.closest(\"[data-cost-refresh-v824]\"),add=e.target.closest(\"[data-cost-add-v824]\"),policy=e.target.closest(\"[data-worker-policy-apply-v825]\");if(policy){setLoading(policy,!0);try{await api(\"/api/admin/development/workers/usefulness/apply\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:2e4});await loadOrbitSubscriptionCostsV824(!0);setNotice2(\"Owner worker policy reapplied.\")}finally{setLoading(policy,!1)}return}if(refresh){setLoading(refresh,!0);try{await loadOrbitSubscriptionCostsV824(!0);setNotice2(\"Subscription and provider costs refreshed.\")}finally{setLoading(refresh,!1)}return}if(add){const label=$2(\"costServiceLabelV824\")?.value.trim();if(!label)return setNotice2(\"Add a service name first.\",!0);const payload={label,accountLabel:$2(\"costServiceAccountV824\")?.value.trim(),amount:$2(\"costServiceAmountV824\")?.value,currency:$2(\"costServiceCurrencyV824\")?.value,cadence:$2(\"costServiceCadenceV824\")?.value,purpose:$2(\"costServiceNotesV824\")?.value.trim(),notes:$2(\"costServiceNotesV824\")?.value.trim(),category:\"Manual\",billingModel:\"manual\",evidenceStatus:\"manual\"};setLoading(add,!0);try{await api(\"/api/admin/development/subscriptions-costs\",{method:\"POST\",body:JSON.stringify(payload),cacheMs:0});await loadOrbitSubscriptionCostsV824(!0);setNotice2(\"Service saved to Subscriptions & Costs.\")}finally{setLoading(add,!1)}}})}\nfunction setDevelopmentTab(tab){\n  tab=tab||'home';\n  rememberOrbitSubtab('development',tab);\n  document.querySelectorAll('[data-development-tab]').forEach(x=>x.classList.toggle('active',x.dataset.developmentTab===tab));\n  const home=document.getElementById('orbitDevelopmentHomePanel');\n  if(home)home.hidden=tab!=='home';\n  const notes=document.getElementById('orbitDevelopmentNotesPanel');\n  if(notes)notes.hidden=tab!=='notes';\n  const verification=document.getElementById('orbitVerificationPanel');\n  if(verification)verification.hidden=tab!=='verification';\n  const heldVerification=document.getElementById('orbitHeldVerificationPanel');\n  if(heldVerification)heldVerification.hidden=tab!=='held-verification';\n  const roadmap=document.getElementById('orbitRoadmapPanel');\n  if(roadmap)roadmap.hidden=tab!=='roadmap';\n  const deployPanel=document.getElementById('orbitDeployPanel');\n  if(deployPanel)deployPanel.hidden=tab!=='deploy';\n  const costs=document.getElementById('orbitDevelopmentCostsPanel');\n  if(costs)costs.hidden=tab!=='costs';\n  const review=document.getElementById('orbitReviewSurfacePanel');\n  if(review)review.hidden=tab!=='review';\n  stopDeploymentAutoRefreshV370();\n  if(tab==='deploy'){hydrateDeploymentStateV385();setTimeout(()=>{loadOrbitDeploymentsV343().catch(err=>setNotice2(err.message||err,true));startDeploymentAutoRefreshV370()},20)}\n  if(tab==='review')setTimeout(()=>loadOrbitReviewSurface(false),40);\n  if(tab==='costs')setTimeout(()=>loadOrbitSubscriptionCostsV824(false).catch(err=>setNotice2('Subscriptions & Costs unavailable: '+(err.message||err),true)),20);\n  if(tab==='verification'){renderVerificationQueue();loadOrbitDevelopmentHub({forceFresh:true,background:true}).then(()=>renderVerificationQueue()).catch(err=>setNotice2('Acceptance queue unavailable: '+(err.message||err),true))}\n  if(tab==='held-verification'){renderHeldVerificationQueue();loadOrbitDevelopmentHub({forceFresh:true,background:true}).then(()=>renderHeldVerificationQueue()).catch(err=>setNotice2('Held Acceptance unavailable: '+(err.message||err),true))}\n}document.querySelectorAll(\"[data-development-tab]\").forEach(b=>b.addEventListener(\"click\",function(){setDevelopmentTab(this.dataset.developmentTab)})),window.addEventListener(\"pageshow\",function(){confirmLiveDevelopmentState().catch(function(error){console.warn(\"Development state freshness check failed:\",error)}),resumePendingDeploymentPollV366()},{once:!0}),document.querySelectorAll(\"[data-development-jump]\").forEach(b=>b.addEventListener(\"click\",function(){setDevelopmentTab(this.dataset.developmentJump)})),document.getElementById(\"developmentNoteStatusFilter\")?.addEventListener(\"change\",renderDevelopmentNotes);async function refreshDevelopmentHubFromButton(button2){const original=button2.textContent;button2.disabled=!0,button2.classList.add(\"is-working\"),button2.setAttribute(\"aria-busy\",\"true\"),button2.textContent=\"Refreshing\\u2026\";try{await loadOrbitDevelopmentHub(),button2.textContent=\"Updated\",button2.classList.remove(\"is-working\"),button2.classList.add(\"is-success\"),setTimeout(()=>{button2.classList.remove(\"is-success\"),button2.textContent=original,button2.disabled=!1,button2.removeAttribute(\"aria-busy\")},900)}catch(err){button2.classList.remove(\"is-working\"),button2.textContent=\"Refresh failed\",setNotice2(err.message||err,!0),setTimeout(()=>{button2.textContent=original,button2.disabled=!1,button2.removeAttribute(\"aria-busy\")},1400)}}document.getElementById(\"refreshDevelopmentNotes\")?.addEventListener(\"click\",function(){refreshDevelopmentHubFromButton(this)}),document.getElementById(\"refreshRoadmap\")?.addEventListener(\"click\",function(){refreshDevelopmentHubFromButton(this)}),document.getElementById(\"refreshVerificationQueue\")?.addEventListener(\"click\",function(){refreshDevelopmentHubFromButton(this)}),document.getElementById(\"refreshHeldVerificationQueue\")?.addEventListener(\"click\",function(){refreshDevelopmentHubFromButton(this)}),document.getElementById(\"runDevelopmentPipelineV600\")?.addEventListener(\"click\",function(){runDevelopmentBuilderV600(\"development-agent\",this)}),document.getElementById(\"applyDevelopmentSandboxV600\")?.addEventListener(\"click\",function(){applyDevelopmentSandboxV600(this)}),document.getElementById(\"runRoadmapDeveloperV600\")?.addEventListener(\"click\",function(){runDevelopmentBuilderV600(\"roadmap-developer\",this)}),document.getElementById(\"refreshOrbitDeployments\")?.addEventListener(\"click\",function(){setLoading(this,!0),loadOrbitDeploymentsV343().catch(err=>setNotice2(err.message||err,!0)).finally(()=>setLoading(this,!1))}),document.addEventListener(\"click\",e=>{const b=e.target.closest(\"[data-orbit-render-manual]\");b&&manualRenderDeployV392(b.dataset.orbitRenderManual,b)}),$2(\"refreshResendInboxV529\")?.addEventListener(\"click\",()=>loadResendInboxV529().catch(err=>setNotice2(\"Inbox refresh failed: \"+(err.message||err),!0))),$2(\"exportVendorCustomersV530\")?.addEventListener(\"click\",e=>exportVendorCustomersV530(e.currentTarget).catch(err=>setNotice2(\"Vendor CSV export failed: \"+(err.message||err),!0))),$2(\"reconcileShopifyTicketOrdersV530\")?.addEventListener(\"click\",e=>reconcileShopifyTicketOrdersV530(e.currentTarget).catch(err=>setNotice2(\"Shopify ticket order refresh failed: \"+(err.message||err),!0))),document.getElementById(\"refreshCommunicationsHistory\")?.addEventListener(\"click\",()=>loadCommunicationsHistoryV462(communicationsHistoryPageV462).catch(err=>setNotice2(err.message||err,!0))),document.getElementById(\"communicationsHistorySearch\")?.addEventListener(\"keydown\",e=>{e.key===\"Enter\"&&(e.preventDefault(),loadCommunicationsHistoryV462(1).catch(err=>setNotice2(err.message||err,!0)))}),document.getElementById(\"communicationsHistoryStatus\")?.addEventListener(\"change\",()=>loadCommunicationsHistoryV462(1).catch(err=>setNotice2(err.message||err,!0))),document.getElementById(\"communicationsHistoryPrev\")?.addEventListener(\"click\",()=>loadCommunicationsHistoryV462(Math.max(1,communicationsHistoryPageV462-1)).catch(err=>setNotice2(err.message||err,!0))),document.getElementById(\"communicationsHistoryNext\")?.addEventListener(\"click\",()=>loadCommunicationsHistoryV462(communicationsHistoryPageV462+1).catch(err=>setNotice2(err.message||err,!0))),document.getElementById(\"testOrbitDeploymentConnections\")?.addEventListener(\"click\",async function(){const status=document.getElementById(\"orbitDeployPreflightStatus\");setLoading(this,!0),status&&(status.textContent=\"Testing GitHub, Render mode and Shopify MAIN theme\\u2026\");try{const data=await api(\"/api/admin/deployments/preflight\",{method:\"POST\",body:\"{}\",timeoutMs:6e4,cacheMs:0}),p=data.preflight||{};status&&(status.textContent=p.ok?\"All deployment connections passed \\u2713\":\"Setup still required\",status.classList.toggle(\"error\",!p.ok),status.classList.toggle(\"success\",!!p.ok));const parts=[p.github?.verified?\"GitHub \\u2713\":\"GitHub: \"+(p.github?.error||\"not verified\"),p.render?.verified?\"Render \"+(p.render.mode||\"\")+\" mode configured \\u2713\":\"Render: \"+(p.render?.error||\"not configured\"),p.shopify?.verified?\"Shopify MAIN theme read verified \"+(p.shopify.themeName||\"\")+\" \\u2713\":\"Shopify: \"+(p.shopify?.error||\"not verified\")];setNotice2(parts.join(\" \\xB7 \"),!p.ok),await loadOrbitDeploymentsV343()}catch(err){status&&(status.textContent=\"Connection test failed\"),setNotice2(err.message||err,!0)}finally{setLoading(this,!1)}}),document.getElementById(\"chooseOrbitReleaseZip\")?.addEventListener(\"click\",()=>document.getElementById(\"orbitReleaseZipInput\")?.click()),document.getElementById(\"orbitReleaseZipInput\")?.addEventListener(\"change\",async function(){const file=this.files?.[0];if(file)try{await stageOrbitReleaseV343(file)}catch(err){setNotice2(err.message||err,!0)}finally{this.value=\"\"}}),document.getElementById(\"orbitDeploymentHistory\")?.addEventListener(\"click\",async function(event){const deploy=event.target.closest(\"[data-orbit-deploy]\"),rollback=event.target.closest(\"[data-orbit-rollback]\"),discard=event.target.closest(\"[data-orbit-discard-deploy]\");if(deploy)return deployReleaseV343(deploy.dataset.orbitDeploy,deploy);if(rollback)return rollbackReleaseV343(rollback.dataset.orbitRollback,rollback);if(discard&&confirm(\"Discard this staged release? Production has not been changed.\")){setLoading(discard,!0);try{await api(\"/api/admin/deployments/\"+encodeURIComponent(discard.dataset.orbitDiscardDeploy),{method:\"DELETE\",cacheMs:0}),await loadOrbitDeploymentsV343(),setNotice2(\"Staged release discarded.\")}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(discard,!1)}}});function verificationListByNoteV500(noteId){const selector=\"[data-verification-form='\"+CSS.escape(noteId)+\"']\";return document.getElementById(\"orbitVerificationList\")?.querySelector(selector)||document.getElementById(\"orbitHeldVerificationList\")?.querySelector(selector)||null}function bindVerificationListV500(listId){const list=document.getElementById(listId);list&&(list.addEventListener(\"click\",async e=>{const view=e.target.closest(\"[data-view-note]\"),fixed=e.target.closest(\"[data-verify-fixed]\"),failed=e.target.closest(\"[data-verify-failed]\"),markRead=e.target.closest(\"[data-mark-engineering-read]\"),hold=e.target.closest(\"[data-hold-verification]\"),resume=e.target.closest(\"[data-resume-verification]\"),deleteTest=e.target.closest(\"[data-delete-verification]\"),choose=e.target.closest(\"[data-choose-verification-file]\"),cancel=e.target.closest(\"[data-cancel-verification]\"),submit=e.target.closest(\"[data-submit-inline-verification]\"),remove=e.target.closest(\"[data-remove-verification-image]\");if(view){e.preventDefault(),e.stopPropagation(),view.disabled=!0;try{await openDevelopmentNoteById(view.dataset.viewNote)}finally{view.disabled=!1}return}if(hold){e.preventDefault(),e.stopPropagation(),await setAcceptanceHoldV500(hold.dataset.holdVerification,!0,hold);return}if(resume){e.preventDefault(),e.stopPropagation(),await setAcceptanceHoldV500(resume.dataset.resumeVerification,!1,resume);return}if(fixed){await submitVerification(fixed.dataset.verifyFixed,\"fixed\");return}if(failed){await submitVerification(failed.dataset.verifyFailed,\"not_fixed\");return}if(markRead){await submitVerification(markRead.dataset.markEngineeringRead,\"read\");return}if(deleteTest&&confirm(`Delete this acceptance test and its Development Note permanently?\n\nChoose OK to delete or Cancel to keep it.`)){const noteId=deleteTest.dataset.deleteVerification;await api(\"/api/admin/development-notes/\"+encodeURIComponent(noteId)+\"/delete\",{method:\"POST\",body:\"{}\",cacheMs:0}),markDevelopmentMutationV340(),orbitDevelopmentNotes=orbitDevelopmentNotes.filter(x=>x.id!==noteId),renderVerificationQueue(!0),renderHeldVerificationQueue(!0),renderDevelopmentNotes(),syncDevelopmentCountersFromLocalV339(),setNotice2(\"Acceptance test and Development Note permanently deleted.\"),setDevelopmentTab(listId===\"orbitHeldVerificationList\"?\"held-verification\":\"verification\"),refreshDevelopmentHubDeferredV337(150);return}if(choose){const input=list.querySelector(\"[data-verification-file='\"+CSS.escape(choose.dataset.chooseVerificationFile)+\"']\");if(input)try{typeof input.showPicker==\"function\"?input.showPicker():input.click()}catch{input.click()}return}if(cancel){const noteId=cancel.dataset.cancelVerification,form=verificationListByNoteV500(noteId);form&&(form.hidden=!0),orbitOpenVerificationNoteV149=null,orbitVerificationEvidenceV149.delete(noteId),renderVerificationQueue(!0),renderHeldVerificationQueue(!0);return}if(remove){e.preventDefault(),e.stopPropagation();const noteId=remove.closest(\".orbit-verification-card\")?.dataset.noteId||\"\",index=Number(remove.dataset.removeVerificationImage),evidence=orbitVerificationEvidenceV149.get(noteId)||[];noteId&&Number.isInteger(index)&&index>=0&&index<evidence.length&&(evidence.splice(index,1),orbitVerificationEvidenceV149.set(noteId,evidence),renderVerificationEvidence(noteId),setNotice2(\"Screenshot removed from Not Fixed.\"));return}if(submit){const noteId=submit.dataset.submitInlineVerification,form=verificationListByNoteV500(noteId),feedback=form?.querySelector(\"[data-verification-feedback]\")?.value.trim()||\"\",evidence=orbitVerificationEvidenceV149.get(noteId)||[];if(!feedback&&!evidence.length){setNotice2(\"Explain what is still wrong or attach a screenshot.\",!0);return}submit.disabled=!0,submit.textContent=\"Submitting\\u2026\";const card=e.target.closest(\".orbit-verification-card\");card&&(card.classList.add(\"is-processing\"),card.setAttribute(\"aria-busy\",\"true\"));try{const result=await api(\"/api/admin/development-notes/\"+encodeURIComponent(noteId)+\"/verify\",{method:\"POST\",body:JSON.stringify({outcome:\"not_fixed\",feedback,screenshots:evidence}),timeoutMs:3e4,cacheMs:0});markDevelopmentMutationV340();const reopened=result.note||null;if(!reopened?.id||reopened.id!==noteId||reopened.status!==\"Open\")throw new Error(\"Not Fixed could not be verified against the original Development Note. Your draft has been preserved.\");orbitDevelopmentNotes=orbitDevelopmentNotes.filter(x=>x.id!==noteId),orbitDevelopmentNotes.unshift(reopened),syncDevelopmentCountersFromLocalV339(),orbitVerificationEvidenceV149.delete(noteId),orbitOpenVerificationNoteV149=null,clearVerificationDraftV149(noteId),renderVerificationQueue(!0),renderHeldVerificationQueue(!0),renderDevelopmentNotes(),setNotice2(\"Not Fixed saved. The same original note \"+noteId+\" has returned to Development Notes with your evidence preserved.\"),setDevelopmentTab(\"verification\"),refreshDevelopmentHubDeferredV337(150)}catch(err){setNotice2((err.message||err)+\" Your explanation and screenshots remain here so you can retry safely.\",!0)}finally{card&&(card.classList.remove(\"is-processing\"),card.removeAttribute(\"aria-busy\")),submit.disabled=!1,submit.textContent=\"Submit Not Fixed\"}}}),list.addEventListener(\"input\",e=>{const field=e.target.closest(\"[data-verification-feedback]\");field&&saveVerificationDraftV149(field.dataset.verificationFeedback,field.value)}),list.addEventListener(\"change\",async e=>{const input=e.target.closest(\"[data-verification-file]\");input&&(await addVerificationFiles(input.dataset.verificationFile,input.files),input.value=\"\")}))}bindVerificationListV500(\"orbitVerificationList\"),bindVerificationListV500(\"orbitHeldVerificationList\"),document.addEventListener(\"paste\",async function(e){const quickDialog=document.getElementById(\"orbitReviewNoteDialog\");if(quickDialog&&(quickDialog.open===!0||quickDialog.hasAttribute(\"open\")))return;const activeForm=orbitOpenVerificationNoteV149?verificationListByNoteV500(orbitOpenVerificationNoteV149):e.target?.closest?.(\"[data-verification-form]\");if(!activeForm||activeForm.hidden)return;const card=activeForm.closest(\".orbit-verification-card\"),files=verificationClipboardImages(e.clipboardData);if(!card||!files.length)return;e.preventDefault(),e.stopPropagation(),await addVerificationFiles(card.dataset.noteId,files);const count=(orbitVerificationEvidenceV149.get(card.dataset.noteId)||[]).length;setNotice2(count+\" screenshot\"+(count===1?\"\":\"s\")+\" attached to Not Fixed.\")},!0);function formatAiPackageDurationV219(ms){const n=Number(ms||0);return n?n<1e3?n+\" ms\":(n/1e3).toFixed(1)+\" s\":\"\\u2014\"}function setAiPackageProgressV436(message,{error=!1,success=!1,detail=\"\"}={}){const box=document.getElementById(\"orbitAiPackageProgress\");box&&(box.hidden=!1,box.className=\"orbit-ai-package-progress\"+(error?\" error\":success?\" success\":\"\"),box.innerHTML=\"<strong>\"+esc(message||\"AI Project ZIP\")+\"</strong>\"+(detail?\"<span>\"+esc(detail)+\"</span>\":\"\"))}function renderAiPackageFallbackV219(downloadUrl,job){const box=document.getElementById(\"orbitAiPackageDownloadFallback\");if(!box)return;const timings=job?.timings||{};box.hidden=!1,box.innerHTML=\"<strong>\"+esc(job?.filename||\"AI Project ZIP\")+\" ready</strong><span>Version: \"+esc(job?.version||\"\\u2014\")+\" \\xB7 Size: \"+esc(job?.displayBytes||\"\\u2014\")+\" \\xB7 Source: \"+esc(job?.source||\"verified build\")+\"</span><span>Total: \"+esc(formatAiPackageDurationV219(timings.totalMs))+\" \\xB7 Handover: \"+esc(formatAiPackageDurationV219(timings.handoverMs))+\" \\xB7 Theme: \"+esc(formatAiPackageDurationV219(timings.themeExportMs))+\" \\xB7 Archive: \"+esc(formatAiPackageDurationV219(timings.archiveMs))+\" \\xB7 Verify: \"+esc(formatAiPackageDurationV219(timings.verifyMs))+\"</span><span>Handover detail: Live DB \"+esc(formatAiPackageDurationV219(timings.handoverLiveStateMs))+\" \\xB7 Knowledge \"+esc(formatAiPackageDurationV219(timings.handoverIntelligenceMs))+\" \\xB7 Evidence \"+esc(formatAiPackageDurationV219(timings.handoverEvidenceMs))+\"</span>\"+(job?.sha256?\"<span>SHA-256: <code>\"+esc(job.sha256)+\"</code></span>\":\"\")+\"<a class='secondary' href='\"+esc(downloadUrl)+\"' download='\"+esc(job?.filename||\"\")+\"'>Download the verified AI Project ZIP again</a>\"}function setAiPackageButtonStateV701(button2,label){button2&&(button2.innerHTML=`<span class=\"orbit-mini-spinner\" aria-hidden=\"true\"></span><span>${esc(label)}</span>`)}function aiPackageNeedsRefreshV701(){return!0}async function waitForHandoverUnlockV702(timeoutMs=12e4){const started=Date.now();for(;Date.now()-started<timeoutMs;){await new Promise(resolve=>setTimeout(resolve,700));try{const data=await api(\"/api/admin/orbit-bootstrap/status\",{timeoutMs:1e4,cacheMs:0}),traffic=data.handoverTraffic||{};if(orbitAiArtifactStateV701=data.artifact||orbitAiArtifactStateV701,setHandoverTrafficV702(traffic),traffic.state!==\"amber\")return traffic}catch{}}return orbitHandoverTrafficV702}function validAiProjectJobIdV70201(value){return/^[a-f0-9]{24}$/.test(String(value||\"\"))}async function recoverPreparedAiProjectJobV70201(prepared,timeoutMs=12e4){let job=prepared?.job&&typeof prepared.job==\"object\"?prepared.job:null,jobId=prepared?.jobId||job?.id||null;if(validAiProjectJobIdV70201(jobId))return{jobId:String(jobId),job:job?.id===jobId?job:null,recovered:!1};const started=Date.now();let last=null;for(;Date.now()-started<timeoutMs;){await new Promise(resolve=>setTimeout(resolve,500)),last=await api(\"/api/admin/orbit-bootstrap/status\",{timeoutMs:1e4,cacheMs:0});const traffic=last?.handoverTraffic||{},artifact=last?.artifact||{};orbitAiArtifactStateV701=artifact||orbitAiArtifactStateV701,setHandoverTrafficV702(traffic);const artifactJob=artifact?.job&&typeof artifact.job==\"object\"?artifact.job:null,candidates=[traffic?.lock?.jobId,artifactJob?.id].filter(validAiProjectJobIdV70201);if(candidates.length)return jobId=String(candidates[0]),{jobId,job:artifactJob?.id===jobId?artifactJob:null,recovered:!0};if(traffic.state!==\"amber\"&&artifact.state!==\"preparing\")break}const state2=last?.handoverTraffic?.state||\"unknown\",stage=last?.handoverTraffic?.lock?.stage||last?.artifact?.job?.stage||\"unknown\";throw new Error(\"Orbit started Handover but the exact protected ZIP job ID could not be recovered (state \"+state2+\", stage \"+stage+\"). No unverified ZIP will be downloaded.\")}document.getElementById(\"downloadOrbitBackendSourceButton\")?.addEventListener(\"click\",async function(){const button2=this,fallback=document.getElementById(\"orbitAiPackageDownloadFallback\");if(orbitHandoverTrafficV702?.state===\"amber\"){setNotice2(\"An existing ZIP download is still being protected. Please finish that operation first.\",!0);return}fallback&&(fallback.hidden=!0,fallback.innerHTML=\"\"),button2.dataset.handoverBusy=\"1\",setLoading(button2,!0),setAiPackageButtonStateV701(button2,\"Preparing\\u2026\"),setHandoverTrafficV702({state:\"amber\",safeToStartHandover:!1,workersPaused:!0,lock:{stage:\"preparing\"},message:\"Stopping Development workers on operator priority and freezing the snapshot.\"}),setAiPackageProgressV436(\"Preparing the complete AI Project ZIP\\u2026\",{detail:\"Stopping Development workers, retaining partial evidence, then freezing and verifying the ZIP. Other live business systems are unaffected.\"});try{const prepared=await api(\"/api/admin/orbit-bootstrap/backend-source/prepare\",{method:\"POST\",body:JSON.stringify({forceRefresh:!0}),timeoutMs:12e4,cacheMs:0}),recovered=await recoverPreparedAiProjectJobV70201(prepared),jobId=recovered.jobId;let job=recovered.job;recovered.recovered&&setAiPackageProgressV436(\"Protected ZIP job recovered.\",{detail:\"Orbit recovered the exact persisted Handover job after the prepare response omitted its job ID. Verification is continuing safely.\"}),job||(job=(await pollOrbitProjectJobV597(jobId)).job);const started=Date.now();for(;Date.now()-started<1200*1e3;){if(job?.status===\"failed\")throw new Error(job.error||job.message||\"AI Project ZIP preparation failed.\");if(job?.status===\"ready\")break;const verifying=job?.stage===\"verify\",packaging=[\"archive\",\"package\"].includes(job?.stage),progress=Number(job?.progress||0);setAiPackageButtonStateV701(button2,verifying?\"Verifying\\u2026\":packaging?\"Packaging\\u2026\":\"Preparing\\u2026\");const stage=verifying?\"verify\":packaging?\"package\":\"preparing\",stageElapsed=Math.max(0,Math.round((Date.now()-new Date(job?.stageStartedAt||job?.updatedAt||Date.now()).getTime())/1e3));setHandoverTrafficV702({state:\"amber\",safeToStartHandover:!1,workersPaused:!0,lock:{stage,jobId},message:job?.message||\"Protected handover is in progress.\"}),setAiPackageProgressV436(job?.message||job?.stage||\"Preparing AI Project ZIP\\u2026\",{detail:(progress?progress+\"% \\xB7 \":\"\")+(stageElapsed?stageElapsed+\"s in this stage\":\"Working\\u2026\")}),await new Promise(resolve=>setTimeout(resolve,1e3)),job=(await pollOrbitProjectJobV597(jobId)).job}if(job?.status!==\"ready\")throw new Error(\"The AI Project ZIP did not become ready within twenty minutes. Its last status has been retained; do not start repeated builds.\");if(!/^Orbit_OS_V\\d+\\.\\d+\\.\\d+_AI_PROJECT_PACKAGE\\.zip$/.test(String(job.filename||\"\")))throw new Error(\"The completed package filename failed the Orbit release identity check: \"+String(job.filename||\"missing filename\"));if(!/^[a-f0-9]{64}$/.test(String(job.sha256||\"\")))throw new Error(\"The completed package is missing its verified SHA-256. No download was started.\");if(!(Number(job.bytes)>0))throw new Error(\"The completed package is missing its verified byte count. No download was started.\");setAiPackageButtonStateV701(button2,\"Downloading\\u2026\"),orbitAiArtifactStateV701={state:\"verified\",safeToDownload:!0,preparing:!1,workspaceCurrent:!0,workspaceHasNewerWork:!1,filename:job.filename,displayBytes:job.displayBytes||\"\",generatedAt:job.readyAt||job.updatedAt||new Date().toISOString()},setHandoverTrafficV702({state:\"amber\",safeToStartHandover:!1,workersPaused:!0,lock:{stage:\"downloading\",jobId},message:\"The verified ZIP is downloading. Workers remain paused until the transfer finishes.\"});const downloadUrl=API_BASE+\"/api/admin/orbit-bootstrap/backend-source/jobs/\"+encodeURIComponent(jobId)+\"/download?secret=\"+encodeURIComponent(secret)+adminSessionQueryV329()+\"&sha256=\"+encodeURIComponent(job.sha256)+\"&_=\"+Date.now();renderAiPackageFallbackV219(downloadUrl,job),setAiPackageProgressV436(job.filename+\" is verified.\",{success:!0,detail:\"Downloading now. Workers stay paused until the protected transfer releases the handover lock.\"}),orbitLaunchZipDownloadV71615(downloadUrl);const after=await waitForHandoverUnlockV702();after?.state===\"green\"?setAiPackageProgressV436(job.filename+\" downloaded.\",{success:!0,detail:\"Handover complete. Development workers remain paused until you explicitly resume them.\"}):after?.state===\"red\"&&setAiPackageProgressV436(job.filename+\" downloaded.\",{success:!0,detail:\"Verified ZIP downloaded. Check worker state before resuming Development.\"})}catch(err){setAiPackageProgressV436(\"AI Project ZIP failed\",{error:!0,detail:err.message||String(err)});try{await loadOrbitBootstrapStatus()}catch{setHandoverTrafficV702({state:\"red\",safeToStartHandover:!1,message:\"Handover state could not be re-read after the failure. Refresh before retrying.\"})}}finally{delete button2.dataset.handoverBusy,setLoading(button2,!1),loadOrbitBootstrapStatus().catch(()=>{})}});function orbitLaunchZipDownloadV71615(url){const frame=document.createElement(\"iframe\");return frame.title=\"Orbit verified ZIP download\",frame.setAttribute(\"aria-hidden\",\"true\"),frame.tabIndex=-1,frame.style.cssText=\"position:absolute;width:0;height:0;border:0;visibility:hidden\",frame.referrerPolicy=\"no-referrer\",document.body.appendChild(frame),frame.src=url,frame}const fastZipHostV71610=document.getElementById(\"downloadOrbitBackendSourceButton\");if(fastZipHostV71610){const fast=document.createElement(\"button\");fast.type=\"button\",fast.id=\"downloadOrbitFastDevelopmentV71610\",fast.className=\"secondary\",fast.textContent=\"Fast development ZIP\",fast.title=\"Backend source and current Development Notes only. No live Shopify theme, screenshots or rollback data. Use Complete ZIP for theme edits and recovery.\",fastZipHostV71610.after(fast);const fastStatus=document.createElement(\"span\");fastStatus.id=\"orbitFastZipStatusV71610\",fastStatus.setAttribute(\"role\",\"status\"),fastStatus.setAttribute(\"aria-live\",\"polite\"),fastStatus.style.cssText=\"flex:1 1 100%;font-size:12px;color:#37566d\",fastStatus.textContent=\"Fast mode: backend code + note index only (no Shopify theme fetch).\",fast.after(fastStatus),fast.addEventListener(\"click\",async()=>{if(fast.dataset.busy)return;fast.dataset.busy=\"1\",fast.disabled=!0;const base=\"/api/admin/orbit-bootstrap/fast-development\";try{fast.textContent=\"Pausing workers\\u2026\",fastStatus.textContent=\"Requesting a bounded backend-only code snapshot\\u2026\";const response=await api(base+\"/prepare\",{method:\"POST\",body:\"{}\",timeoutMs:9e4,cacheMs:0}),id=response?.job?.id;if(!/^[a-f0-9]{24}$/.test(String(id||\"\")))throw Error(\"Fast ZIP job ID missing.\");let job=response.job;const deadline=Date.now()+360*1e3;for(;job?.status===\"working\"&&Date.now()<deadline;)fast.textContent=job.stage===\"archiving\"?\"Compressing\\u2026\":job.stage===\"verifying\"?\"Verifying\\u2026\":\"Preparing\\u2026\",fastStatus.textContent=\"Stage: \"+String(job.stage||\"queued\")+\" \\xB7 \"+Math.round((Date.now()-(deadline-360*1e3))/1e3)+\" seconds elapsed\",await new Promise(resolve=>setTimeout(resolve,1e3)),job=(await api(base+\"/jobs/\"+encodeURIComponent(id),{timeoutMs:15e3,cacheMs:0})).job;if(job?.status!==\"ready\"||!job.sha256)throw Error(job?.error||\"The fast ZIP did not complete.\");fast.textContent=\"Downloading\\u2026\";const url=API_BASE+base+\"/jobs/\"+encodeURIComponent(id)+\"/download?secret=\"+encodeURIComponent(secret)+adminSessionQueryV329()+\"&sha256=\"+encodeURIComponent(job.sha256);fastStatus.textContent=\"Verified \"+(Number(job.bytes||0)/1048576).toFixed(1)+\" MB source ZIP. Browser download starting. Workers restored.\",setAiPackageProgressV436(\"Fast development ZIP ready (\"+(Number(job.bytes||0)/1048576).toFixed(1)+\" MB).\",{success:!0,detail:\"Backend code + current notes only. Shopify live theme requires full recovery ZIP.\"}),orbitLaunchZipDownloadV71615(url)}catch(e){fastStatus.textContent=\"Failed: \"+String(e.message||e),setAiPackageProgressV436(\"Fast development ZIP failed\",{error:!0,detail:e.message||String(e)})}finally{fast.disabled=!1,delete fast.dataset.busy,fast.textContent=\"Fast development ZIP\"}})}const orbitReviewSurfaces={public:{key:\"public\",name:\"Collectors Club website\",url:\"https://orbitcollectorsclub.com\",mode:\"embedded\"},\"members-pending\":{key:\"members-pending\",name:\"Members Area \\xB7 Pending\",persona:\"pending\",url:\"https://orbitcollectorsclub.com/pages/members-area\",mode:\"embedded\"},\"members-active\":{key:\"members-active\",name:\"Members Area \\xB7 Active\",persona:\"active\",url:\"https://orbitcollectorsclub.com/pages/members-area\",mode:\"embedded\"},tickets:{key:\"tickets\",name:\"Ticket website\",url:\"https://orbitcollectorsclub.com/pages/events\",mode:\"embedded\"},scanner:{key:\"scanner\",name:\"Scanner\",url:API_BASE+\"/scanner?secret=\"+encodeURIComponent(secret),mode:\"embedded\"}};let orbitReviewLastLoaded=\"\",orbitReviewPopup=null;function orbitEmbeddedReviewUrlV149(url,surface){if(!url)return\"\";const key=surface?.key||document.querySelector(\"[data-review-surface].active\")?.dataset.reviewSurface||\"\";if([\"public\",\"members-pending\",\"members-active\",\"tickets\"].includes(key))try{const target=new URL(url,location.href),proxy=new URL(API_BASE+\"/api/admin/orbit-studio/review-proxy\");return proxy.searchParams.set(\"secret\",secret),adminSessionTokenV329&&proxy.searchParams.set(\"admin_session\",adminSessionTokenV329),proxy.searchParams.set(\"target\",target.toString()),target.searchParams.forEach((value,name)=>proxy.searchParams.set(name,value)),proxy.toString()}catch{return url}return url}function updateOrbitReviewContext(name,url){const title=document.getElementById(\"orbitReviewSurfaceName\"),drawer=document.getElementById(\"orbitReviewDrawerSurface\"),drawerUrl=document.getElementById(\"orbitReviewDrawerUrl\");title&&(title.textContent=name||\"Custom surface\"),drawer&&(drawer.textContent=name||\"Custom surface\"),drawerUrl&&(drawerUrl.textContent=url||\"\")}function showOrbitReviewExternalState(name,url){const frame=document.getElementById(\"orbitReviewSurfaceFrame\"),status=document.getElementById(\"orbitReviewSurfaceStatus\"),placeholder=document.getElementById(\"orbitReviewExternalPlaceholder\");frame&&(frame.hidden=!0,frame.removeAttribute(\"src\"),orbitReviewLastLoaded=\"\"),placeholder&&(placeholder.hidden=!1,placeholder.querySelector(\"[data-review-external-name]\").textContent=name||\"Review surface\",placeholder.querySelector(\"[data-review-external-url]\").textContent=url||\"\",placeholder.querySelector(\"[data-review-external-open]\").dataset.url=url||\"\"),status&&(status.textContent=\"Opened in review tab\")}function showOrbitReviewEmbeddedState(){const frame=document.getElementById(\"orbitReviewSurfaceFrame\"),placeholder=document.getElementById(\"orbitReviewExternalPlaceholder\");placeholder&&(placeholder.hidden=!0),frame&&(frame.hidden=!1)}function openOrbitReviewTab(url,name){if(url)try{if(!orbitReviewPopup||orbitReviewPopup.closed?orbitReviewPopup=window.open(url,\"orbit-live-review\"):(orbitReviewPopup.location.href=url,orbitReviewPopup.focus()),!orbitReviewPopup)throw new Error(\"Popup blocked\");setNotice2((name||\"Review surface\")+\" opened in the Orbit review tab. Keep Orbit Studio open to record Quick Notes.\")}catch{window.open(url,\"_blank\",\"noopener\")}}function loadOrbitReviewSurface(notify=!0){const input=document.getElementById(\"orbitReviewSurfaceUrl\"),frame=document.getElementById(\"orbitReviewSurfaceFrame\"),status=document.getElementById(\"orbitReviewSurfaceStatus\");let url=String(input?.value||\"\").trim();if(!url)return notify&&setNotice2(\"Enter a surface URL first.\",!0);/^https?:\\/\\//i.test(url)||(url=\"https://\"+url),input&&(input.value=url);const active=document.querySelector(\"[data-review-surface].active\"),surface=active?orbitReviewSurfaces[active.dataset.reviewSurface]:null,name=surface?.name||active?.textContent?.trim()||\"Custom surface\";if(updateOrbitReviewContext(name,url),localStorage.setItem(\"orbitReviewSurfaceUrl\",url),!((()=>{try{return new URL(url,location.href).origin===location.origin}catch{return!1}})()||surface?.key===\"scanner\")){showOrbitReviewExternalState(name,url),notify&&(openOrbitReviewTab(url,name),setNotice2(name+\" opened in the dedicated review tab. Orbit Studio remains open for Quick Notes.\"));return}const frameUrl=orbitEmbeddedReviewUrlV149(url,surface);showOrbitReviewEmbeddedState(),status&&(status.textContent=\"Loading \"+name+\"\\u2026\"),frame&&orbitReviewLastLoaded!==frameUrl&&(frame.src=\"about:blank\",window.setTimeout(()=>{frame.src=frameUrl},20),orbitReviewLastLoaded=frameUrl),notify&&setNotice2(name+\" is loading inside Orbit Studio.\")}async function activateOrbitReviewSurface(button2){if(!button2||button2.disabled)return;const surface=orbitReviewSurfaces[button2.dataset.reviewSurface],input=document.getElementById(\"orbitReviewSurfaceUrl\"),status=document.getElementById(\"orbitReviewSurfaceStatus\");if(!(!surface||!input)){document.querySelectorAll(\"[data-review-surface]\").forEach(x=>{x.classList.toggle(\"active\",x===button2),x.disabled=!0,x.setAttribute(\"aria-busy\",x===button2?\"true\":\"false\")});try{let url=surface.url;if(status&&(status.textContent=\"Preparing \"+surface.name+\"\\u2026\"),surface.persona){const data=await api(\"/api/admin/orbit-studio/review-personas/\"+encodeURIComponent(surface.persona)+\"/launch\",{method:\"POST\",body:JSON.stringify({returnUrl:surface.url}),timeoutMs:25e3});if(!data?.reviewUrl)throw new Error(\"Orbit did not return a protected review URL.\");url=data.reviewUrl}input.value=url,updateOrbitReviewContext(surface.name,url),showOrbitReviewEmbeddedState(),loadOrbitReviewSurface(!1),setNotice2(surface.name+\" is loading inside Orbit Studio.\")}catch(err){status&&(status.textContent=\"Could not load \"+surface.name),setNotice2(\"Could not launch review surface: \"+(err.message||err),!0)}finally{document.querySelectorAll(\"[data-review-surface]\").forEach(x=>{x.disabled=!1,x.removeAttribute(\"aria-busy\")})}}}document.getElementById(\"orbitReviewSurfacePanel\")?.addEventListener(\"click\",e=>{const button2=e.target.closest(\"[data-review-surface]\");button2&&activateOrbitReviewSurface(button2)});const reviewFrame=document.getElementById(\"orbitReviewSurfaceFrame\");reviewFrame?.addEventListener(\"load\",()=>{const status=document.getElementById(\"orbitReviewSurfaceStatus\");status&&(status.textContent=\"Loaded inside Orbit Studio\")}),reviewFrame?.addEventListener(\"error\",()=>{const status=document.getElementById(\"orbitReviewSurfaceStatus\");status&&(status.textContent=\"Could not load this surface\"),setNotice2(\"The selected review surface could not load.\",!0)}),document.getElementById(\"loadOrbitReviewSurfaceButton\")?.addEventListener(\"click\",()=>loadOrbitReviewSurface()),document.getElementById(\"orbitReviewSurfaceUrl\")?.addEventListener(\"input\",function(){document.querySelectorAll(\"[data-review-surface]\").forEach(x=>x.classList.remove(\"active\")),updateOrbitReviewContext(\"Custom surface\",this.value)}),document.getElementById(\"orbitReviewSurfaceUrl\")?.addEventListener(\"keydown\",e=>{e.key===\"Enter\"&&(e.preventDefault(),loadOrbitReviewSurface())}),document.getElementById(\"openOrbitReviewSurfaceNewTab\")?.addEventListener(\"click\",()=>{let url=String(document.getElementById(\"orbitReviewSurfaceUrl\")?.value||\"\").trim();url&&openOrbitReviewTab(url,document.getElementById(\"orbitReviewSurfaceName\")?.textContent||\"Review surface\")}),document.getElementById(\"orbitReviewExternalPlaceholder\")?.addEventListener(\"click\",e=>{const button2=e.target.closest(\"[data-review-external-open]\");button2?.dataset.url&&openOrbitReviewTab(button2.dataset.url,document.querySelector(\"[data-review-external-name]\")?.textContent||\"Review surface\")});const savedReviewUrl=localStorage.getItem(\"orbitReviewSurfaceUrl\"),reviewInput=document.getElementById(\"orbitReviewSurfaceUrl\");reviewInput&&(reviewInput.value=savedReviewUrl||orbitReviewSurfaces.public.url),updateOrbitReviewContext(\"Collectors Club website\",reviewInput?.value||orbitReviewSurfaces.public.url),showOrbitReviewEmbeddedState(),document.getElementById(\"openOrbitStudioTopButton\")?.addEventListener(\"click\",()=>{setDevelopmentTab(\"review\"),setTimeout(()=>document.getElementById(\"orbitReviewSurfacePanel\")?.scrollIntoView({behavior:\"smooth\",block:\"start\"}),50)}),document.getElementById(\"orbitDevelopmentNotesList\")?.addEventListener(\"change\",async e=>{const s=e.target.closest(\"[data-note-status]\");if(!s)return;const previous=orbitDevelopmentNotes.find(x=>x.id===s.dataset.noteStatus)?.status||\"Open\";if([\"Complete\",\"Archived\"].includes(s.value)&&!confirm(s.value===\"Complete\"?\"Confirm this issue has been tested and verified complete?\":\"Archive this completed historical note?\")){s.value=previous;return}await api(\"/api/admin/development-notes/\"+encodeURIComponent(s.dataset.noteStatus),{method:\"PATCH\",body:JSON.stringify({status:s.value})}),await loadOrbitDevelopmentHub()}),document.getElementById(\"orbitDevelopmentNotesList\")?.addEventListener(\"click\",async e=>{const view=e.target.closest(\"[data-view-note]\"),edit=e.target.closest(\"[data-edit-note]\"),del=e.target.closest(\"[data-delete-note]\"),promote=e.target.closest(\"[data-promote-note]\");if(view&&await openDevelopmentNoteById(view.dataset.viewNote),edit){const note=orbitDevelopmentNotes.find(x=>x.id===edit.dataset.editNote);await editDevelopmentNote(note)}if(del){const note=orbitDevelopmentNotes.find(x=>x.id===del.dataset.deleteNote);await deleteDevelopmentNote(note)}promote&&(await api(\"/api/admin/development-notes/\"+encodeURIComponent(promote.dataset.promoteNote)+\"/promote\",{method:\"POST\",body:\"{}\"}),setNotice2(\"Note promoted to the Product Roadmap with its screenshots and context.\"),await loadOrbitDevelopmentHub())}),document.getElementById(\"orbitRoadmapList\")?.addEventListener(\"change\",async e=>{const s=e.target.closest(\"[data-roadmap-status]\");s&&(await api(\"/api/admin/product-roadmap/\"+encodeURIComponent(s.dataset.roadmapStatus),{method:\"PATCH\",body:JSON.stringify({status:s.value})}),await loadOrbitDevelopmentHub())}),document.getElementById(\"orbitDevelopmentDetailDialog\")?.addEventListener(\"click\",async e=>{e.target.closest(\"[data-close-development-detail]\")&&document.getElementById(\"orbitDevelopmentDetailDialog\").close(),e.target.closest(\"[data-choose-comment-screenshots]\")&&document.getElementById(\"developmentCommentScreenshotInput\")?.click();const dossier=e.target.closest(\"[data-ai-dossier-refresh-v548]\");if(dossier){const id=dossier.dataset.aiDossierIdV548,type=dossier.dataset.aiDossierRefreshV548||\"note\";setLoading(dossier,!0);try{const data=await api((type===\"roadmap\"?\"/api/admin/product-roadmap/\":\"/api/admin/development-notes/\")+encodeURIComponent(id)+\"/ai-dossier/refresh\",{method:\"POST\",body:\"{}\",timeoutMs:9e4,cacheMs:0});if(setNotice2(\"AI research refreshed. No code or production changes were performed.\"),type===\"note\"){const detail=await api(\"/api/admin/development-notes/\"+encodeURIComponent(id),{timeoutMs:3e4,cacheMs:0}),note=detail.note;if(note){const dialog=document.getElementById(\"orbitDevelopmentDetailDialog\");dialog?.open&&closeOrbitDialog(dialog),await openDevelopmentNoteDetail(note,detail)}}}catch(err){setNotice2(\"AI research failed: \"+(err.message||err),!0)}finally{setLoading(dossier,!1)}return}const failed=e.target.closest(\"[data-submit-failed-verification]\");if(failed){const feedback=document.getElementById(\"developmentNoteComment\")?.value.trim()||\"\";if(!feedback&&!orbitDevelopmentCommentScreenshots.length){setNotice2(\"Explain what is still wrong or attach a screenshot.\",!0);return}await api(\"/api/admin/development-notes/\"+encodeURIComponent(failed.dataset.submitFailedVerification)+\"/verify\",{method:\"POST\",body:JSON.stringify({outcome:\"not_fixed\",feedback,screenshots:orbitDevelopmentCommentScreenshots})}),document.getElementById(\"orbitDevelopmentDetailDialog\").close(),setNotice2(\"Test failed. The original note has been reopened with your evidence attached.\"),await loadOrbitDevelopmentHub(),setDevelopmentTab(\"verification\");return}const b=e.target.closest(\"[data-add-note-comment]\");if(b){const body=document.getElementById(\"developmentNoteComment\").value.trim();if(!body)return;await api(\"/api/admin/development-notes/\"+encodeURIComponent(b.dataset.addNoteComment)+\"/comments\",{method:\"POST\",body:JSON.stringify({body,screenshots:orbitDevelopmentCommentScreenshots})}),await loadOrbitDevelopmentHub();const note=orbitDevelopmentNotes.find(x=>x.id===b.dataset.addNoteComment);note&&await openDevelopmentNoteDetail(note)}}),document.getElementById(\"developmentCommentScreenshotInput\")?.addEventListener(\"change\",async function(){orbitDevelopmentCommentScreenshots=[];for(const file of[...this.files].slice(0,6))try{await new Promise((resolve,reject)=>{if(!/^image\\/(png|jpeg|webp)$/i.test(file.type))return reject(new Error(\"Only PNG, JPG and WebP screenshots are supported.\"));if(file.size>22e5)return reject(new Error(file.name+\" is larger than 2.2 MB.\"));const reader=new FileReader;reader.onload=()=>{orbitDevelopmentCommentScreenshots.push({id:\"IMG-\"+Date.now()+\"-\"+Math.random().toString(16).slice(2),name:file.name,mimeType:file.type,dataUrl:reader.result}),resolve()},reader.onerror=reject,reader.readAsDataURL(file)})}catch(err){setNotice2(err.message,!0)}const count=document.getElementById(\"developmentCommentScreenshotCount\"),preview=document.getElementById(\"developmentCommentScreenshotPreview\");count&&(count.textContent=orbitDevelopmentCommentScreenshots.length+\" screenshot\"+(orbitDevelopmentCommentScreenshots.length===1?\"\":\"s\")+\" attached\"),preview&&(preview.innerHTML=orbitDevelopmentCommentScreenshots.map(x=>\"<figure><img src='\"+x.dataUrl+\"' alt='Comment screenshot'><figcaption><span>\"+esc(x.name)+\"</span></figcaption></figure>\").join(\"\")),this.value=\"\"});function openRoadmapItemDialog(item){const dialog=document.getElementById(\"orbitRoadmapItemDialog\");document.getElementById(\"orbitRoadmapItemForm\")?.reset(),document.getElementById(\"roadmapItemEditingId\").value=item?.id||\"\",document.getElementById(\"roadmapItemDialogTitle\").textContent=item?\"Edit roadmap item\":\"Add roadmap item\",document.getElementById(\"roadmapItemDialogDescription\").textContent=item?\"Update this permanent roadmap record.\":\"Create a permanent roadmap record with a clear title and description.\",document.getElementById(\"roadmapItemTitle\").value=item?.title||\"\",document.getElementById(\"roadmapItemDescription\").value=item?.description||\"\",document.getElementById(\"roadmapItemPriority\").value=item?.priority||\"Normal\",document.getElementById(\"roadmapItemStatus\").value=item?.status||\"Idea\";const result=document.getElementById(\"roadmapItemResult\");result&&(result.hidden=!0,result.textContent=\"\",result.classList.remove(\"error\")),openOrbitDialog(dialog),setTimeout(()=>document.getElementById(\"roadmapItemTitle\")?.focus(),60)}async function saveRoadmapItem(){const button2=document.getElementById(\"saveRoadmapItemButton\"),result=document.getElementById(\"roadmapItemResult\"),editingId=document.getElementById(\"roadmapItemEditingId\")?.value||\"\",title=String(document.getElementById(\"roadmapItemTitle\")?.value||\"\").trim(),description=String(document.getElementById(\"roadmapItemDescription\")?.value||\"\").trim(),priority=String(document.getElementById(\"roadmapItemPriority\")?.value||\"Normal\"),status=String(document.getElementById(\"roadmapItemStatus\")?.value||\"Idea\");if(!title){result&&(result.hidden=!1,result.classList.add(\"error\"),result.textContent=\"Add a roadmap title before saving.\");return}const original=button2?.textContent||\"Save roadmap item\";button2&&(button2.disabled=!0,button2.textContent=\"Saving\\u2026\");try{const path=editingId?\"/api/admin/product-roadmap/\"+encodeURIComponent(editingId):\"/api/admin/product-roadmap\",savedId=(await api(path,{method:editingId?\"PATCH\":\"POST\",body:JSON.stringify({title,description,priority,status,context:captureOrbitReviewContext()})})).item?.id;if(!savedId)throw new Error(\"Orbit OS did not return a saved roadmap record.\");const verification=await api(\"/api/admin/product-roadmap\"),saved=(verification.items||[]).find(item=>item.id===savedId);if(!saved)throw new Error(\"The roadmap item was not found after saving.\");orbitRoadmapItems=verification.items||[],renderRoadmap(),result&&(result.hidden=!1,result.classList.remove(\"error\"),result.textContent=(editingId?\"Updated and verified \":\"Saved permanently as \")+saved.id+\".\"),setNotice2((editingId?\"Roadmap item updated: \":\"Roadmap item saved: \")+saved.title),setTimeout(()=>closeOrbitDialog(document.getElementById(\"orbitRoadmapItemDialog\")),650)}catch(err){result&&(result.hidden=!1,result.classList.add(\"error\"),result.textContent=err.message||String(err)),setNotice2(\"Roadmap save failed: \"+(err.message||err),!0)}finally{button2&&(button2.disabled=!1,button2.textContent=original)}}async function deleteRoadmapItem(item){if(!item||!confirm(`Delete this Roadmap Item permanently?\n\n`+item.title+`\n\nChoose OK to delete or Cancel to keep it.`))return;await api(\"/api/admin/product-roadmap/\"+encodeURIComponent(item.id)+\"/delete?fresh=\"+Date.now(),{method:\"POST\",body:\"{}\",cacheMs:0}),orbitRoadmapItems=orbitRoadmapItems.filter(x=>x.id!==item.id),renderRoadmap();const verification=await api(\"/api/admin/product-roadmap?fresh=\"+Date.now(),{timeoutMs:15e3,cacheMs:0});if((verification.items||[]).some(x=>x.id===item.id))throw new Error(\"Deletion could not be verified.\");orbitRoadmapItems=verification.items||[],renderRoadmap(),setNotice2(\"Roadmap item permanently deleted: \"+item.title)}async function editDevelopmentNote(note){if(!note)return;let dialog=document.getElementById(\"orbitDevelopmentEditDialog\");dialog||(dialog=document.createElement(\"dialog\"),dialog.id=\"orbitDevelopmentEditDialog\",dialog.className=\"orbit-dialog orbit-development-edit-dialog\",dialog.innerHTML=\"<form method='dialog' class='orbit-development-edit-form'><div class='orbit-dialog-heading'><div><p class='orbit-kicker'>Development Note</p><h2>Edit note</h2><p>Update the note and add any extra screenshots or supporting files you found later.</p></div><button type='button' data-close-development-edit aria-label='Close'>\\xD7</button></div><label>Title<input id='developmentEditTitle' maxlength='240'></label><label>Description<textarea id='developmentEditDescription' rows='14'></textarea></label><section class='orbit-development-edit-evidence-v564'><div><strong>Add evidence</strong><p id='developmentEditExistingEvidence' class='orbit-muted'>Checking existing evidence\\u2026</p></div><input id='developmentEditEvidenceInputV564' type='file' accept='image/png,image/jpeg,image/webp,application/pdf,text/csv,text/plain,application/json,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' multiple hidden><button type='button' class='secondary' id='developmentEditChooseEvidenceV564'>Add screenshots or files</button><div id='developmentEditEvidencePreviewV564' class='orbit-screenshot-preview'></div></section><div id='developmentEditResult' class='orbit-inline-result' hidden></div><div class='orbit-action-row'><button type='button' class='secondary' data-close-development-edit>Cancel</button><button type='button' id='saveDevelopmentEditButton'>Save changes</button></div></form>\",document.body.appendChild(dialog),dialog.addEventListener(\"click\",function(e){e.target.closest(\"[data-close-development-edit]\")&&closeOrbitDialog(dialog)}));let fullNote=note;try{fullNote=(await api(\"/api/admin/development-notes/\"+encodeURIComponent(note.id),{timeoutMs:3e4,cacheMs:0})).note||note}catch{fullNote=note}let addScreenshots=[],addAttachments=[];const existingScreenshots=Array.isArray(fullNote.screenshots)?fullNote.screenshots:[],existingAttachments=Array.isArray(fullNote.attachments)?fullNote.attachments:[];document.getElementById(\"developmentEditTitle\").value=fullNote.title||\"\",document.getElementById(\"developmentEditDescription\").value=fullNote.description||\"\";const result=document.getElementById(\"developmentEditResult\"),input=document.getElementById(\"developmentEditEvidenceInputV564\"),preview=document.getElementById(\"developmentEditEvidencePreviewV564\"),existing=document.getElementById(\"developmentEditExistingEvidence\");result.hidden=!0,result.textContent=\"\",result.classList.remove(\"error\"),existing&&(existing.textContent=(existingScreenshots.length?existingScreenshots.length+\" screenshot\"+(existingScreenshots.length===1?\"\":\"s\"):\"No screenshots\")+\" \\xB7 \"+(existingAttachments.length?existingAttachments.length+\" file\"+(existingAttachments.length===1?\"\":\"s\"):\"no files\")+\" already saved. New evidence will be added without replacing it.\");const renderAdded=()=>{if(!preview)return;const images=addScreenshots.map((img,i)=>\"<figure><img src='\"+img.dataUrl+\"' alt='New screenshot'><figcaption><span>\"+esc(img.name)+\"</span><button type='button' data-remove-development-edit-image-v564='\"+i+\"'>Remove</button></figcaption></figure>\"),files=addAttachments.map((file,i)=>\"<article class='orbit-file-evidence-v563'><div><strong>\\u{1F4CE} \"+esc(file.name)+\"</strong><small>\"+esc(file.mimeType||\"Document\")+(file.uploadBytes?\" \\xB7 \"+formatEvidenceBytesV563(file.uploadBytes):\"\")+\"</small></div><button type='button' class='secondary' data-remove-development-edit-file-v564='\"+i+\"'>Remove</button></article>\");preview.innerHTML=images.concat(files).join(\"\")},addFiles=async files=>{for(const file of[...files])try{if(String(file.type||\"\").startsWith(\"image/\")||/\\.(png|jpe?g|webp)$/i.test(String(file.name||\"\"))){if(existingScreenshots.length+addScreenshots.length>=12)throw new Error(\"This note already has the maximum of 12 screenshots.\");const optimised=await optimiseDevelopmentScreenshotV341(file);addScreenshots.push(await fileAsOrbitEvidenceV341(optimised,\"IMG\"))}else{if(existingAttachments.length+addAttachments.length>=8)throw new Error(\"This note already has the maximum of 8 files.\");const mimeType=noteFileMimeV563(file);if(!ORBIT_NOTE_FILE_TYPES_V563.has(mimeType))throw new Error((file.name||\"File\")+\" is not a supported note attachment. Use PDF, CSV, TXT, JSON, Word or Excel.\");if(Number(file.size||0)>3e6)throw new Error((file.name||\"File\")+\" is larger than 3 MB.\");if(addAttachments.reduce((sum,item)=>sum+Number(item.uploadBytes||0),0)+Number(file.size||0)>6e6)throw new Error(\"New files added in one edit are limited to 6 MB total.\");const normalised=new File([file],file.name,{type:mimeType,lastModified:file.lastModified||Date.now()});addAttachments.push(await fileAsOrbitEvidenceV341(normalised,\"FILE\"))}}catch(err){setNotice2(err.message||String(err),!0)}renderAdded()};input&&(input.value=\"\",input.onchange=async()=>{await addFiles(input.files||[]),input.value=\"\"});const choose=document.getElementById(\"developmentEditChooseEvidenceV564\");choose&&(choose.onclick=()=>input?.click()),preview&&(preview.onclick=e=>{const image=e.target.closest(\"[data-remove-development-edit-image-v564]\"),file=e.target.closest(\"[data-remove-development-edit-file-v564]\");image&&(addScreenshots.splice(Number(image.dataset.removeDevelopmentEditImageV564),1),renderAdded()),file&&(addAttachments.splice(Number(file.dataset.removeDevelopmentEditFileV564),1),renderAdded())}),renderAdded();const save=document.getElementById(\"saveDevelopmentEditButton\");save.onclick=async function(){const title=document.getElementById(\"developmentEditTitle\").value.trim(),description=document.getElementById(\"developmentEditDescription\").value.trim();if(!title){result.hidden=!1,result.classList.add(\"error\"),result.textContent=\"Add a title before saving.\";return}save.disabled=!0,save.textContent=\"Saving\\u2026\";try{if(!(await api(\"/api/admin/development-notes/\"+encodeURIComponent(note.id),{method:\"PATCH\",body:JSON.stringify({title,description,addScreenshots,addAttachments})})).note?.id)throw new Error(\"Orbit OS did not return the edited development item.\");await loadOrbitDevelopmentHub({forceFresh:!0});const saved=orbitDevelopmentNotes.find(x=>x.id===note.id);if(!saved||saved.title!==title||saved.description!==description)throw new Error(\"The edited Development Note did not survive reload.\");closeOrbitDialog(dialog),setNotice2(\"Development item updated\"+(addScreenshots.length||addAttachments.length?\" with new evidence\":\"\")+\": \"+saved.title)}catch(err){result.hidden=!1,result.classList.add(\"error\"),result.textContent=err.message||String(err)}finally{save.disabled=!1,save.textContent=\"Save changes\"}},openOrbitDialog(dialog),setTimeout(()=>document.getElementById(\"developmentEditDescription\")?.focus(),60)}async function deleteDevelopmentNote(note){if(!note||!confirm(`Delete this Development Note permanently?\n\n`+note.title+`\n\nComments and screenshots will also be removed. Choose OK to delete or Cancel to keep it.`))return;if(await api(\"/api/admin/development-notes/\"+encodeURIComponent(note.id)+\"/delete\",{method:\"POST\",body:\"{}\"}),orbitDevelopmentNotes=orbitDevelopmentNotes.filter(x=>x.id!==note.id),renderDevelopmentNotes(),renderVerificationQueue(),orbitDevelopmentNotes=(await api(\"/api/admin/development-notes\",{timeoutMs:15e3,cacheMs:0})).notes||[],orbitDevelopmentNotes.some(x=>x.id===note.id))throw new Error(\"Deletion could not be verified.\");renderDevelopmentNotes(),renderVerificationQueue(),renderHeldVerificationQueue(),setNotice2(\"Development item permanently deleted: \"+note.title)}document.getElementById(\"createRoadmapItemButton\")?.addEventListener(\"click\",()=>openRoadmapItemDialog(null)),document.getElementById(\"closeRoadmapItemDialog\")?.addEventListener(\"click\",()=>closeOrbitDialog(document.getElementById(\"orbitRoadmapItemDialog\"))),document.getElementById(\"cancelRoadmapItemButton\")?.addEventListener(\"click\",()=>closeOrbitDialog(document.getElementById(\"orbitRoadmapItemDialog\"))),document.getElementById(\"saveRoadmapItemButton\")?.addEventListener(\"click\",saveRoadmapItem),document.getElementById(\"orbitRoadmapItemForm\")?.addEventListener(\"submit\",e=>{e.preventDefault(),saveRoadmapItem()}),document.getElementById(\"orbitRoadmapList\")?.addEventListener(\"click\",async e=>{const research=e.target.closest(\"[data-roadmap-ai-v548]\"),edit=e.target.closest(\"[data-edit-roadmap]\"),del=e.target.closest(\"[data-delete-roadmap]\");if(research){const id=research.dataset.roadmapAiV548;setLoading(research,!0);try{const data=await api(\"/api/admin/product-roadmap/\"+encodeURIComponent(id)+\"/ai-dossier/refresh\",{method:\"POST\",body:\"{}\",timeoutMs:9e4,cacheMs:0}),item=orbitRoadmapItems.find(x=>x.id===id);item&&data.dossier&&(item.aiResearchDossier={researchedAt:data.dossier.researchedAt,analysisMode:data.dossier.analysisMode,model:data.dossier.model,viability:data.dossier.viability,recommendedNextStep:data.dossier.recommendedNextStep,readOnly:!0}),renderRoadmap(),setNotice2(\"Roadmap AI research refreshed. It did not change the roadmap item or production.\")}catch(err){setNotice2(\"Roadmap research failed: \"+(err.message||err),!0)}finally{setLoading(research,!1)}return}if(edit){const item=orbitRoadmapItems.find(x=>x.id===edit.dataset.editRoadmap);openRoadmapItemDialog(item)}if(del){const item=orbitRoadmapItems.find(x=>x.id===del.dataset.deleteRoadmap);deleteRoadmapItem(item).catch(err=>setNotice2(err.message,!0))}}),document.addEventListener(\"click\",function(event){const button2=event.target.closest(\"[data-development-tab],[data-v77-draw-tab],[data-engagement-tab],[data-shipping-tab],[data-v77-events-tab]\");if(!button2)return;const mapping=[[\"developmentTab\",\"development\"],[\"v77DrawTab\",\"automation\"],[\"engagementTab\",\"engagement\"],[\"shippingTab\",\"shipping\"],[\"v77EventsTab\",\"events\"]];for(const pair of mapping)if(button2.dataset[pair[0]]){rememberOrbitSubtab(pair[1],button2.dataset[pair[0]]);break}},!0),bind(),$2(\"orbitAdminAuthForm\")?.addEventListener(\"submit\",submitAdminAuthV329),$2(\"orbitAdminLogoutButton\")?.addEventListener(\"click\",logoutAdminV329),$2(\"adminChangePasswordButton\")?.addEventListener(\"click\",async function(){setLoading(this,!0);try{await api(\"/api/admin/auth/password\",{method:\"POST\",body:JSON.stringify({currentPassword:$2(\"adminCurrentPassword\")?.value||\"\",newPassword:$2(\"adminNewPassword\")?.value||\"\"})}),setNotice2(\"Password changed. Please sign in again.\"),setTimeout(logoutAdminV329,500)}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(this,!1)}}),$2(\"adminCreateUserButton\")?.addEventListener(\"click\",async function(){setLoading(this,!0);try{await api(\"/api/admin/auth/users\",{method:\"POST\",body:JSON.stringify({username:$2(\"adminNewUsername\")?.value||\"\",password:$2(\"adminNewUserPassword\")?.value||\"\",role:$2(\"adminNewUserRole\")?.value||\"operator\"})}),await loadAdminUsersV329(),setNotice2(\"Admin user created.\")}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(this,!1)}}),$2(\"adminReloadUsersButton\")?.addEventListener(\"click\",()=>loadAdminUsersV329().catch(err=>setNotice2(err.message||err,!0))),$2(\"adminUsersTable\")?.addEventListener(\"click\",async function(event){const save=event.target.closest(\"[data-admin-user-save]\"),toggle=event.target.closest(\"[data-admin-user-toggle]\"),reset=event.target.closest(\"[data-admin-user-reset]\"),del=event.target.closest(\"[data-admin-user-delete]\"),button2=save||toggle||reset||del;if(button2){setLoading(button2,!0);try{if(save){const row=button2.closest(\"tr\"),role=row?.querySelector(\"[data-admin-user-role]\")?.value,username=row?.querySelector(\"[data-admin-user-name]\")?.value;await api(\"/api/admin/auth/users/\"+encodeURIComponent(save.dataset.adminUserSave),{method:\"PATCH\",body:JSON.stringify({role,username})})}else if(toggle)await api(\"/api/admin/auth/users/\"+encodeURIComponent(toggle.dataset.adminUserToggle),{method:\"PATCH\",body:JSON.stringify({active:toggle.dataset.active===\"true\"})});else if(del){const label=del.dataset.adminUserLabel||\"this Admin user\";if(!confirm(\"Permanently delete \"+label+\"? Their active Admin sessions will be revoked.\"))return;await api(\"/api/admin/auth/users/\"+encodeURIComponent(del.dataset.adminUserDelete),{method:\"DELETE\"})}else{const password=prompt(\"New password (10+ characters with letters and numbers):\");if(!password)return;await api(\"/api/admin/auth/users/\"+encodeURIComponent(reset.dataset.adminUserReset)+\"/reset-password\",{method:\"POST\",body:JSON.stringify({newPassword:password})})}await loadAdminUsersV329(),setNotice2(\"Admin access updated.\")}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}});try{const eventsMemoryKey=orbitSubtabStorageKey(\"events\");localStorage.getItem(eventsMemoryKey)===\"events\"&&localStorage.setItem(eventsMemoryKey,\"eventbrite\")}catch{}const validStartupModules=new Set(Array.from(document.querySelectorAll(\".orbit-module[data-module]\")).map(function(section){return section.dataset.module}));validStartupModules.add(\"golden-schedule\"),validStartupModules.add(\"content\"),validStartupModules.add(\"reports\"),validStartupModules.add(\"directory\");let startupModule=\"dashboard\";try{const hashMatch=String(window.location.hash||\"\").match(/^#orbit-module-([a-z0-9-]+)$/i),hashModule=hashMatch?hashMatch[1]:\"\",storedModule=String(localStorage.getItem(\"orbitAdminLastModule\")||\"\");validStartupModules.has(hashModule)?startupModule=hashModule:validStartupModules.has(storedModule)&&(startupModule=storedModule)}catch{}orbitStartupModuleV329=startupModule,enforceMonthlyDrawSummaryLayout();const warmOrbitAdminModules=function(){ensureLoyaltyOperationsV727(),loadLoyaltyOperationsV727().catch(function(){}),loadEngagementV73().catch(function(){}),refreshOperationsWorkspaceV296().catch(function(){}),loadMediaV74().catch(function(){}),loadMissionControlV74().catch(function(){})};requestAnimationFrame(enforceMonthlyDrawSummaryLayout),setTimeout(enforceMonthlyDrawSummaryLayout,250),setTimeout(enforceMonthlyDrawSummaryLayout,1e3),window.addEventListener(\"resize\",()=>{enforceMonthlyDrawSummaryLayout(),window.innerWidth>760&&(document.querySelector(\".orbit-admin-app\")?.classList.remove(\"menu-open\"),document.getElementById(\"orbitAdminMenuToggle\")?.setAttribute(\"aria-expanded\",\"false\"))}),window.addEventListener(\"storage\",function(event){event.key===\"orbitSpecialShipmentsChangedAt\"&&reloadSpecialShipments().catch(function(err){setNotice2(err.message,!0)})}),window.orbitAdminApi=api,window.orbitActivateModule=activateModule,window.orbitSetNotice=setNotice2,window.orbitLoadMemberProfile=loadMemberProfile,window.orbitGetSelectedMember=function(){return{lookup:selectedMemberLookup,profile:selectedMemberProfile}},initialiseAdminSessionV329().then(function(authenticated){authenticated&&startAuthenticatedOrbitAdminV329()}).catch(function(err){showAdminConnectionUnavailableV596(err)}),document.addEventListener(\"change\",async function(event){const select=event.target.closest(\"[data-event-tag-select]\");if(!select)return;const eventId=select.dataset.eventTagSelect,tag=select.value||\"On Sale\";select.dataset.previousValue===void 0&&(select.dataset.previousValue=select.value);const stateNode=document.querySelector('[data-event-tag-state=\"'+CSS.escape(eventId)+'\"]'),preview=document.querySelector('[data-event-tag-preview=\"'+CSS.escape(eventId)+'\"]');preview&&(preview.lastChild.textContent=tag),select.disabled=!0,stateNode&&(stateNode.textContent=\"Saving\\u2026\");try{await api(\"/api/admin/eventbrite/events/\"+encodeURIComponent(eventId)+\"/public-config\",{method:\"POST\",body:JSON.stringify({publicTag:tag||\"On Sale\",publicTagEnabled:!0,publicTagPlacement:\"event\"})}),select.dataset.previousValue=select.value,stateNode&&(stateNode.textContent=\"\\u2713 Published: \"+(tag||\"On Sale\")),setNotice2(\"Public sales status updated.\")}catch(err){stateNode&&(stateNode.textContent=\"Save failed: \"+(err.message||\"Unknown error\"));const previous=select.dataset.previousValue||\"\";select.value=previous,setNotice2(err.message,!0)}finally{select.disabled=!1}}),document.addEventListener(\"click\",async function(event){const button2=event.target.closest(\"[data-dismiss-pending-ticket-order]\");if(!button2)return;const checkoutId=button2.dataset.dismissPendingTicketOrder;if(!(!checkoutId||!confirm(\"Dismiss this unpaid pending Shopify checkout from Tickets Centre? The recovery record will be kept safely in case Shopify later reports payment.\"))){setLoading(button2,!0);try{const result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/dismiss-pending\",{method:\"POST\",body:JSON.stringify({})});if(result?.dismissed!==!0)throw new Error(result?.error||\"Orbit did not confirm the pending checkout was dismissed.\");await loadShopify(),setNotice2(\"Pending checkout dismissed. It will reappear automatically if Shopify later reports a real paid order.\")}catch(err){setNotice2(err.message||String(err),!0),setLoading(button2,!1)}}}),document.addEventListener(\"click\",async function(event){const button2=event.target.closest(\"[data-delete-fulfilled-ticket-order]\");if(!button2)return;const checkoutId=button2.dataset.deleteFulfilledTicketOrder;if(!(!checkoutId||!confirm(\"Permanently delete this fulfilled ticket order from Orbit? Issued customer tickets are not revoked. This cannot be undone.\"))){setLoading(button2,!0);try{const result=await api(\"/api/admin/ticket-checkouts/\"+encodeURIComponent(checkoutId)+\"/delete\",{method:\"POST\",body:JSON.stringify({confirmPermanentDelete:!0})});if(result?.deleted!==!0)throw new Error(result?.error||\"Orbit did not confirm deletion.\");const row=button2.closest(\"tr\");row&&row.remove(),Array.isArray(state.ticketCheckouts?.checkouts)&&(state.ticketCheckouts.checkouts=state.ticketCheckouts.checkouts.filter(item=>String(item.checkoutId||\"\")!==String(checkoutId))),renderShopifyCentre(state.shopify||{},state.ticketCheckouts||{checkouts:[]}),await loadShopify(),setNotice2(\"Fulfilled ticket order deleted from the Ticket Centre.\")}catch(err){setNotice2(err.message||String(err),!0),setLoading(button2,!1)}}}),document.getElementById(\"drawAutomationSettingsForm\")?.addEventListener(\"submit\",async function(event){event.preventDefault();const button2=document.getElementById(\"saveDrawAutomationSettingsButton\"),result=document.getElementById(\"drawAutomationSettingsResult\");button2&&(button2.disabled=!0,button2.textContent=\"Saving\\u2026\");try{const data=await api(\"/api/admin/scheduler/config\",{method:\"POST\",body:JSON.stringify({automationEnabled:!!$2(\"drawAutomationEnabled\")?.checked,monthStartEnabled:!!state.scheduler?.monthStartEnabled,midMonthDrawEnabled:!!$2(\"drawMonthlyEnabled\")?.checked,midMonthDrawHourLocal:Number($2(\"drawMonthlyHour\")?.value||14),monthlyPrizeTitle:$2(\"drawMonthlyPrizeTitle\")?.value||\"Orbit Collectors Club monthly prize\"})});state.scheduler=data.status||state.scheduler,result&&(result.hidden=!1,result.textContent=\"Draw settings saved. Automatic draws run on the 15th and winners remain pending until you notify them.\"),await loadScheduler(),setNotice2(\"Monthly Draw settings saved.\")}catch(err){result&&(result.hidden=!1,result.textContent=\"Save failed: \"+(err.message||err)),setNotice2(err.message||String(err),!0)}finally{button2&&(button2.disabled=!1,button2.textContent=\"Save Draw Settings\")}}),document.addEventListener(\"click\",async function(event){const button2=event.target.closest(\"[data-ticket-delete]\");if(!button2)return;const code=button2.dataset.ticketDelete;if(confirm(\"Permanently delete Golden Ticket \"+code+\"? This cannot be undone.\")){button2.disabled=!0;try{const result=await api(\"/api/admin/golden-tickets/\"+encodeURIComponent(code)+\"/delete\",{method:\"POST\",body:JSON.stringify({confirmPermanentDelete:!0})});if(!result||result.deleted!==!0)throw new Error(\"Orbit did not confirm the ticket was deleted.\");await loadGolden(),setNotice2(\"Golden Ticket \"+code+\" permanently deleted.\")}catch(err){setNotice2(err.message||String(err),!0),button2.disabled=!1}}}),document.addEventListener(\"click\",async function(event){const button2=event.target?.closest?.(\"#refreshDrawAutomationButton\");if(!button2||button2.dataset.v198RefreshBound===\"1\")return;event.preventDefault();const original=button2.textContent||\"Refresh Automation\";button2.dataset.v198RefreshBound=\"1\",button2.disabled=!0,button2.textContent=\"Refreshing\\u2026\",text(\"drawAutomationRefreshState\",\"Checking the live scheduler now\\u2026\");try{await loadScheduler();const stamp=new Date().toLocaleTimeString(\"en-GB\",{hour:\"2-digit\",minute:\"2-digit\"});text(\"drawAutomationRefreshState\",\"Last refreshed \"+stamp),setNotice2(\"Draw automation refreshed successfully.\")}catch(err){text(\"drawAutomationRefreshState\",\"Refresh failed \\xB7 \"+(err.message||err)),setNotice2(\"Draw automation could not be refreshed: \"+(err.message||err),!0)}finally{button2.disabled=!1,button2.textContent=original,setTimeout(()=>{delete button2.dataset.v198RefreshBound},250)}});function setMemberViewV474(view){const next=[\"active\",\"recharge\",\"archived\"].includes(String(view||\"\"))?String(view):\"active\";state.currentMemberView=next;const map={active:$2(\"activeMembersWorkspace\"),recharge:$2(\"rechargeReconciliationWorkspace\"),archived:$2(\"archivedMembersWorkspace\")};Object.entries(map).forEach(([key,node])=>{node&&(node.hidden=key!==next)}),[[\"showActiveMembersNav\",\"active\"],[\"openRechargeReconciliationNav\",\"recharge\"],[\"openArchivedMembersNav\",\"archived\"]].forEach(([id,key])=>{const button2=$2(id);if(!button2)return;const selected=key===next;button2.classList.toggle(\"active\",selected),button2.setAttribute(\"aria-selected\",String(selected)),selected?button2.setAttribute(\"aria-current\",\"page\"):button2.removeAttribute(\"aria-current\")})}function setArchivedMembersViewV296(showArchive){setMemberViewV474(showArchive?\"archived\":\"active\")}$2(\"showActiveMembersView\")?.addEventListener(\"click\",function(){setArchivedMembersViewV296(!1)}),$2(\"openArchivedMembersButton\")?.addEventListener(\"click\",async function(){setArchivedMembersViewV296(!0),await loadArchivedMembers(this)}),$2(\"showActiveMembersNav\")?.addEventListener(\"click\",function(){setMemberViewV474(\"active\")}),$2(\"openRechargeReconciliationNav\")?.addEventListener(\"click\",function(){setMemberViewV474(\"recharge\")}),$2(\"openArchivedMembersNav\")?.addEventListener(\"click\",async function(){setMemberViewV474(\"archived\"),await loadArchivedMembers(this)}),$2(\"closeArchivedMembersButton\")?.addEventListener(\"click\",function(){setArchivedMembersViewV296(!1)}),$2(\"searchArchivedMembersButton\")?.addEventListener(\"click\",function(){loadArchivedMembers(this).catch(err=>setNotice2(err.message,!0))}),$2(\"archivedMembersList\")?.addEventListener(\"click\",async function(event){const restore=event.target.closest(\"[data-restore-member]\"),del=event.target.closest(\"[data-delete-archived-member]\");try{if(restore){if(!confirm(\"Restore this archived member to active operational views?\"))return;await api(\"/api/admin/archived-members/\"+encodeURIComponent(restore.dataset.restoreMember)+\"/restore\",{method:\"POST\",body:\"{}\"}),await loadArchivedMembers(restore),await loadMemberSummary(),setNotice2(\"Member restored exactly as archived.\")}del&&await openPermanentDeletePreview(del.dataset.deleteArchivedMember,del)}catch(err){setNotice2(err.message,!0)}}),$2(\"closeMemberDeleteDialog\")?.addEventListener(\"click\",()=>$2(\"memberDeleteDialog\").close()),$2(\"memberDeleteConfirmInput\")?.addEventListener(\"input\",function(){$2(\"confirmPermanentMemberDelete\").disabled=this.value!==\"DELETE\"}),$2(\"confirmPermanentMemberDelete\")?.addEventListener(\"click\",async function(){if(!(!pendingPermanentDeleteLookup||$2(\"memberDeleteConfirmInput\").value!==\"DELETE\")){setLoading(this,!0),$2(\"memberDeleteResult\").textContent=\"Deleting in dependency order and verifying every collection\\u2026\";try{const result=await api(\"/api/admin/archived-members/\"+encodeURIComponent(pendingPermanentDeleteLookup)+\"/delete-permanently\",{method:\"POST\",body:JSON.stringify({confirmation:\"DELETE\"}),timeoutMs:12e4,cacheMs:0});if(!result.verified)throw new Error(\"Orbit did not verify deletion.\");$2(\"memberDeleteResult\").textContent=\"Verified complete. \"+Number(result.deletedTotal||0)+\" Orbit record(s) deleted; 0 references remain.\",setTimeout(()=>$2(\"memberDeleteDialog\").close(),900),await loadArchivedMembers(),await loadMemberSummary(),setNotice2(\"Permanent deletion verified: zero Orbit database references remain.\")}catch(err){$2(\"memberDeleteResult\").textContent=err.message,setNotice2(err.message,!0)}finally{setLoading(this,!1)}}}),$2(\"refreshStorageForensics\")?.addEventListener(\"click\",function(){loadStorageForensicsV353().catch(err=>setNotice2(err.message,!0))}),$2(\"applyStorageRetentionV354\")?.addEventListener(\"click\",function(){applyStorageRetentionV354(this).catch(err=>setNotice2(err.message,!0))}),$2(\"orbitLoadRetentionPreviewV71605\")?.addEventListener(\"click\",function(){loadStorageRetentionPreviewV71605(this).catch(err=>setNotice2(err.message,!0))}),$2(\"orbitLoadStorageCollectionsV71605\")?.addEventListener(\"click\",function(){loadStorageCollectionPageV71605(this).catch(err=>setNotice2(err.message,!0))}),$2(\"orbitCleanEphemeralBuildsV71604\")?.addEventListener(\"click\",function(){applyEphemeralBuildCleanupV71604(this).catch(err=>setNotice2(err.message,!0))}),$2(\"orbitTelemetryPreviewV71619\")?.addEventListener(\"click\",function(){telemetryPreviewV71619(this).catch(err=>telemetryStatusV71619(\"Preview failed: \"+err.message))}),$2(\"orbitTelemetryStartV71619\")?.addEventListener(\"click\",function(){telemetryStartV71619(this).catch(err=>telemetryStatusV71619(\"Start held: \"+err.message))}),$2(\"orbitTelemetryStopV71619\")?.addEventListener(\"click\",function(){telemetryStopV71619(this).catch(err=>telemetryStatusV71619(\"Stop held: \"+err.message))}),$2(\"refreshVendorOverview\")?.addEventListener(\"click\",e=>loadVendorWorkspaceV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"refreshVendorHistory\")?.addEventListener(\"click\",e=>loadVendorWorkspaceV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"startVendorHistoricalSync\")?.addEventListener(\"click\",e=>startVendorHistoricalSyncV384(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"startVendorFullResync\")?.addEventListener(\"click\",e=>startVendorFullResyncV396(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),document.addEventListener(\"click\",e=>{const b=e.target.closest(\"[data-vendor-transfer]\");b&&openVendorTransferV385(b)}),document.addEventListener(\"change\",e=>{e.target?.matches?.(\"[data-vendor-customer-select]\")&&updateVendorMergeButtonV390()});let vendorSearchTimerV453=null;function vendorServerSearchV453(pane){vendorSearchTimerV453&&clearTimeout(vendorSearchTimerV453),vendorSearchTimerV453=setTimeout(()=>loadVendorWorkspaceV398(null,!1,!1,pane,1).catch(err=>setNotice2(err.message||err,!0)),280)}$2(\"vendorCustomerSearch\")?.addEventListener(\"input\",()=>vendorServerSearchV453(\"customers\")),$2(\"vendorLiveEventSearch\")?.addEventListener(\"input\",()=>applyVendorEventSearchV398(\"vendorLiveEvents\",\"vendorLiveEventSearch\")),$2(\"vendorPastEventSearch\")?.addEventListener(\"input\",()=>applyVendorEventSearchV398(\"vendorPastEvents\",\"vendorPastEventSearch\")),$2(\"financePastEventSearchV463\")?.addEventListener(\"input\",()=>applyVendorEventSearchV398(\"financePastEventsV463\",\"financePastEventSearchV463\")),$2(\"refreshFinanceOverviewV463\")?.addEventListener(\"click\",e=>loadFinanceWorkspaceV464(e.currentTarget,!0).then(data=>{const meta=data.diagnostics?.metaAccounting;setNotice2(meta&&meta.status!==\"current\"?\"Event records loaded. Advertising is still updating; no refreshed advertising total is being claimed.\":\"Finance loaded from the complete persisted Vendor archive.\")}).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorOrderHistorySearch\")?.addEventListener(\"input\",()=>vendorServerSearchV453(\"shopify\")),$2(\"mergeVendorCustomers\")?.addEventListener(\"click\",()=>openVendorMergeV409()),$2(\"saveVendorCustomerMerge\")?.addEventListener(\"click\",e=>saveVendorMergeV390(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"cancelVendorCustomerMerge\")?.addEventListener(\"click\",()=>$2(\"vendorCustomerMergeDialog\")?.close()),$2(\"closeVendorCustomerDetail\")?.addEventListener(\"click\",()=>$2(\"vendorCustomerDetailDialog\")?.close()),$2(\"vendorEventAddComplimentary\")?.addEventListener(\"click\",()=>openVendorComplimentaryV404(state.currentVendorEvent)),$2(\"vendorEventPrintPackage\")?.addEventListener(\"click\",()=>printVendorEventShowPackageV404().catch(err=>setNotice2(err.message||err,!0))),$2(\"closeVendorEmailPreview\")?.addEventListener(\"click\",()=>$2(\"vendorEmailPreviewDialog\")?.close()),$2(\"vendorEmailPreviewVendor\")?.addEventListener(\"change\",e=>selectVendorEmailPreviewV429(e.target.value).catch(err=>setNotice2(err.message,!0))),document.addEventListener(\"click\",e=>{const b=e.target.closest?.(\"[data-vendor-customer-view]\");b&&viewVendorCustomerV398(b.dataset.vendorCustomerView);const primaryEmail=e.target.closest?.(\"[data-vendor-club-primary-email-v670]\");if(primaryEmail){changeVendorClubPrimaryEmailV670(primaryEmail).catch(err=>setNotice2(err.message||err,!0));return}const deduct=e.target.closest?.(\"[data-vendor-credit-deduct]\");deduct&&adjustVendorCreditFromCustomerV493(deduct,!1).catch(err=>setNotice2(err.message||err,!0));const clear=e.target.closest?.(\"[data-vendor-credit-clear]\");clear&&adjustVendorCreditFromCustomerV493(clear,!0).catch(err=>setNotice2(err.message||err,!0))}),$2(\"openComplimentaryVendorBooking\")?.addEventListener(\"click\",()=>openVendorComplimentaryV404()),$2(\"closeVendorComplimentaryDialog\")?.addEventListener(\"click\",()=>$2(\"vendorComplimentaryDialog\")?.close());let vendorCompSearchTimerV509=null;$2(\"vendorCompCustomerSearchV509\")?.addEventListener(\"input\",()=>{clearTimeout(vendorCompSearchTimerV509),vendorCompSearchTimerV509=setTimeout(()=>searchVendorCompCustomersV509().catch(err=>setNotice2(err.message||err,!0)),250)}),[\"vendorCompName\",\"vendorCompEmail\"].forEach(id=>$2(id)?.addEventListener(\"input\",()=>{state.vendorCompSelectedCustomerV509&&clearVendorCompCustomerSelectionV509()})),$2(\"saveVendorComplimentaryBooking\")?.addEventListener(\"click\",e=>saveVendorComplimentaryV385(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"refreshVendorClubV620\")?.addEventListener(\"click\",e=>loadVendorClubV620(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorSponsorshipRefreshV695\")?.addEventListener(\"click\",e=>loadVendorSponsorshipsV695(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorSponsorshipPersonaV695\")?.addEventListener(\"change\",async e=>{const select=e.currentTarget;select.disabled=!0;try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/sandbox/persona\",{personaId:select.value}),await loadVendorSponsorshipsV695(),setNotice2(\"Sponsorship sandbox persona changed.\")}catch(err){setNotice2(err.message||err,!0)}finally{select.disabled=!1}}),$2(\"vendorSponsorshipOpenV695\")?.addEventListener(\"click\",async e=>{const button2=e.currentTarget,popup=window.open(\"about:blank\",\"_blank\");setLoading(button2,!0);try{const data=await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/sandbox/open\",{personaId:$2(\"vendorSponsorshipPersonaV695\")?.value});if(!data?.url)throw new Error(\"Orbit did not return the Vendor Club Sandbox URL.\");popup?popup.location.href=data.url:window.open(data.url,\"_blank\",\"noopener\"),setNotice2(\"Vendor Club sponsorship sandbox opened.\")}catch(err){popup&&popup.close(),setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}),document.addEventListener(\"click\",async e=>{const button2=e.target?.closest?.(\"#vendorSponsorshipMobileV695\");if(button2&&(e.preventDefault(),e.stopPropagation(),!button2.disabled)){setLoading(button2,!0);try{state.vendorSponsorshipSandboxV695?.runId||await loadVendorSponsorshipsV695();const data=await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/sandbox/mobile\",{personaId:$2(\"vendorSponsorshipPersonaV695\")?.value});if(!data?.qrDataUrl||!data.url)throw new Error(\"Orbit did not return a usable mobile sandbox QR and link.\");renderVendorSponsorshipMobileQrV695(data),setNotice2(\"Your single-use sandbox QR is ready. Scan it within five minutes.\")}catch(err){const message=\"Mobile sandbox QR failed: \"+(err.message||String(err));setNotice2(message,!0);const result=$2(\"vendorSponsorshipMetricsV695\");result&&result.insertAdjacentHTML(\"afterbegin\",'<p role=\"alert\" class=\"orbit-error\">'+esc(message)+\"</p>\")}finally{setLoading(button2,!1)}}},!0),$2(\"vendorSponsorshipResetV695\")?.addEventListener(\"click\",async e=>{if(!confirm(\"Reset the sponsorship TEST SANDBOX to its seeded state? This does not change live business data.\"))return;const button2=e.currentTarget;setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/sandbox/reset\"),await loadVendorSponsorshipsV695(),setNotice2(\"Sponsorship sandbox reset.\")}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}),$2(\"vendorSponsorshipManualV695\")?.addEventListener(\"submit\",async e=>{e.preventDefault();const form=e.currentTarget,fd=new FormData(form),tier=String(fd.get(\"tier\")||\"headline\"),expected=tier===\"gold\"?2:4,existing=Math.max(0,Number(fd.get(\"existingTableQty\")||0)),added=Math.max(0,Number(fd.get(\"newTableQty\")||0));if(existing+added!==expected){setNotice2(\"Manual \"+tier+\" assignment must reconcile exactly \"+expected+\" included tables.\",!0);return}const button2=form.querySelector(\"button[type=submit]\"),notice=$2(\"vendorSponsorshipManualNoticeV695\");setLoading(button2,!0);try{await vendorSponsorshipPostV695(\"/api/admin/vendors/club/sponsorships/manual\",{eventId:fd.get(\"eventId\"),tier,vendorName:fd.get(\"vendorName\"),considerationType:fd.get(\"considerationType\"),commercialNotes:fd.get(\"commercialNotes\"),existingTableQty:existing,newTableQty:added}),form.reset(),notice&&(notice.textContent=\"Sandbox sponsorship assigned.\"),await loadVendorSponsorshipsV695()}catch(err){notice&&(notice.textContent=err.message),setNotice2(err.message||err,!0)}finally{setLoading(button2,!1)}}),$2(\"vendorClubSearchV620\")?.addEventListener(\"input\",()=>{clearTimeout(state.vendorClubSearchTimerV620),state.vendorClubSearchTimerV620=setTimeout(()=>loadVendorClubV620().catch(err=>setNotice2(err.message||err,!0)),250)}),$2(\"saveVendorClubSettingsV620\")?.addEventListener(\"click\",e=>saveVendorClubSettingsV620(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"repairVendorClubPageV6202\")?.addEventListener(\"click\",e=>ensureVendorClubPageV6202(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),document.querySelectorAll(\"[data-vendor-club-preview-v6201]\").forEach(button2=>button2.addEventListener(\"click\",()=>openVendorClubPreviewV6201(button2.dataset.vendorClubPreviewV6201,null,button2).catch(err=>setNotice2(err.message||err,!0)))),$2(\"vendorClubPreviewAsVendorV623\")?.addEventListener(\"click\",e=>previewSelectedVendorClubV623(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorClubOpenSandboxV624\")?.addEventListener(\"click\",e=>openVendorClubSandboxV624(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorClubResetSandboxV624\")?.addEventListener(\"click\",e=>resetVendorClubSandboxV624(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorClubEnableLaunchV6201\")?.addEventListener(\"click\",e=>setVendorClubLaunchStateV6201(!0,e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorClubDisableLaunchV6201\")?.addEventListener(\"click\",e=>setVendorClubLaunchStateV6201(!1,e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"dryRunVendorClub2027V620\")?.addEventListener(\"click\",e=>runVendorClubMigrationV620(e.currentTarget,!1).catch(err=>setNotice2(err.message||err,!0))),$2(\"commitVendorClub2027V620\")?.addEventListener(\"click\",e=>runVendorClubMigrationV620(e.currentTarget,!0).catch(err=>setNotice2(err.message||err,!0))),$2(\"reconcileVendorClubV620\")?.addEventListener(\"click\",e=>reconcileVendorClubV620(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"refreshVendorClubEmailsV621\")?.addEventListener(\"click\",e=>loadVendorClubEmailsV621(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"closeVendorClubEmailPreviewV621\")?.addEventListener(\"click\",()=>{const wrap=$2(\"vendorClubEmailPreviewWrapV621\"),frame=$2(\"vendorClubEmailPreviewFrameV621\");wrap&&(wrap.hidden=!0),frame&&(frame.srcdoc=\"\")}),refreshVendorSupportNavBadgeV670();const vendorSupportBadgeTimerV670=setInterval(()=>{refreshVendorSupportNavBadgeV670()},2e4);$2(\"refreshVendorClubSupportV621\")?.addEventListener(\"click\",e=>loadVendorClubSupportV621(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorClubSupportModeV635\")?.addEventListener(\"change\",()=>{saveVendorSupportDraftV641(),vendorSupportDetailEpochV641++,state.currentVendorSupportTicketV621=null,document.querySelector('[data-vendor-pane=\"club-support\"]')?.classList.remove(\"has-conversation-v641\");const detail=$2(\"vendorClubSupportDetailV621\");detail&&(detail.innerHTML=\"<p>Select a request from this inbox.</p>\"),loadVendorClubSupportV621().catch(err=>setNotice2(err.message,!0))}),document.querySelectorAll(\"[data-vendor-support-view-v642]\").forEach(button2=>button2.addEventListener(\"click\",()=>{$2(\"vendorClubSupportStatusV621\").value=button2.dataset.vendorSupportViewV642,$2(\"vendorClubSupportStatusV621\").dispatchEvent(new Event(\"change\"))})),$2(\"vendorClubSupportStatusV621\")?.addEventListener(\"change\",()=>loadVendorClubSupportV621().catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorClubSupportSearchV621\")?.addEventListener(\"input\",()=>{clearTimeout(state.vendorClubSupportSearchTimerV621),state.vendorClubSupportSearchTimerV621=setTimeout(()=>loadVendorClubSupportV621().catch(err=>setNotice2(err.message||err,!0)),250)}),$2(\"saveVendorEventClubV620\")?.addEventListener(\"click\",e=>saveVendorEventClubV620(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"closeVendorTransferDialog\")?.addEventListener(\"click\",()=>$2(\"vendorTransferDialog\")?.close()),$2(\"saveVendorTransfer\")?.addEventListener(\"click\",e=>saveVendorTransferV385(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),document.addEventListener(\"click\",e=>{const eventComp=e.target.closest?.(\"[data-vendor-event-complimentary]\");if(eventComp){const ev=(state.vendorWorkspace?.allEvents||[]).find(x=>x.key===eventComp.dataset.vendorEventComplimentary)||state.currentVendorEvent;openVendorComplimentaryV404(ev);return}const compCustomer=e.target.closest?.(\"[data-vendor-comp-customer-v509]\");if(compCustomer){selectVendorCompCustomerV509((state.vendorCompSearchResultsV509||[])[Number(compCustomer.dataset.vendorCompCustomerV509)]);return}const financeAttendance=e.target.closest?.(\"[data-finance-attendance-v509]\");if(financeAttendance){renderFinanceAttendanceV509(financeAttendance.dataset.financeAttendanceV509,financeAttendance.dataset.eventName).catch(err=>setNotice2(err.message||err,!0));return}if(e.target.closest?.(\"[data-finance-attendance-close-v509]\")){ensureFinanceAttendanceDialogV509().close();return}const financeAttendanceRefresh=e.target.closest?.(\"[data-finance-attendance-refresh-v509]\");if(financeAttendanceRefresh){refreshFinanceAttendanceFromEventbriteV509(financeAttendanceRefresh).catch(err=>setNotice2(err.message||err,!0));return}const eventPrint=e.target.closest?.(\"[data-vendor-event-print]\");if(eventPrint){selectVendorToolEventV399(\"planner\",eventPrint.dataset.vendorEventPrint).then(()=>printVendorShowPackageV398()).catch(err=>setNotice2(err.message||err,!0));return}const historicFloor=e.target.closest?.(\"[data-vendor-archive-floorplan]\");if(historicFloor){openFinanceArchivedFloorPlanV71705(historicFloor.dataset.vendorArchiveFloorplan).catch(err=>setNotice2(err.message||err,!0));return}const tool=e.target.closest?.(\"[data-vendor-event-tool]\");if(tool){selectVendorToolEventV399(tool.dataset.vendorEventTool,tool.dataset.eventKey).catch(err=>setNotice2(err.message||err,!0));return}const finance=e.target.closest?.(\"[data-vendor-event-finance]\");if(finance){try{openVendorFinancialDialogV440(finance.dataset.vendorEventFinance)}catch(err){setNotice2(err.message||err,!0)}return}const financeDelete=e.target.closest?.(\"[data-vendor-finance-expense-delete]\");if(financeDelete){deleteVendorFinancialPopupExpenseV441(financeDelete.dataset.vendorFinanceExpenseDelete).catch(err=>setNotice2(err.message||err,!0));return}if(e.target?.id===\"vendorPopupAddExpense\"){addVendorFinancialPopupExpenseV441(e.target).catch(err=>setNotice2(err.message||err,!0));return}if(e.target?.id===\"vendorPopupRefreshFinancials\"){refreshVendorFinancialPopupV441(e.target).catch(err=>setNotice2(err.message||err,!0));return}const popupOpen=e.target.closest?.(\"[data-vendor-popup-document-open]\");if(popupOpen){openVendorEventDocumentV398(popupOpen.dataset.vendorPopupDocumentOpen).catch(err=>setNotice2(err.message||err,!0));return}const popupDelete=e.target.closest?.(\"[data-vendor-popup-document-delete]\");if(popupDelete){deleteVendorEventDocumentV398(popupDelete.dataset.vendorPopupDocumentDelete).then(()=>{const refreshed=vendorEventByKeyV399(state.currentVendorEventKey);refreshed&&$2(\"vendorPopupDocumentList\")&&($2(\"vendorPopupDocumentList\").innerHTML=vendorEventDocumentRowsV439(refreshed),state.currentVendorEvent=refreshed)}).catch(err=>setNotice2(err.message||err,!0));return}const popupFormat=e.target.closest?.(\"[data-vendor-popup-format]\");if(popupFormat){$2(\"vendorPopupBriefingEditor\")?.focus(),document.execCommand(popupFormat.dataset.vendorPopupFormat,!1,null);return}if(e.target?.id===\"vendorPopupDocumentUpload\"){uploadVendorPopupDocumentV439(e.target).catch(err=>setNotice2(err.message||err,!0));return}if(e.target?.id===\"vendorPopupBriefingSourceToggle\"){toggleVendorPopupBriefingSourceV440();return}if(e.target?.id===\"vendorPopupBriefingSelectAll\"){const source=$2(\"vendorPopupBriefingSource\");source&&(source.focus(),source.select());return}if(e.target?.id===\"saveVendorPopupBriefing\"){saveVendorPopupBriefingV439(e.target).catch(err=>setNotice2(err.message||err,!0));return}const groupAction=e.target.closest?.(\"[data-vendor-group-action]\");if(groupAction){runVendorGroupActionV399(groupAction);return}const eventOpen=e.target.closest?.(\"[data-vendor-event-open]\");if(eventOpen){openVendorEventV398(eventOpen.dataset.vendorEventOpen).catch(err=>setNotice2(err.message||err,!0));return}const retryVendorBatch=e.target.closest?.(\"[data-vendor-briefing-retry-v487]\");if(retryVendorBatch){retryVendorBriefingBatchV487(retryVendorBatch.dataset.vendorBriefingRetryV487,retryVendorBatch).catch(err=>setNotice2(err.message||err,!0));return}const dismissDup=e.target.closest?.(\"[data-vendor-duplicate-dismiss]\");if(dismissDup){const row=(state.vendorDuplicateSuggestions||[]).find(x=>x.id===dismissDup.dataset.vendorDuplicateDismiss);row&&confirm(\"Keep these as separate Vendor customer records and remove this merge suggestion?\")&&api(\"/api/admin/vendors/customers/merge-dismiss\",{method:\"POST\",body:JSON.stringify({memberKeys:(row.customers||[]).map(x=>x.key)})}).then(()=>loadVendorWorkspaceV398(null,!1,!0,state.currentVendorPane||\"merge\")).then(()=>setNotice2(\"Merge suggestion dismissed. Both customer records remain separate.\")).catch(err=>setNotice2(err.message||err,!0));return}const dup=e.target.closest?.(\"[data-vendor-duplicate-merge]\");if(dup){const row=(state.vendorDuplicateSuggestions||[]).find(x=>x.id===dup.dataset.vendorDuplicateMerge);row&&openVendorMergeV409((row.customers||[]).map(x=>x.key),row.customers||[]);return}const venue=e.target.closest?.(\"[data-vendor-venue-edit]\");if(venue){openVendorVenueV398(venue.dataset.vendorVenueEdit).catch(err=>setNotice2(err.message||err,!0));return}const floorEdit=e.target.closest?.(\"[data-vendor-floor-plan-edit]\");if(floorEdit){openVendorFloorPlanEditorV401(floorEdit.dataset.vendorFloorPlanEdit).catch(err=>setNotice2(err.message||err,!0));return}const floorDelete=e.target.closest?.(\"[data-vendor-floor-plan-delete]\");if(floorDelete){deleteVendorFloorPlanV401(floorDelete.dataset.vendorFloorPlanDelete).catch(err=>setNotice2(err.message||err,!0));return}const roomRemove=e.target.closest?.(\"[data-vendor-room-remove]\");if(roomRemove&&state.vendorTablePlan){const id=roomRemove.dataset.vendorRoomRemove,room=(state.vendorTablePlan.rooms||[]).find(r=>r.id===id);room&&confirm(\"Remove \"+(room.name||\"this room\")+\" from this event? Vendor assignments on this map will be removed.\")&&(state.vendorTablePlan.rooms=state.vendorTablePlan.rooms.filter(r=>r.id!==id),state.vendorTablePlan.activeRoomId=state.vendorTablePlan.rooms[0]?.id||null,renderVendorTablePlanV398(),scheduleVendorPlanAutosaveV403());return}const roomTab=e.target.closest?.(\"[data-vendor-room-tab]\");if(roomTab&&state.vendorTablePlan){state.vendorTablePlan.activeRoomId=roomTab.dataset.vendorRoomTab,renderVendorTablePlanV398();return}const plannerTransform=e.target.closest?.(\"[data-vendor-map-transform]\");if(plannerTransform){transformActiveVendorRoomV401(plannerTransform.dataset.vendorMapTransform);return}const floorTransform=e.target.closest?.(\"[data-floor-plan-transform]\");if(floorTransform){transformFloorPlanDraftV401(floorTransform.dataset.floorPlanTransform);return}const auditAction=e.target.closest?.(\"[data-cancel-audit-action-v770]\");if(auditAction){handleVendorCancellationAuditV770(auditAction).catch(err=>setNotice2(err.message||err,!0));return}const cancelBooking=e.target.closest?.(\"[data-vendor-cancel-booking]\");if(cancelBooking){cancelVendorBookingV398(cancelBooking).catch(err=>setNotice2(err.message||err,!0));return}const addCase=e.target.closest?.(\"[data-vendor-add-display-case]\");if(addCase){addVendorDisplayCaseV404(addCase).catch(err=>setNotice2(err.message||err,!0));return}const compEmail=e.target.closest?.(\"[data-vendor-complimentary-email]\");if(compEmail){editVendorComplimentaryEmailV425(compEmail).catch(err=>setNotice2(err.message||err,!0));return}const substitute=e.target.closest?.(\"[data-vendor-substitute-booking]\");if(substitute){substituteVendorBookingV398(substitute).catch(err=>setNotice2(err.message||err,!0));return}const rec=e.target.closest?.(\"[data-vendor-reconcile-save]\");if(rec){saveVendorReconciliationV398(rec.dataset.vendorReconcileSave,rec).catch(err=>setNotice2(err.message||err,!0));return}const expense=e.target.closest?.(\"[data-vendor-expense-delete]\");if(expense){deleteVendorEventExpenseV398(expense.dataset.vendorExpenseDelete).catch(err=>setNotice2(err.message||err,!0));return}const clubOpen=e.target.closest?.(\"[data-vendor-club-open-v620]\");if(clubOpen){viewVendorCustomerV398(clubOpen.dataset.vendorClubOpenV620);return}const clubPreview=e.target.closest?.(\"[data-vendor-club-preview-vendor-v6201]\");if(clubPreview){openVendorClubPreviewV6201(\"vendor\",clubPreview.dataset.vendorClubPreviewVendorV6201,clubPreview).catch(err=>setNotice2(err.message||err,!0));return}const mobileQr=e.target.closest?.(\"[data-vendor-club-mobile-v675]\");if(mobileQr){openVendorMobileQrV675(mobileQr.dataset.vendorClubMobileV675,mobileQr).catch(err=>setNotice2(err.message||err,!0));return}const clubSuppression=e.target.closest?.(\"[data-vendor-club-suppression-v624]\");if(clubSuppression){setVendorCommunicationSuppressionV624(clubSuppression).catch(err=>setNotice2(err.message||err,!0));return}const transferRewardAudit=e.target.closest?.(\"[data-vendor-transfer-reward-audit-v783]\");if(transferRewardAudit){auditVendorTransferRewardV783(transferRewardAudit).catch(err=>setNotice2(err.message||err,!0));return}const clubAdjust=e.target.closest?.(\"[data-vendor-club-adjust-v620]\");if(clubAdjust){adjustVendorClubPointsV620(clubAdjust).catch(err=>setNotice2(err.message||err,!0));return}const clubCancel=e.target.closest?.(\"[data-vendor-club-cancel-v620]\");if(clubCancel){cancelVendorClubBookingV620(clubCancel).catch(err=>setNotice2(err.message||err,!0));return}const emailPreview=e.target.closest?.(\"[data-vendor-email-preview-v621]\");if(emailPreview){previewVendorClubEmailV621(emailPreview.dataset.vendorEmailPreviewV621,emailPreview).catch(err=>setNotice2(err.message||err,!0));return}const emailTest=e.target.closest?.(\"[data-vendor-email-test-v621]\");if(emailTest){testVendorClubEmailV621(emailTest.dataset.vendorEmailTestV621,emailTest).catch(err=>setNotice2(err.message||err,!0));return}const emailApprove=e.target.closest?.(\"[data-vendor-email-approve-v621]\");if(emailApprove){approveVendorClubEmailV621(emailApprove.dataset.vendorEmailApproveV621,emailApprove.dataset.approved===\"1\",emailApprove).catch(err=>setNotice2(err.message||err,!0));return}const supportOpen=e.target.closest?.(\"[data-vendor-support-open-v621]\");if(supportOpen){openVendorClubSupportV621(supportOpen.dataset.vendorSupportOpenV621).catch(err=>setNotice2(err.message||err,!0));return}const supportReply=e.target.closest?.(\"[data-vendor-support-reply-v621]\");if(supportReply){replyVendorClubSupportV621(supportReply.dataset.vendorSupportReplyV621,!1,supportReply).catch(err=>setNotice2(err.message||err,!0));return}const supportClose=e.target.closest?.(\"[data-vendor-support-close-v621]\");if(supportClose){replyVendorClubSupportV621(supportClose.dataset.vendorSupportCloseV621,!0,supportClose).catch(err=>setNotice2(err.message||err,!0));return}const supportStatus=e.target.closest?.(\"[data-vendor-support-status-v621]\");if(supportStatus){statusVendorClubSupportV621(supportStatus.dataset.vendorSupportStatusV621,supportStatus.dataset.status,supportStatus).catch(err=>setNotice2(err.message||err,!0));return}const docRelease=e.target.closest?.(\"[data-vendor-document-release-v620]\");if(docRelease){releaseVendorEventDocumentV620(docRelease).catch(err=>setNotice2(err.message||err,!0));return}const docOpen=e.target.closest?.(\"[data-vendor-document-open]\");if(docOpen){openVendorEventDocumentV398(docOpen.dataset.vendorDocumentOpen).catch(err=>setNotice2(err.message||err,!0));return}const docDelete=e.target.closest?.(\"[data-vendor-document-delete]\");if(docDelete){deleteVendorEventDocumentV398(docDelete.dataset.vendorDocumentDelete).catch(err=>setNotice2(err.message||err,!0));return}const sortCustomer=e.target.closest?.(\"[data-vendor-customer-sort]\");if(sortCustomer){const key=sortCustomer.dataset.vendorCustomerSort,current=state.vendorCustomerSortV414||{key:\"spend\",dir:\"desc\"};state.vendorCustomerSortV414={key,dir:current.key===key&&current.dir===\"asc\"?\"desc\":\"asc\"},loadVendorWorkspaceV398(null,!1,!1,\"customers\",1).catch(err=>setNotice2(err.message||String(err),!0));return}if(e.target.closest?.(\"[data-vendor-edit-business]\")){editVendorBusinessIdentifierV412().catch(err=>setNotice2(err.message||err,!0));return}const copy=e.target.closest?.(\"[data-vendor-copy]\");if(copy){navigator.clipboard?.writeText(copy.dataset.vendorCopy||\"\").then(()=>setNotice2((copy.dataset.copyLabel||\"Value\")+\" copied.\")).catch(()=>setNotice2(\"Could not copy automatically.\",!0));return}const metaBreakdown=e.target.closest?.(\"[data-vendor-meta-breakdown-v457]\");if(metaBreakdown){openVendorMetaBreakdownV457(metaBreakdown.dataset.vendorMetaBreakdownV457).catch(err=>setNotice2(err.message||err,!0));return}const sendInfo=e.target.closest?.(\"[data-vendor-send-info]\");if(sendInfo){sendSingleVendorInfoV456(sendInfo).catch(err=>setNotice2(err.message||err,!0));return}const resend=e.target.closest?.(\"[data-vendor-resend-details]\");if(resend){resendVendorDetailsV398(resend).catch(err=>setNotice2(err.message||err,!0));return}const editNote=e.target.closest?.(\"[data-vendor-note-edit]\");if(editNote){const text2=prompt(\"Edit Vendor note\",editNote.dataset.noteText||\"\");text2!==null&&text2.trim()&&api(\"/api/admin/vendors/customers/\"+encodeURIComponent(state.currentVendorCustomerKey)+\"/notes/\"+encodeURIComponent(editNote.dataset.vendorNoteEdit),{method:\"PUT\",body:JSON.stringify({text:text2.trim()})}).then(()=>viewVendorCustomerV398(state.currentVendorCustomerKey)).then(()=>setNotice2(\"Vendor note updated.\")).catch(err=>setNotice2(err.message||err,!0));return}const deleteNote=e.target.closest?.(\"[data-vendor-note-delete]\");if(deleteNote){confirm(\"Delete this Vendor note? This removes only the internal note, not the customer or Shopify history.\")&&api(\"/api/admin/vendors/customers/\"+encodeURIComponent(state.currentVendorCustomerKey)+\"/notes/\"+encodeURIComponent(deleteNote.dataset.vendorNoteDelete),{method:\"DELETE\"}).then(()=>viewVendorCustomerV398(state.currentVendorCustomerKey)).then(()=>setNotice2(\"Vendor note deleted.\")).catch(err=>setNotice2(err.message||err,!0));return}e.target?.id===\"saveVendorCustomerNote\"&&saveVendorCustomerNoteV398(e.target).catch(err=>setNotice2(err.message||err,!0))}),document.querySelectorAll(\"[data-vendor-brief-format]\").forEach(btn=>btn.addEventListener(\"click\",e=>{e.preventDefault(),formatVendorBriefingV419(btn.dataset.vendorBriefFormat)})),document.querySelectorAll(\"[data-vendor-rich-command]\").forEach(btn=>btn.addEventListener(\"click\",e=>{e.preventDefault();const id=btn.closest(\"[data-vendor-rich-field]\")?.dataset.vendorRichField;id&&formatVendorRichV421(id,btn.dataset.vendorRichCommand)})),document.querySelectorAll(\"[data-vendor-rich-source]\").forEach(btn=>{ensureVendorRichSourceActionsV423(btn.dataset.vendorRichSource),btn.addEventListener(\"click\",e=>{e.preventDefault(),toggleVendorRichSourceV421(btn.dataset.vendorRichSource)})}),document.addEventListener(\"click\",e=>{const select=e.target.closest?.(\"[data-vendor-rich-select-all]\");select&&(e.preventDefault(),selectAllVendorRichSourceV423(select.dataset.vendorRichSelectAll))}),ensureVendorRichSourceActionsV423(\"vendorEventEmailCustomMessage\"),$2(\"vendorEventBriefSourceToggle\")?.addEventListener(\"click\",e=>{e.preventDefault(),toggleVendorRichSourceV421(\"vendorEventEmailCustomMessage\")}),$2(\"closeVendorEventDetail\")?.addEventListener(\"click\",()=>{clearVendorBriefingBatchPollV487(),$2(\"vendorEventDetailDialog\")?.close(),state.currentVendorEventKey=null,state.vendorBriefingBatchJobV487=null}),$2(\"closeVendorEventToolDialog\")?.addEventListener(\"click\",()=>closeVendorEventToolV562(!0)),$2(\"vendorEventToolDialog\")?.addEventListener(\"close\",()=>{const d=$2(\"vendorEventToolDialog\");d&&d.classList.remove(\"orbit-show-broadcast-dialog-v561\")}),$2(\"vendorEventOpenPlanner\")?.addEventListener(\"click\",()=>{const key=state.currentVendorEvent?.key;key&&($2(\"vendorEventDetailDialog\")?.close(),selectVendorToolEventV399(\"planner\",key).catch(err=>setNotice2(err.message||err,!0)))}),$2(\"vendorEventOpenDocuments\")?.addEventListener(\"click\",()=>{const key=state.currentVendorEvent?.key;key&&($2(\"vendorEventDetailDialog\")?.close(),selectVendorToolEventV399(\"documents\",key).catch(err=>setNotice2(err.message||err,!0)))}),$2(\"vendorEventBookingSearch\")?.addEventListener(\"input\",()=>{state.currentVendorEvent&&renderVendorEventBookingsV398(state.currentVendorEvent)}),$2(\"saveVendorEventSetup\")?.addEventListener(\"click\",e=>saveVendorEventSetupV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"addVendorEventExpense\")?.addEventListener(\"click\",e=>addVendorEventExpenseV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"uploadVendorEventDocument\")?.addEventListener(\"click\",e=>uploadVendorEventDocumentV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"refreshVendorEventFinancials\")?.addEventListener(\"click\",async e=>{const b=e.currentTarget;setLoading(b,!0);try{let warnings=[];try{await api(\"/api/admin/vendors/eventbrite/history-sync\",{method:\"POST\",body:\"{}\",timeoutMs:12e4})}catch(syncError){warnings.push(\"Eventbrite: \"+(syncError.message||syncError))}try{await api(\"/api/admin/meta-ads/live-overlay/refresh\",{method:\"POST\",body:JSON.stringify({skipRematch:!0,days:45}),cacheMs:0,timeoutMs:12e4})}catch(metaError){warnings.push(\"Meta: \"+(metaError.message||metaError))}orbitGetCache.clear(),await loadVendorWorkspaceV398(null,!0,!0,state.currentVendorPane||\"customers\"),setNotice2(warnings.length?\"Finance refreshed with warning \\xB7 \"+warnings.join(\" \\xB7 \"):\"Income and current advertising refreshed from Eventbrite, Orbit ticket records and Meta.\",!!warnings.length)}catch(err){setNotice2(err.message||err,!0)}finally{setLoading(b,!1)}}),$2(\"vendorPlannerEventSelect\")?.addEventListener(\"change\",e=>{e.target.value&&selectVendorToolEventV399(\"planner\",e.target.value).catch(err=>setNotice2(err.message||err,!0))}),$2(\"vendorDocumentsEventSelect\")?.addEventListener(\"change\",e=>{e.target.value&&selectVendorToolEventV399(\"documents\",e.target.value).catch(err=>setNotice2(err.message||err,!0))}),$2(\"vendorBriefingEventSelect\")?.addEventListener(\"change\",e=>{if(e.target.value)selectVendorToolEventV399(\"briefings\",e.target.value).catch(err=>setNotice2(err.message||err,!0));else{setVendorRichEditorV421(\"vendorEventEmailCustomMessage\",\"\",\"\");const status=$2(\"vendorBriefingEditorState\");status&&(status.className=\"orbit-info-banner info\",status.innerHTML=\"<strong>Select an event</strong><span>Choose the show whose briefing note you want to edit.</span>\")}}),$2(\"saveVendorGlobalRules\")?.addEventListener(\"click\",e=>saveVendorGlobalRulesV422(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"openVendorVenueEditor\")?.addEventListener(\"click\",()=>openVendorVenueV398()),$2(\"closeVendorCustomerProfileDialog\")?.addEventListener(\"click\",()=>$2(\"vendorCustomerProfileDialog\")?.close()),document.addEventListener(\"click\",e=>{const b=e.target.closest(\"[data-vendor-customer-delete]\");b&&deleteVendorCustomerV527(b.dataset.vendorCustomerDelete,b).catch(err=>setNotice2(err.message||err,!0))}),$2(\"deleteVendorVenueV527\")?.addEventListener(\"click\",e=>deleteVendorVenueV527(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"saveVendorCustomerProfile\")?.addEventListener(\"click\",e=>saveVendorCustomerProfileV434(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"closeVendorVenueDialog\")?.addEventListener(\"click\",()=>$2(\"vendorVenueDialog\")?.close()),$2(\"saveVendorVenue\")?.addEventListener(\"click\",e=>saveVendorVenueV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"openVendorFloorPlanEditor\")?.addEventListener(\"click\",()=>openVendorFloorPlanEditorV401().catch(err=>setNotice2(err.message||err,!0))),$2(\"closeVendorFloorPlanDialog\")?.addEventListener(\"click\",()=>$2(\"vendorFloorPlanDialog\")?.close()),$2(\"vendorFloorPlanFile\")?.addEventListener(\"change\",e=>vendorFloorPlanFileChangedV401(e.target.files?.[0]).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorFloorPlanAddTable\")?.addEventListener(\"click\",e=>{state.vendorFloorPlanAddMode=!state.vendorFloorPlanAddMode,e.currentTarget.classList.toggle(\"active\",state.vendorFloorPlanAddMode),setNotice2(state.vendorFloorPlanAddMode?\"Click the floor plan where the missing table should be placed.\":\"Add-table mode cancelled.\")}),$2(\"vendorFloorPlanTrimV694\")?.addEventListener(\"click\",e=>trimVendorFloorPlanWhitespaceV694(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorFloorPlanUndoTrimV694\")?.addEventListener(\"click\",()=>undoVendorFloorPlanTrimV694().catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorFloorPlanZoomOut\")?.addEventListener(\"click\",()=>setVendorFloorPlanEditorZoomV412(vendorFloorPlanEditorZoomV412()-.25)),$2(\"vendorFloorPlanZoomIn\")?.addEventListener(\"click\",()=>setVendorFloorPlanEditorZoomV412(vendorFloorPlanEditorZoomV412()+.25)),$2(\"vendorFloorPlanZoomReset\")?.addEventListener(\"click\",()=>setVendorFloorPlanEditorZoomV412(1)),[[\"vendorFloorTableX\",\"x\"],[\"vendorFloorTableY\",\"y\"],[\"vendorFloorTableWidth\",\"widthPct\"],[\"vendorFloorTableHeight\",\"heightPct\"],[\"vendorFloorTableAngle\",\"angleDeg\"]].forEach(([id,field])=>$2(id)?.addEventListener(\"change\",e=>updateSelectedVendorFloorTableV411(field,e.target.value)));function rotateSelectedVendorFloorTableV413(delta){const t=selectedVendorFloorTableV411(),canvas=$2(\"vendorFloorPlanPreview\");if(!t||!canvas)return;t.angleDeg=(Number(t.angleDeg||0)+Number(delta||0)+540)%360-180,t.manualGeometry=!0,t.geometryVersion=413;const el=canvas.querySelector(\"[data-floor-table-id='\"+CSS.escape(t.id)+\"']\");el&&applyVendorTableGeometryV404(el,t,floorPlanDraftV401()),syncVendorFloorTableInspectorV411()}if($2(\"vendorFloorTableRotate90\")?.addEventListener(\"click\",()=>rotateSelectedVendorFloorTableV413(90)),$2(\"vendorFloorTableRotateMinus90\")?.addEventListener(\"click\",()=>rotateSelectedVendorFloorTableV413(-90)),$2(\"vendorFloorPlanLockTableSize\")?.addEventListener(\"click\",saveVendorFloorPlanTableTemplateV413),$2(\"vendorFloorTableDelete\")?.addEventListener(\"click\",()=>{const d=floorPlanDraftV401(),t=selectedVendorFloorTableV411();t&&(d.tables=d.tables.filter(x=>x.id!==t.id),state.vendorFloorPlanSelectedTableId=null,renderVendorFloorPlanPreviewV401(),updateVendorFloorPlanDetectionV401())}),$2(\"vendorFloorPlanPreview\")?.addEventListener(\"keydown\",e=>{if(!selectedVendorFloorTableV411()||![\"ArrowLeft\",\"ArrowRight\",\"ArrowUp\",\"ArrowDown\"].includes(e.key))return;e.preventDefault();const s=e.shiftKey?5:1;nudgeSelectedVendorFloorTableV411(e.key===\"ArrowLeft\"?-s:e.key===\"ArrowRight\"?s:0,e.key===\"ArrowUp\"?-s:e.key===\"ArrowDown\"?s:0)}),$2(\"saveVendorFloorPlan\")?.addEventListener(\"click\",e=>saveVendorFloorPlanV401(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"addVendorPlannerRoom\")?.addEventListener(\"click\",()=>addVendorPlannerRoomV401().catch(err=>setNotice2(err.message||err,!0))),$2(\"saveVendorTablePlan\")?.addEventListener(\"click\",e=>saveVendorTablePlanV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorPlannerStatus\")?.addEventListener(\"change\",()=>updateVendorTablePlanStatusV467().catch(err=>setNotice2(err.message||err,!0))),$2(\"printVendorShowPackage\")?.addEventListener(\"click\",()=>printVendorShowPackageV398().catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorPlannerZoomIn\")?.addEventListener(\"click\",()=>{state.vendorPlannerZoom=Math.min(2,Number(state.vendorPlannerZoom||1)+.1),$2(\"vendorPlannerZoomLabel\")&&($2(\"vendorPlannerZoomLabel\").textContent=Math.round(state.vendorPlannerZoom*100)+\"%\"),renderVendorTablePlanV398()}),$2(\"vendorPlannerZoomOut\")?.addEventListener(\"click\",()=>{state.vendorPlannerZoom=Math.max(.5,Number(state.vendorPlannerZoom||1)-.1),$2(\"vendorPlannerZoomLabel\")&&($2(\"vendorPlannerZoomLabel\").textContent=Math.round(state.vendorPlannerZoom*100)+\"%\"),renderVendorTablePlanV398()}),$2(\"vendorPlannerFitMap\")?.addEventListener(\"click\",()=>{state.vendorPlannerZoom=1,$2(\"vendorPlannerZoomLabel\")&&($2(\"vendorPlannerZoomLabel\").textContent=\"100%\"),renderVendorTablePlanV398()}),$2(\"previewVendorEventDetails\")?.addEventListener(\"click\",e=>previewVendorEventDetailsV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorBookingChangesStateV542\")?.addEventListener(\"change\",()=>loadVendorBookingChangesV487().catch(err=>setNotice2(err.message,!0))),$2(\"vendorBookingChangesTableV487\")?.addEventListener(\"click\",async event=>{const button2=event.target.closest(\"[data-vendor-resolution-v542]\");if(!button2)return;const row=vendorBookingChangesRowsV488.find(r=>String(r.id)===button2.dataset.vendorResolutionV542);if(row&&confirm(row.resolved?\"Return this booking change to Outstanding?\":\"Mark this booking change as resolved? This only clears the task. It does not issue a refund, change credit or alter a booking.\")){setLoading(button2,!0);try{await api(\"/api/admin/vendors/booking-changes/\"+encodeURIComponent(row.id)+\"/resolution\",{method:\"POST\",body:JSON.stringify({resolved:!row.resolved}),cacheMs:0}),await loadVendorBookingChangesV487(),setNotice2(row.resolved?\"Booking change reopened.\":\"Booking change resolved. Find it under Resolved or All changes.\")}catch(error){setNotice2(error.message,!0)}finally{setLoading(button2,!1)}}}),$2(\"vendorBookingChangesSearchV487\")?.addEventListener(\"input\",scheduleVendorBookingChangesSearchV487),$2(\"refreshVendorCancellationAuditV770\")?.addEventListener(\"click\",e=>loadVendorCancellationAuditV770(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"refreshVendorBookingChangesV487\")?.addEventListener(\"click\",e=>loadVendorBookingChangesV487(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorBookingChangesTableV487\")?.addEventListener(\"click\",e=>{const button2=e.target.closest(\"[data-vendor-booking-change-edit-v488]\");button2&&openVendorBookingChangeEditV488(button2.dataset.vendorBookingChangeEditV488)}),$2(\"vendorBookingChangeSaveV488\")?.addEventListener(\"click\",e=>saveVendorBookingChangeEditV488(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorBookingChangeCreateCreditV492\")?.addEventListener(\"click\",e=>createVendorAccountCreditV492(e.currentTarget).catch(err=>vendorBookingChangeResultV492(err.message||err,!0))),$2(\"vendorBookingChangeUseCreditV492\")?.addEventListener(\"click\",e=>useVendorAccountCreditV492(e.currentTarget).catch(err=>vendorBookingChangeResultV492(err.message||err,!0))),$2(\"vendorBookingChangeDeductCreditV493\")?.addEventListener(\"click\",e=>adjustVendorAccountCreditV493(e.currentTarget,{clear:!1}).catch(err=>vendorBookingChangeResultV492(err.message||err,!0))),$2(\"vendorBookingChangeClearCreditV493\")?.addEventListener(\"click\",e=>adjustVendorAccountCreditV493(e.currentTarget,{clear:!0}).catch(err=>vendorBookingChangeResultV492(err.message||err,!0))),$2(\"vendorBookingChangeConvertTransferV492\")?.addEventListener(\"click\",e=>convertVendorCancellationToTransferV492(e.currentTarget).catch(err=>vendorBookingChangeResultV492(err.message||err,!0))),$2(\"vendorBookingChangeEditCloseV488\")?.addEventListener(\"click\",()=>$2(\"vendorBookingChangeEditDialogV488\")?.close()),$2(\"vendorBookingChangeCancelV488\")?.addEventListener(\"click\",()=>$2(\"vendorBookingChangeEditDialogV488\")?.close()),$2(\"vendorEmailEditHtml\")?.addEventListener(\"click\",editVendorEmailHtmlV420),$2(\"vendorEmailSaveHtml\")?.addEventListener(\"click\",e=>saveVendorEmailHtmlV420(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorEmailCancelHtml\")?.addEventListener(\"click\",()=>setVendorEmailHtmlEditV420(!1)),$2(\"saveVendorEventEmailCustom\")?.addEventListener(\"click\",e=>saveVendorEventEmailCustomV414(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"sendVendorEventDetails\")?.addEventListener(\"click\",e=>sendVendorEventDetailsV398(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"sendVendorEventTestEmail\")?.addEventListener(\"click\",e=>sendVendorEventTestEmailV415(e.currentTarget).catch(err=>setNotice2(err.message||err,!0))),$2(\"vendorEventTestEmail\"))try{$2(\"vendorEventTestEmail\").value=localStorage.getItem(\"orbitVendorTestEmail\")||\"\"}catch{}$2(\"vendorEventVenueTag\")?.addEventListener(\"change\",async e=>{const event=state.currentVendorEvent;if(!event)return;const venueId=e.target.value||null;try{await api(\"/api/admin/vendors/events/config\",{method:\"POST\",body:JSON.stringify({eventKey:event.key,venueId})}),event.venueId=venueId,event.venue=(state.vendorVenues||[]).find(v=>v.id===venueId)||null,$2(\"vendorEventDetailSubtitle\")&&($2(\"vendorEventDetailSubtitle\").textContent=[vendorDateV385(event.eventDate),event.venue?.name].filter(Boolean).join(\" \\xB7 \")),setNotice2(venueId?\"Event venue linked.\":\"Event venue link cleared.\")}catch(err){setNotice2(err.message||err,!0),renderVendorEventDetailV398(event)}}),$2(\"vendorEventVenue\")?.addEventListener(\"change\",e=>{const v=(state.vendorVenues||[]).find(x=>x.id===e.target.value);v&&($2(\"vendorEventSetupTime\").value||($2(\"vendorEventSetupTime\").value=v.defaultSetupTime||\"\"),$2(\"vendorEventInstructions\").value||($2(\"vendorEventInstructions\").value=v.vendorInstructions||\"\"),$2(\"vendorEventParking\").value||($2(\"vendorEventParking\").value=v.parkingNotes||\"\"),$2(\"vendorEventRules\").value||($2(\"vendorEventRules\").value=v.rules||\"\"))}),$2(\"orbitGlobalDeploymentAlert\")?.addEventListener(\"click\",()=>{activateModule(\"development\"),setDevelopmentTab(\"deploy\")}),window.setInterval(()=>refreshGlobalDeploymentAlertV418(),6e4),setTimeout(()=>refreshGlobalDeploymentAlertV418(),1500),$2(\"metaBridgeLoadButton\")?.addEventListener(\"click\",()=>loadMetaBridgeV4484().catch(()=>{})),$2(\"metaBridgeCopyButton\")?.addEventListener(\"click\",()=>copyMetaBridgeV4484());function prizeMonthLabelV538(month){return/^\\d{4}-(0[1-9]|1[0-2])$/.test(month||\"\")?new Date(month+\"-01T00:00:00Z\").toLocaleDateString(\"en-GB\",{month:\"long\",year:\"numeric\",timeZone:\"UTC\"}):\"\"}function prizePublishDateV538(month){if(!prizeMonthLabelV538(month))return null;const[year,m]=month.split(\"-\").map(Number);return new Date(Date.UTC(year,m-2,20))}function updatePrizePublishPreviewV538(id,previewId){const month=$2(id)?.value||\"\",date=prizePublishDateV538(month),preview=$2(previewId);preview&&(preview.textContent=date?prizeMonthLabelV538(month)+\" goes live on \"+date.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"long\",year:\"numeric\",timeZone:\"UTC\"})+\" at 00:00 UTC.\":\"Choose a month to see when this prize goes live.\")}function initialisePrizeMonthsV538(){const today=new Date,months=[];for(let offset=-1;offset<=36;offset++){const d=new Date(Date.UTC(today.getUTCFullYear(),today.getUTCMonth()+offset,1));months.push(d.toISOString().slice(0,7))}for(const[id,preview]of[[\"goldenScheduleTargetMonth\",\"goldenSchedulePublishPreviewV538\"],[\"monthlyDrawScheduleTargetMonth\",\"monthlyDrawSchedulePublishPreviewV538\"]]){const select=$2(id);if(!select)continue;const current=select.value;current&&!months.includes(current)&&months.push(current),select.innerHTML='<option value=\"\">Choose a month</option>'+[...new Set(months)].sort().map(month=>'<option value=\"'+month+'\">'+esc(prizeMonthLabelV538(month))+\"</option>\").join(\"\"),select.value=current,select.dataset.orbitMonthBound||(select.addEventListener(\"change\",()=>updatePrizePublishPreviewV538(id,preview)),select.dataset.orbitMonthBound=\"1\"),updatePrizePublishPreviewV538(id,preview)}}function requirePrizeMonthV538(id){const month=$2(id)?.value||\"\";if(!prizeMonthLabelV538(month))throw new Error(\"Choose the prize month from the dropdown before saving.\");return month}let prizeSchedulesV539={golden:[],draw:[]},prizeOverviewV539=null;const prizeFieldIdsV539={golden:{prefix:\"goldenSchedule\",month:\"goldenScheduleTargetMonth\",extra:\"goldenScheduleValue\",extraKey:\"value\",status:\"goldenScheduleEditStatusV539\",cancel:\"cancelGoldenScheduleEditV539\",save:\"saveGoldenTicketScheduleButton\",result:\"goldenTicketScheduleResult\"},draw:{prefix:\"monthlyDrawSchedule\",month:\"monthlyDrawScheduleTargetMonth\",extra:\"monthlyDrawScheduleDate\",extraKey:\"drawDate\",status:\"drawScheduleEditStatusV539\",cancel:\"cancelDrawScheduleEditV539\",save:\"saveMonthlyDrawScheduleButton\",result:\"monthlyDrawScheduleResult\"}};function prizeDateLabelV539(value){const d=new Date(value);return Number.isNaN(d.getTime())?\"Not scheduled\":d.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"long\",year:\"numeric\",timeZone:\"UTC\"})+\" at 00:00 UTC\"}function prizeScheduleCardsV536(rows=[],kind=\"golden\"){return rows.length?rows.map(row=>`<div class=\"orbit-list-card orbit-prize-schedule-row-v539\"><strong>${esc(prizeMonthLabelV538(row.targetMonth)||row.targetMonth||\"\")}</strong><span>Publishes ${esc(prizeDateLabelV539(row.revealAt))}</span><p>${esc(row.title||\"Uses Monthly Content fallback\")}${kind===\"golden\"&&row.value?` \\xB7 ${esc(row.value)}`:\"\"}${kind===\"draw\"&&row.drawDate?` \\xB7 draw ${esc(row.drawDate)}`:\"\"}</p><div class=\"orbit-action-row\"><button type=\"button\" class=\"secondary\" data-prize-edit-v539=\"${kind}\" data-prize-month=\"${esc(row.targetMonth)}\">Edit</button><button type=\"button\" class=\"secondary\" data-prize-preview-v539=\"${kind}\" data-prize-month=\"${esc(row.targetMonth)}\">Preview</button></div></div>`).join(\"\"):`<p>No ${kind===\"golden\"?\"Golden Ticket prizes\":\"monthly draws\"} scheduled yet.</p>`}async function loadGoldenTicketScheduleV536(){const list=$2(\"goldenTicketScheduleList\");try{const result=await api(\"/api/admin/golden-ticket-schedule\",{cacheMs:0});return prizeSchedulesV539.golden=Array.isArray(result.schedule)?result.schedule:[],list&&(list.innerHTML=prizeScheduleCardsV536(prizeSchedulesV539.golden,\"golden\")),result}catch(error){throw list&&(list.textContent=\"Golden Ticket schedules could not load. Use Refresh Schedules to retry.\"),error}}async function loadMonthlyDrawScheduleV536(){const list=$2(\"monthlyDrawScheduleList\");try{const result=await api(\"/api/admin/monthly-draw-schedule\",{cacheMs:0});return prizeSchedulesV539.draw=Array.isArray(result.schedule)?result.schedule:[],list&&(list.innerHTML=prizeScheduleCardsV536(prizeSchedulesV539.draw,\"draw\")),result}catch(error){throw list&&(list.textContent=\"Monthly Draw schedules could not load. Use Refresh Schedules to retry.\"),error}}function prizeOverviewImageV542(card,label){const f=card.imageFrame||{x:50,y:50,zoom:1};return'<div class=\"orbit-prize-mini-frame-v542\" style=\"--prize-x:'+Number(f.x)+\"%;--prize-y:\"+Number(f.y)+\"%;--prize-zoom:\"+Number(f.zoom)+'\"><img src=\"'+esc(card.imageUrl)+'\" alt=\"'+esc(card.title||label)+'\" loading=\"lazy\"></div>'}let prizeFrameEditV542=null;function updatePrizeFrameEditorV542(){if(!prizeFrameEditV542)return;const frame={x:Number($2(\"prizeFrameXv542\").value),y:Number($2(\"prizeFrameYv542\").value),zoom:Number($2(\"prizeFrameZoomV542\").value)};prizeFrameEditV542.frame=frame;const viewport=$2(\"prizeFrameViewportV542\");viewport.style.setProperty(\"--prize-x\",frame.x+\"%\"),viewport.style.setProperty(\"--prize-y\",frame.y+\"%\"),viewport.style.setProperty(\"--prize-zoom\",frame.zoom),text(\"prizeFrameValuesV542\",\"Horizontal \"+Math.round(frame.x)+\"% \\xB7 Vertical \"+Math.round(frame.y)+\"% \\xB7 Zoom \"+frame.zoom.toFixed(2)+\"\\xD7\")}function openPrizeFrameV542(key){const card=prizeOverviewV539?.[key];if(!card?.imageFrameKey)return;prizeFrameEditV542={key,card:JSON.parse(JSON.stringify(card)),frame:{...card.imageFrame}};const dialog=$2(\"prizeFrameDialogV542\"),image=$2(\"prizeFrameImageV542\");text(\"prizeFrameTitleV542\",\"Frame image: \"+(card.title||\"Prize\")),text(\"prizeFrameResultV542\",\"\"),$2(\"prizeFrameXv542\").value=card.imageFrame.x,$2(\"prizeFrameYv542\").value=card.imageFrame.y,$2(\"prizeFrameZoomV542\").value=card.imageFrame.zoom,image.src=card.imageUrl,image.alt=card.title||\"Prize\",updatePrizeFrameEditorV542(),dialog.open||dialog.showModal()}async function savePrizeFrameV542(button2){const edit=prizeFrameEditV542;if(edit){setLoading(button2,!0),text(\"prizeFrameResultV542\",\"Saving\\u2026\");try{const saved=await api(\"/api/admin/prize-image-frame\",{method:\"POST\",body:JSON.stringify({key:edit.card.imageFrameKey,revision:edit.card.imageFrame.revision,...edit.frame}),cacheMs:0});edit.card.imageFrame=saved.imageFrame,await loadPrizeSchedulesV536(),$2(\"prizeFrameDialogV542\").close(),setNotice2(\"Prize image frame saved. The original image and schedule are unchanged.\")}catch(error){text(\"prizeFrameResultV542\",error.message)}finally{setLoading(button2,!1)}}}document.addEventListener(\"click\",event=>{const button2=event.target.closest(\"[data-prize-frame-v542]\");button2&&openPrizeFrameV542(button2.dataset.prizeFrameV542)}),[\"prizeFrameXv542\",\"prizeFrameYv542\",\"prizeFrameZoomV542\"].forEach(id=>$2(id)?.addEventListener(\"input\",updatePrizeFrameEditorV542)),$2(\"prizeFrameSaveV542\")?.addEventListener(\"click\",event=>savePrizeFrameV542(event.currentTarget)),$2(\"prizeFrameCancelV542\")?.addEventListener(\"click\",()=>{$2(\"prizeFrameDialogV542\").close(),prizeFrameEditV542=null}),$2(\"prizeFrameResetV542\")?.addEventListener(\"click\",()=>{$2(\"prizeFrameXv542\").value=50,$2(\"prizeFrameYv542\").value=50,$2(\"prizeFrameZoomV542\").value=1,updatePrizeFrameEditorV542()}),$2(\"prizeFramePreviewV542\")?.addEventListener(\"click\",()=>{const edit=prizeFrameEditV542;edit&&openPrizePreviewV539(edit.key.includes(\"Golden\")?\"golden\":[\"nextDraw\",\"followingDraw\"].includes(edit.key)?\"next\":\"draw\",{...edit.card,imageFrame:edit.frame},\"Unsaved image frame. Close this preview and save only when you are happy.\")});const prizeDragViewportV542=$2(\"prizeFrameViewportV542\");let prizeDragV542=null;prizeDragViewportV542?.addEventListener(\"pointerdown\",event=>{event.button!==0||!prizeFrameEditV542||(prizeDragV542={x:event.clientX,y:event.clientY,fx:prizeFrameEditV542.frame.x,fy:prizeFrameEditV542.frame.y},prizeDragViewportV542.setPointerCapture(event.pointerId),event.preventDefault())}),prizeDragViewportV542?.addEventListener(\"pointermove\",event=>{if(!prizeDragV542)return;const box=prizeDragViewportV542.getBoundingClientRect();$2(\"prizeFrameXv542\").value=Math.max(0,Math.min(100,prizeDragV542.fx-(event.clientX-prizeDragV542.x)*100/box.width)),$2(\"prizeFrameYv542\").value=Math.max(0,Math.min(100,prizeDragV542.fy-(event.clientY-prizeDragV542.y)*100/box.height)),updatePrizeFrameEditorV542()}),[\"pointerup\",\"pointercancel\",\"lostpointercapture\"].forEach(type=>prizeDragViewportV542?.addEventListener(type,()=>{prizeDragV542=null}));function prizeOverviewCardV539(key,label,card){const month=card?.targetMonth,source=month?\"Scheduled for \"+prizeMonthLabelV538(month):\"Saved prize content\",publish=month?prizeDateLabelV539(prizePublishDateV538(month)):\"\",image=card?.imageUrl?prizeOverviewImageV542(card,label):'<div class=\"orbit-prize-empty-v539\">No image set</div>';return'<article class=\"orbit-prize-overview-card-v539\"><small>'+esc(label)+\"</small>\"+(card?image+\"<strong>\"+esc(card.title||label)+\"</strong><span>\"+esc(source)+\"</span>\"+(publish?'<span class=\"orbit-prize-publish-date-v543\">Appears in Members Area: '+esc(publish)+\"</span>\":\"\")+(card.value?\"<span>\"+esc(card.value)+\"</span>\":\"\")+'<button type=\"button\" class=\"secondary\" data-prize-overview-preview-v539=\"'+key+'\">Preview member card</button>'+(card.imageFrameKey?'<button type=\"button\" class=\"secondary\" data-prize-frame-v542=\"'+key+'\">Frame image</button>':\"\"):'<div class=\"orbit-prize-empty-v539\">No prize scheduled for this slot</div>')+\"</article>\"}async function loadPrizeOverviewV539(){const target=$2(\"prizeScheduleOverviewV539\"),monthly=$2(\"monthlyPrizeOverviewV540\");try{const data=await api(\"/api/admin/prize-schedule-overview\",{cacheMs:0});if(!data.overview)throw new Error(\"Prize overview was not returned.\");return prizeOverviewV539=data.overview,target&&(target.innerHTML=[[\"currentGolden\",\"Current Golden Ticket\"],[\"nextGolden\",\"Next Golden Ticket (Admin only)\"]].map(([key,label])=>prizeOverviewCardV539(key,label,prizeOverviewV539[key])).join(\"\")),monthly&&(monthly.innerHTML=[[\"currentDraw\",\"This member month\"],[\"nextDraw\",\"Coming next month\"],[\"followingDraw\",\"Following month (Admin only)\"]].map(([key,label])=>prizeOverviewCardV539(key,label,prizeOverviewV539[key])).join(\"\")),data}catch(error){prizeOverviewV539=null;for(const el of[target,monthly])el&&(el.textContent=\"Current/next/following prizes could not load. Use Refresh Schedules to retry; no schedules have been changed.\");throw error}}async function loadPrizeSchedulesV536(){return initialisePrizeMonthsV538(),Promise.all([loadGoldenTicketScheduleV536(),loadMonthlyDrawScheduleV536(),loadPrizeOverviewV539()])}function cancelPrizeEditV539(kind){const fields=prizeFieldIdsV539[kind];if(!fields)return;const month=$2(fields.month);month&&(month.disabled=!1,month.value=\"\");for(const id of[fields.prefix+\"Title\",fields.prefix+\"Description\",fields.prefix+\"ImageUrl\",fields.extra])$2(id)&&($2(id).value=\"\");text(fields.status,\"\"),$2(fields.cancel)&&($2(fields.cancel).hidden=!0),text(fields.save,kind===\"golden\"?\"Save Golden Ticket\":\"Save Monthly Draw\"),initialisePrizeMonthsV538()}function editPrizeScheduleV539(kind,month){const fields=prizeFieldIdsV539[kind],row=prizeSchedulesV539[kind]?.find(r=>r.targetMonth===month);if(!fields||!row)return;const select=$2(fields.month);[...select.options].some(o=>o.value===month)||select.add(new Option(prizeMonthLabelV538(month),month)),select.value=month,select.disabled=!0,$2(fields.prefix+\"Title\").value=row.title||\"\",$2(fields.prefix+\"Description\").value=row.description||\"\",$2(fields.prefix+\"ImageUrl\").value=row.imageUrl||\"\",$2(fields.extra).value=row[fields.extraKey]||\"\",text(fields.status,\"Editing \"+prizeMonthLabelV538(month)+\". Saving replaces this month's content, not a second schedule.\"),$2(fields.cancel).hidden=!1,text(fields.save,\"Save changes\"),initialisePrizeMonthsV538(),$2(fields.status).scrollIntoView({block:\"center\",behavior:\"smooth\"}),$2(fields.prefix+\"Title\").focus({preventScroll:!0})}async function savePrizeScheduleV539(kind){const fields=prizeFieldIdsV539[kind],result=$2(fields.result),button2=$2(fields.save);if(!button2?.disabled){result&&(result.hidden=!1,result.textContent=\"Saving\\u2026\"),setLoading(button2,!0);try{const payload={targetMonth:requirePrizeMonthV538(fields.month),title:$2(fields.prefix+\"Title\")?.value,description:$2(fields.prefix+\"Description\")?.value,imageUrl:$2(fields.prefix+\"ImageUrl\")?.value,[fields.extraKey]:$2(fields.extra)?.value};await api(\"/api/admin/\"+(kind===\"golden\"?\"golden-ticket-schedule\":\"monthly-draw-schedule\"),{method:\"POST\",body:JSON.stringify(payload)}),result&&(result.textContent=\"Schedule saved. Loading the saved record and current/next/following member previews\\u2026\");try{await loadPrizeSchedulesV536(),result&&(result.textContent=\"Schedule saved and reloaded. Publishes \"+prizeDateLabelV539(prizePublishDateV538(payload.targetMonth))+\".\")}catch{result&&(result.textContent=\"Schedule was saved, but the preview could not refresh. Use Refresh Schedules; do not create a second month.\")}}catch(error){result&&(result.textContent=error.message||\"Could not save schedule. Your form has been kept.\")}finally{setLoading(button2,!1)}}}async function saveGoldenTicketScheduleV536(){return savePrizeScheduleV539(\"golden\")}async function saveMonthlyDrawScheduleV536(){return savePrizeScheduleV539(\"draw\")}$2(\"cancelGoldenScheduleEditV539\")?.addEventListener(\"click\",()=>cancelPrizeEditV539(\"golden\")),$2(\"cancelDrawScheduleEditV539\")?.addEventListener(\"click\",()=>cancelPrizeEditV539(\"draw\")),$2(\"closePrizePreviewV539\")?.addEventListener(\"click\",()=>$2(\"prizePreviewDialogV539\")?.close()),document.addEventListener(\"click\",event=>{if(!event.target.closest(\".orbit-prize-local-v540\"))return;const edit=event.target.closest(\"[data-prize-edit-v539]\"),preview=event.target.closest(\"[data-prize-preview-v539]\"),overview=event.target.closest(\"[data-prize-overview-preview-v539]\");if(edit&&editPrizeScheduleV539(edit.dataset.prizeEditV539,edit.dataset.prizeMonth),preview){const kind=preview.dataset.prizePreviewV539,row=prizeOverviewV539?.previews?.[kind]?.find(r=>r.targetMonth===preview.dataset.prizeMonth);row?openPrizePreviewV539(kind,row.preview,\"Saved \"+prizeMonthLabelV538(row.targetMonth)+\" schedule. Future Golden Tickets are previewed as unclaimed.\"):setNotice2(\"Refresh Schedules before previewing this saved record.\",!0)}if(overview){const key=overview.dataset.prizeOverviewPreviewV539,card=prizeOverviewV539?.[key];card&&openPrizePreviewV539(key.includes(\"Golden\")?\"golden\":[\"nextDraw\",\"followingDraw\"].includes(key)?\"next\":\"draw\",card,key===\"nextGolden\"?\"Next scheduled Golden Ticket. This future image is visible here to Admin only.\":key===\"followingDraw\"?\"Following-month draw. Admin-only preview of the exact card that will roll forward into Coming Next Month when its reveal date arrives.\":\"Resolved Members Area content. Active member view, without scan state.\")}});function memberPrizeMarkupV539(kind,card){const escapeHtml=esc;function imageBlockV50(url,alt,frame){if(!url)return\"<div class='orbit-v50-prize-placeholder'>Orbit</div>\";const image=\"<img src='\"+escapeHtml(url)+\"' alt='\"+escapeHtml(alt||\"Orbit prize\")+\"' loading='lazy'>\";return!frame||![frame.x,frame.y,frame.zoom].every(v=>typeof v==\"number\"&&Number.isFinite(v))||frame.x<0||frame.x>100||frame.y<0||frame.y>100||frame.zoom<1||frame.zoom>3?image:\"<div class='orbit-prize-image-frame-v542' style='--prize-x:\"+frame.x+\"%;--prize-y:\"+frame.y+\"%;--prize-zoom:\"+frame.zoom+\"'>\"+image+\"</div>\"}function formatDate(value){if(!value)return\"Not available yet\";const date=new Date(value);return Number.isNaN(date.getTime())?value:date.toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"long\",year:\"numeric\"})}function getDrawDisplayV6810(content2,active){const now=new Date,configured=String(content2.currentDrawDate||\"\").trim(),formatted=new Date(now.getFullYear(),now.getMonth()+(now.getDate()>15?1:0),15).toLocaleDateString(\"en-GB\",{day:\"numeric\",month:\"long\",year:\"numeric\"});if(!active)return{badge:\"ENTRY UNLOCKS WHEN ACTIVE\",line:\"Your first draw begins after membership activation.\"};const timeLabel=String(content2.currentDrawTimeLabel||content2.drawTimeLabel||\"14:00\").trim();return configured&&!/15th of/i.test(configured)?{badge:\"\\u2713 YOU ARE ENTERED\",line:\"Next draw: \"+configured+(timeLabel?\" at \"+timeLabel:\"\")}:{badge:\"\\u2713 YOU ARE ENTERED\",line:\"Next draw: \"+formatted+(timeLabel?\" at \"+timeLabel:\"\")}}const content={goldenTicketImageFrame:card.imageFrame,currentDrawImageFrame:card.imageFrame,nextMonthImageFrame:card.imageFrame,goldenTicketImageUrl:card.imageUrl,currentDrawImageUrl:card.imageUrl,nextMonthImageUrl:card.imageUrl,currentDrawDate:card.drawDate,currentDrawTimeLabel:card.drawTimeLabel||card.draw_time_label||\"14:00\",nextMonthDescription:card.description},goldenTitle=card.title||\"Golden Ticket prize\",goldenValue=card.value||\"Value announced soon\",goldenDescription=card.description||\"Find a Golden Ticket in your box and claim it inside Members Home.\",goldenClaimed=card.claimed||null,goldenNextAnnouncement=card.nextAnnouncement||null,scannedGoldenToken=\"\",currentDrawTitle=card.title||\"This month\\u2019s member draw\",currentDrawDescription=card.description||\"Active members are automatically entered.\",drawDisplay=getDrawDisplayV6810(content,!0),drawMessage=drawDisplay.badge,nextMonthTitle=card.title||\"Coming next month\";return kind===\"golden\"?\"<article class='orbit-v50-card orbit-v50-golden-card orbit-v689-card-golden'><span>Golden Ticket</span>\"+imageBlockV50(content.goldenTicketImageUrl,goldenTitle,content.goldenTicketImageFrame)+\"<h2>\"+escapeHtml(goldenTitle)+\"</h2><strong class='orbit-v50-value'>\"+escapeHtml(goldenValue)+\"</strong><p>\"+escapeHtml(goldenDescription)+\"</p>\"+(goldenClaimed?.claimed?\"<div class='orbit-v50-result orbit-v50-result-success'><strong>CLAIMED</strong><p>This Golden Ticket has been claimed by member \"+escapeHtml(goldenClaimed.memberNumber||\"number unavailable\")+\".</p>\"+(goldenNextAnnouncement?.revealAt?\"<p>The next Golden Ticket prize will be announced on \"+escapeHtml(formatDate(goldenNextAnnouncement.revealAt))+\".</p>\":\"\")+\"</div>\":scannedGoldenToken?\"<div id='orbitGoldenAutoClaimV726' class='orbit-v50-result orbit-v50-result-success'><strong>YOU FOUND IT!</strong><p>Verifying and claiming your Golden Ticket\\u2026</p></div><div id='orbitGoldenConfettiV726' class='orbit-golden-confetti-v726' aria-hidden='true'></div>\":\"<form id='orbitGoldenTicketFormV50'><input id='orbitGoldenTicketCodeV50' placeholder='Enter Golden Ticket code'><button class='orbit-v50-button' type='submit'>Claim Golden Ticket</button></form><div id='orbitGoldenTicketResultV50' class='orbit-v50-result'></div>\")+\"<div id='orbitGoldenPersistentStatusV726'></div></article>\":kind===\"draw\"?\"<article class='orbit-v50-card orbit-v50-prize-card orbit-v689-card-draw'><div class='orbit-v68-entered-badge'>\"+escapeHtml(drawMessage)+\"</div><span>This Month\\u2019s Member Draw</span>\"+imageBlockV50(content.currentDrawImageUrl,currentDrawTitle,content.currentDrawImageFrame)+\"<h2>\"+escapeHtml(currentDrawTitle)+\"</h2><p>\"+escapeHtml(currentDrawDescription)+\"</p><small class='orbit-v6810-draw-date'>\"+escapeHtml(drawDisplay.line)+\"</small><div class='orbit-v574-fairness-card'><strong>Provably fair draw</strong><p>Orbit cannot secretly pick the winner. Eligible entries are locked first, then an independent public random number published later selects the winning position automatically.</p><button class='orbit-v50-button secondary' type='button' data-orbit-draw-proof-v574>Verify this draw</button><div id='orbitDrawProofResultV574' class='orbit-v574-draw-proof-result' hidden></div></div></article>\":\"<article class='orbit-v50-card orbit-v687-next-card orbit-v689-card-next'><span>Coming Next Month</span>\"+imageBlockV50(content.nextMonthImageUrl,nextMonthTitle,content.nextMonthImageFrame)+\"<h3>\"+escapeHtml(nextMonthTitle)+\"</h3><p>\"+escapeHtml(content.nextMonthDescription||\"Your next active month unlocks entry.\")+\"</p><div class='orbit-v687-mini-facts orbit-v215-draw-assurance'><span>\\u2713 You will be automatically entered into this draw while your membership remains active.</span></div></article>\"}let memberPreviewCssV539=null;async function memberPreviewStylesV542(){if(!memberPreviewCssV539){const controller=new AbortController,timer=setTimeout(()=>controller.abort(),1e4);memberPreviewCssV539=fetch($2(\"prizePreviewFrameV539\")?.dataset.memberCss||\"\",{credentials:\"omit\",signal:controller.signal}).then(async response=>{if(!response.ok)throw new Error(\"Member stylesheet is unavailable.\");const css=await response.text();if(!css.includes(\".orbit-v50-card\"))throw new Error(\"Member stylesheet response is invalid.\");return css}).catch(error=>{throw memberPreviewCssV539=null,error}).finally(()=>clearTimeout(timer))}return memberPreviewCssV539}function prizePreviewDocumentV542(kind,card,css){const markup=memberPrizeMarkupV539(kind,card);return`<!doctype html><html lang=\"en\"><head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"><meta http-equiv=\"Content-Security-Policy\" content=\"default-src 'none'; img-src https: data:; style-src https: 'unsafe-inline'; font-src https: data:; form-action 'none'; base-uri 'none'; script-src 'none'\"><style>`+css.replace(/<\\/style/gi,\"<\\\\/style\")+'</style><style>*,*:before,*:after{box-sizing:border-box}body{margin:0} .orbit-myorbit-shell-v50{padding-bottom:24px!important}input,button{pointer-events:none}</style></head><body><section class=\"orbit-members-dashboard-v3 orbit-myorbit-v50 orbit-members-premium-v6871 orbit-members-premium-v6872 orbit-members-premium-v688 orbit-members-premium-v6881 orbit-members-premium-v689 orbit-members-premium-v6810\"><div class=\"orbit-myorbit-shell-v50\"><div class=\"orbit-v50-grid orbit-v50-view active orbit-v6871-home\"><div class=\"'+(kind===\"next\"?\"orbit-v6871-home-lower orbit-v207-home-lower\":\"orbit-v6871-home-top\")+'\">'+(kind===\"next\"?\"\":'<div class=\"orbit-v6871-home-side\">')+markup+(kind===\"next\"?\"\":\"</div>\")+\"</div></div></div></section></body></html>\"}let prizeInlineReadV542=0;async function populatePrizeInlineFramesV542(overview){const read=++prizeInlineReadV542;try{const css=await memberPreviewStylesV542();if(read!==prizeInlineReadV542||overview!==prizeOverviewV539)return;document.querySelectorAll(\"[data-prize-inline-v542]\").forEach(frame=>{const key=frame.dataset.prizeInlineV542,card=overview[key];if(!card)return;frame.srcdoc=prizePreviewDocumentV542(key.includes(\"Golden\")?\"golden\":[\"nextDraw\",\"followingDraw\"].includes(key)?\"next\":\"draw\",card,css);const status=document.querySelector('[data-prize-inline-status-v542=\"'+key+'\"]');status&&(status.textContent=\"Read-only Members Area card at this width.\")})}catch{if(read!==prizeInlineReadV542)return;document.querySelectorAll(\"[data-prize-inline-status-v542]\").forEach(el=>el.textContent=\"Preview unavailable. Refresh Schedules to retry; saved prizes are unchanged.\")}}let prizePopupReadV542=0;async function openPrizePreviewV539(kind,card,context){const dialog=$2(\"prizePreviewDialogV539\"),frame=$2(\"prizePreviewFrameV539\");if(!dialog||!frame)return;const read=++prizePopupReadV542;text(\"prizePreviewTitleV539\",kind===\"golden\"?\"Golden Ticket member card\":kind===\"next\"?\"Coming next month member card\":\"Monthly Draw member card\"),text(\"prizePreviewContextV539\",context+\" Read-only preview at this card width. Claim and entry controls cannot perform any action.\"),dialog.open||dialog.showModal(),frame.hidden=!0;try{const css=await memberPreviewStylesV542();if(!dialog.open||read!==prizePopupReadV542)return;frame.srcdoc=prizePreviewDocumentV542(kind,card,css),frame.hidden=!1}catch{read===prizePopupReadV542&&text(\"prizePreviewContextV539\",\"The member preview stylesheet could not load. Close this preview and retry. Saved prize content is unchanged.\")}}let boxAccountingPayloadV663=null;const boxRecipeUiV827={selectedBox:1,expectedVersion:0,dirty:false,saving:false,overviewRead:0,detailRead:0};\nfunction boxNumberLabelV827(value) {\n  const number = Number(value);\n  return Number.isInteger(number) && number > 0 ? `Box ${number}` : \"Box unconfirmed\";\n}\nfunction boxRecipeDateV827(value) {\n  if (!value) return \"Not saved yet\";\n  const date = new Date(value);\n  return Number.isNaN(date.getTime()) ? \"Date unavailable\" : new Intl.DateTimeFormat(\"en-GB\", { day: \"numeric\", month: \"short\", year: \"numeric\", hour: \"2-digit\", minute: \"2-digit\", timeZone: \"Europe/London\" }).format(date);\n}\nfunction boxRecipeContentsV827(recipe) {\n  return [`${Number(recipe?.packsPerParcel ?? 0)} pack(s)`, `${Number(recipe?.slabsPerParcel ?? 0)} slab(s)`, ...(recipe?.bonusItems || []).map(item => `${item.name || item.sku} \u00D7 ${Number(item.quantity ?? 1)}`)].join(\" \u00B7 \");\n}\nfunction boxRecipeStatusV827(message, error = false, reload = false) {\n  const target = $2(\"boxRecipeStatusV666\");\n  if (!target) return;\n  target.hidden = !message;\n  target.classList.toggle(\"error\", error);\n  target.setAttribute(\"role\", error ? \"alert\" : \"status\");\n  target.innerHTML = esc(message || \"\") + (reload ? ' <button type=\"button\" class=\"secondary\" data-box-recipe-reload-v827>Reload latest recipe</button>' : \"\");\n}\nfunction renderBoxRecipeEditorV827(payload, force = false) {\n  const form = $2(\"boxRecipeFormV666\");\n  if (!form || (!force && (boxRecipeUiV827.dirty || boxRecipeUiV827.saving))) return;\n  const recipes = Array.isArray(payload.boxRecipes) ? payload.boxRecipes : [];\n  const numbers = [...new Set([1, 2, 3, ...recipes.map(recipe => Number(recipe.boxNumber)), boxRecipeUiV827.selectedBox])].filter(number => Number.isInteger(number) && number > 0).sort((a, b) => a - b);\n  const selectedBox = boxRecipeUiV827.selectedBox;\n  const recipe = recipes.find(item => Number(item.boxNumber) === selectedBox) || null;\n  boxRecipeUiV827.expectedVersion = Number(recipe?.recipeVersion ?? 0);\n  const selected = new Map((recipe?.bonusItems || []).map(item => [String(item.sku || String(item.itemKey || \"\").replace(/^collector_bonus:/, \"\")), item]));\n  const inventory = new Map((payload.items || []).filter(item => String(item.itemKey || \"\").startsWith(\"collector_bonus:\")).map(item => [String(item.sku || String(item.itemKey).replace(/^collector_bonus:/, \"\")), item]));\n  for (const [sku, item] of selected) if (!inventory.has(sku)) inventory.set(sku, { ...item, available: null, missingFromInventory: true });\n  const bonuses = [...inventory.entries()].sort((a, b) => String(a[1].name || a[0]).localeCompare(String(b[1].name || b[0])));\n  const history = recipe ? [recipe, ...(recipe.history || []).filter(item => Number(item.recipeVersion) !== Number(recipe.recipeVersion))] : [];\n  form.className = \"orbit-box-recipe-v827\";\n  form.dataset.boxNumber = String(selectedBox);\n  form.innerHTML = `<div class=\"orbit-box-recipe-choice-v827\"><label>Choose box<select name=\"boxNumber\" aria-label=\"Choose box\">${numbers.map(number => `<option value=\"${number}\" ${number === selectedBox ? \"selected\" : \"\"}>Box ${number}</option>`).join(\"\")}</select></label><button type=\"button\" class=\"secondary\" data-box-recipe-next-v827>Add next box</button><div class=\"orbit-box-recipe-version-v827\"><strong>${boxNumberLabelV827(selectedBox)} contents</strong><span>${recipe && !recipe.seedProposal ? `Version ${Number(recipe.recipeVersion)} \u00B7 effective ${esc(boxRecipeDateV827(recipe.effectiveAt || recipe.setAt))}` : recipe ? \"Starting recipe\" : \"New recipe\"}</span></div></div>\n  <div class=\"orbit-box-recipe-quantities-v827\"><label>Packs per box<input name=\"packsPerParcel\" type=\"number\" min=\"0\" step=\"1\" required value=\"${Number(recipe?.packsPerParcel ?? 1)}\"></label><label>Slabs per box<input name=\"slabsPerParcel\" type=\"number\" min=\"0\" step=\"1\" required value=\"${Number(recipe?.slabsPerParcel ?? 1)}\"></label></div>\n  <fieldset class=\"orbit-box-recipe-bonuses-v827\"><legend>Bonus items</legend><div id=\"boxRecipeBonusesV666\" class=\"orbit-box-bonus-picker-v666\">${bonuses.length ? bonuses.map(([sku, item]) => `<div class=\"orbit-box-bonus-row-v666\"><label><input type=\"checkbox\" data-box-recipe-bonus-v666=\"${esc(sku)}\" ${selected.has(sku) ? \"checked\" : \"\"}> <span>${esc(item.name || sku)}</span><small>${item.missingFromInventory ? \"Inventory item unavailable\" : `${Number(item.available ?? item.onHand ?? 0)} available`}</small></label><input type=\"number\" min=\"1\" step=\"1\" required ${selected.has(sku) ? \"\" : \"disabled\"} value=\"${Number(selected.get(sku)?.quantity ?? 1)}\" data-box-recipe-bonus-qty-v666=\"${esc(sku)}\" aria-label=\"${esc(item.name || sku)} quantity\"></div>`).join(\"\") : '<p class=\"orbit-muted\">Add bonus items through Purchases before selecting them here.</p>'}</div></fieldset>\n  ${selectedBox === 1 ? '<p class=\"orbit-box-starter-v827\"><span aria-hidden=\"true\">\u2605</span> Box 1 includes the membership card and lanyard. Their fixed cost is set below.</p>' : \"\"}\n  <div class=\"orbit-box-recipe-save-v827\"><button type=\"submit\">Save Box ${selectedBox} contents</button><p>Changes apply to future dispatches of this box. Previous shipments keep their recorded contents and costs.</p></div>\n  ${history.length ? `<details class=\"orbit-box-recipe-history-v827\"><summary>Recipe history (${history.length})</summary><div class=\"orbit-table-wrap\"><table><thead><tr><th>Version</th><th>Effective from</th><th>Contents</th></tr></thead><tbody>${history.map(item => `<tr><td>${item.seedProposal ? \"Starting recipe\" : `Version ${Number(item.recipeVersion)}`}${item === recipe && !item.seedProposal ? \"<small>Current</small>\" : \"\"}</td><td>${esc(boxRecipeDateV827(item.effectiveAt || item.setAt))}</td><td>${esc(boxRecipeContentsV827(item))}</td></tr>`).join(\"\")}</tbody></table></div></details>` : \"\"}`;\n}\nfunction boxBreakdownHtmlV827(rows) {\n  if (!rows?.length) return \"\";\n  return `<div class=\"orbit-box-breakdown-v827\"><h4>Boxes with recorded costs</h4><div class=\"orbit-table-wrap\"><table><thead><tr><th>Box</th><th>Shipments</th><th>Recorded recipes</th><th>Revenue</th><th>Direct cost</th><th>Contribution</th></tr></thead><tbody>${rows.map(row => `<tr><td><strong>${boxNumberLabelV827(row.boxNumber)}</strong></td><td>${Number(row.accountedShipments ?? row.totalSent ?? 0)}</td><td>${(row.numberedRecipeVersions || []).map(version => `v${Number(version)}`).join(\", \")}${Number(row.historicalSnapshotCount || 0) ? `${(row.numberedRecipeVersions || []).length ? \" \u00B7 \" : \"\"}Historical recorded contents (${Number(row.historicalSnapshotCount)})` : !(row.numberedRecipeVersions || []).length ? \"Historical recorded contents\" : \"\"}</td><td>${boxMoneyV663(row.revenue)}</td><td>${boxMoneyV663(row.totalCost)}</td><td>${boxMoneyV663(row.contribution)}</td></tr>`).join(\"\")}</tbody></table></div></div>`;\n}\nfunction boxPendingShipmentsHtmlV827(rows) {\n  if (!rows?.length) return \"\";\n  return `<section class=\"orbit-box-pending-v827\" aria-label=\"Shipments awaiting stock accounting\"><h4>Stock accounting needs attention</h4><p>These parcels were dispatched. Their stock accounting is still pending.</p>${rows.map(row => `<div class=\"orbit-box-pending-row-v827\"><div><strong>${esc(row.memberName || row.memberNumber || row.member_number || row.packId || row.pack_id)}</strong><small>${boxNumberLabelV827(row.boxNumber || row.box_number || row.parcelNumber)}${row.error || row.accountingError || row.box_accounting_error ? ` \u00B7 ${esc(row.error || row.accountingError || row.box_accounting_error)}` : \"\"}</small></div>${row.retryAllowed === false ? '<small>Review required before retry</small>' : `<button type=\"button\" class=\"secondary\" data-box-account-retry-v827=\"${esc(row.packId || row.pack_id)}\">Retry stock accounting</button>`}</div>`).join(\"\")}</section>`;\n}\nfunction changeBoxRecipeV827(event) {\n  if (event.target.name === \"boxNumber\") {\n    const selected = Number(event.target.value);\n    if (boxRecipeUiV827.saving || (boxRecipeUiV827.dirty && !confirm(\"Discard the unsaved changes to this box?\"))) { event.target.value = String(boxRecipeUiV827.selectedBox); return; }\n    boxRecipeUiV827.selectedBox = selected;\n    boxRecipeUiV827.dirty = false;\n    boxRecipeStatusV827(\"\");\n    renderBoxRecipeEditorV827(boxAccountingPayloadV663 || {}, true);\n    return;\n  }\n  boxRecipeUiV827.dirty = true;\n  if (event.target.matches(\"[data-box-recipe-bonus-v666]\")) {\n    const quantity = event.currentTarget.querySelector(`[data-box-recipe-bonus-qty-v666=\"${CSS.escape(event.target.dataset.boxRecipeBonusV666)}\"]`);\n    if (quantity) quantity.disabled = !event.target.checked;\n  }\n}\nasync function saveBoxRecipeV827(event) {\n  event.preventDefault();\n  const form = event.currentTarget;\n  if (boxRecipeUiV827.saving || !form.reportValidity()) return;\n  const boxNumber = boxRecipeUiV827.selectedBox;\n  const body = { packsPerParcel: Number(form.elements.packsPerParcel.value), slabsPerParcel: Number(form.elements.slabsPerParcel.value), bonusItems: [...form.querySelectorAll(\"[data-box-recipe-bonus-v666]:checked\")].map(input => ({ sku: input.dataset.boxRecipeBonusV666, quantity: Number(form.querySelector(`[data-box-recipe-bonus-qty-v666=\"${CSS.escape(input.dataset.boxRecipeBonusV666)}\"]`).value) })), expectedVersion: boxRecipeUiV827.expectedVersion };\n  boxRecipeUiV827.saving = true;\n  ++boxRecipeUiV827.overviewRead;\n  for (const control of form.elements) control.disabled = true;\n  boxRecipeStatusV827(`Saving Box ${boxNumber} contents\u2026`);\n  try {\n    const result = await api(\"/api/admin/member-box-accounting/box-recipes/\" + boxNumber, { method: \"POST\", body: JSON.stringify(body), cacheMs: 0, timeoutMs: 2e4 });\n    const payload = boxAccountingPayloadV663 || (boxAccountingPayloadV663 = {});\n    payload.boxRecipes = [...(payload.boxRecipes || []).filter(recipe => Number(recipe.boxNumber) !== boxNumber), result.recipe];\n    boxRecipeUiV827.dirty = false;\n    boxRecipeUiV827.saving = false;\n    renderBoxRecipeEditorV827(payload, true);\n    boxRecipeStatusV827(result.idempotent ? `Box ${boxNumber} already has these contents. No new version was needed.` : `Box ${boxNumber} version ${Number(result.recipe?.recipeVersion || 1)} saved. It applies to future dispatches. Previous shipments are unchanged.`);\n    try { await loadBoxAccountingV663(true); } catch { boxStatusV663(\"Recipe saved. Inventory could not refresh; use Refresh to try again.\", true); }\n  } catch (error) {\n    boxRecipeUiV827.saving = false;\n    for (const control of form.elements) control.disabled = false;\n    for (const input of form.querySelectorAll(\"[data-box-recipe-bonus-v666]\")) {\n      const quantity = form.querySelector(`[data-box-recipe-bonus-qty-v666=\"${CSS.escape(input.dataset.boxRecipeBonusV666)}\"]`);\n      if (quantity) quantity.disabled = !input.checked;\n    }\n    boxRecipeUiV827.dirty = true;\n    const conflict = Number(error.status || error.statusCode) === 409 || /version|changed|conflict/i.test(String(error.message || \"\"));\n    boxRecipeStatusV827(String(error.message || error) + (conflict ? \" Your edits are still here. Reload the latest recipe before saving again.\" : \" Your edits are still here.\"), true, conflict);\n  }\n}\nasync function boxRecipeClickV827(event) {\n  const next = event.target.closest(\"[data-box-recipe-next-v827]\"), reload = event.target.closest(\"[data-box-recipe-reload-v827]\"), retry = event.target.closest(\"[data-box-account-retry-v827]\");\n  if (next) {\n    if (boxRecipeUiV827.saving || (boxRecipeUiV827.dirty && !confirm(\"Discard the unsaved changes to this box?\"))) return;\n    boxRecipeUiV827.selectedBox = Math.max(3, boxRecipeUiV827.selectedBox, ...(boxAccountingPayloadV663?.boxRecipes || []).map(recipe => Number(recipe.boxNumber) || 0)) + 1;\n    boxRecipeUiV827.dirty = false;\n    renderBoxRecipeEditorV827(boxAccountingPayloadV663 || {}, true);\n    boxRecipeStatusV827(`Choose the contents for Box ${boxRecipeUiV827.selectedBox}, then save.`);\n  } else if (reload) {\n    if (boxRecipeUiV827.saving || (boxRecipeUiV827.dirty && !confirm(\"Discard your unsaved edits and load the latest saved recipe?\"))) return;\n    boxRecipeUiV827.dirty = false;\n    try { await loadBoxAccountingV663(true); boxRecipeStatusV827(\"Latest saved recipe loaded.\"); } catch (error) { boxRecipeStatusV827(error.message || String(error), true, true); }\n  } else if (retry) {\n    if (retry.disabled) return;\n    const packId = retry.dataset.boxAccountRetryV827;\n    const month = $2(\"boxMonthDetailV666\")?.dataset.month;\n    setLoading(retry, true);\n    try {\n      await api(\"/api/admin/member-box-accounting/parcels/\" + encodeURIComponent(packId) + \"/account\", { method: \"POST\", body: \"{}\", cacheMs: 0, timeoutMs: 2e4 });\n      const message = \"Stock accounting completed for this shipment. Its saved contents and costs are now recorded.\";\n      boxStatusV663(message);\n      setOrdersResult(message, false);\n      const result = $2(\"shippingDispatchResult\");\n      if (result?.contains(retry)) {\n        const row = retry.closest(\".orbit-box-pending-row-v827\");\n        if (row) row.innerHTML = `<span>${esc(message)}</span>`;\n        const remaining = result.querySelectorAll(\"[data-box-account-retry-v827]\").length;\n        const summary = result.querySelector(\"[data-dispatch-summary-v827]\");\n        if (summary) summary.textContent = (result.dataset.dispatchSummary || \"Dispatch saved.\") + (remaining ? ` Stock accounting is still pending for ${remaining} shipment(s).` : \" Stock accounting is complete for these shipments.\");\n        result.classList.toggle(\"error\", Boolean(remaining || result.dataset.emailAttention === \"true\"));\n      }\n      const refreshed = await Promise.allSettled([loadBoxAccountingV663(true), loadFulfilment(null, true)]);\n      if (month && $2(\"boxMonthDetailV666\")?.dataset.month === month) await loadBoxMonthDetailV666(month);\n      if (refreshed.some(item => item.status === \"rejected\")) boxStatusV663(\"Stock accounting succeeded. Some views could not refresh; use Refresh to reload them.\", true);\n    } catch (error) {\n      const message = error.message || String(error);\n      boxStatusV663(message, true);\n      setOrdersResult(message, true);\n      const detail = document.createElement(\"p\"); detail.className = \"orbit-warning-text\"; detail.textContent = message; retry.parentElement?.appendChild(detail);\n    } finally { if (retry.isConnected) setLoading(retry, false); }\n  }\n}\nfunction fulfilmentAccountingNoteV827(pack) {\n  const pending = [\"pending\", \"failed\"].includes(String(pack.accountingStatus || pack.boxAccountingStatus || pack.box_accounting_status || \"\"));\n  if (!pending) return \"\";\n  return `<div class=\"orbit-box-account-pending-v827\"><strong>Stock accounting pending</strong>${pack.accountingError || pack.boxAccountingError || pack.box_accounting_error ? `<small>${esc(pack.accountingError || pack.boxAccountingError || pack.box_accounting_error)}</small>` : \"\"}<button type=\"button\" class=\"secondary\" data-box-account-retry-v827=\"${esc(pack.packId || pack.pack_id)}\">Retry stock accounting</button></div>`;\n}\nfunction renderDispatchResultV827(result, selectedCount, target) {\n  const failures = (result.emailFailures || []).length, missing = (result.missingEmail || []).length, accounting = result.accountingFailures || [], pending = Number(result.accountingPendingCount ?? accounting.length), needsAttention = Boolean(failures || missing || pending);\n  let message = `Dispatched ${Number(result.dispatchedCount || 0)} parcel(s) from ${selectedCount} selected. ${Number(result.emailedCount || 0)} tracking email(s) sent.`;\n  if (failures || missing) message += ` ${failures} email(s) failed, ${missing} missing email.`;\n  const dispatchSummary = message;\n  if (pending) message += ` Stock accounting is pending for ${pending} shipment(s). Review the reason and retry below.`;\n  if (target) {\n    target.hidden = false;\n    target.classList.toggle(\"error\", needsAttention);\n    target.setAttribute(\"role\", needsAttention ? \"alert\" : \"status\");\n    target.dataset.dispatchSummary = dispatchSummary;\n    target.dataset.emailAttention = String(Boolean(failures || missing));\n    target.innerHTML = `<p data-dispatch-summary-v827>${esc(message)}</p>` + accounting.map(row => `<div class=\"orbit-box-pending-row-v827\"><span><strong>${esc(row.memberNumber || row.packId)}</strong><small>${esc(row.error || \"Stock accounting needs attention\")}</small></span><button type=\"button\" class=\"secondary\" data-box-account-retry-v827=\"${esc(row.packId)}\">Retry stock accounting</button></div>`).join(\"\");\n  }\n  setOrdersResult(message, needsAttention);\n  setNotice2(message, needsAttention);\n  return { message, needsAttention };\n}\nfunction boxMoneyV663(v){return\"\\xA3\"+Number(v||0).toFixed(2)}function boxStatusV663(message,error=!1){const el=$2(\"boxAccountingStatusV663\");el&&(el.hidden=!message,el.classList.toggle(\"error\",!!error),el.textContent=message||\"\")}function boxEntryKeyV664(prefix){try{return`${prefix}:${crypto.randomUUID()}`}catch{return`${prefix}:${Date.now()}:${Math.random().toString(36).slice(2)}`}}function boxFormPayloadV663(form){const data=Object.fromEntries(new FormData(form).entries());form.querySelectorAll('input[type=\"checkbox\"]').forEach(x=>data[x.name]=x.checked);for(const key of[\"quantity\",\"totalCost\",\"carryingValue\",\"sponsorCredits\",\"paidGradingCost\",\"packQuantityPerParcel\",\"slabQuantityPerParcel\",\"packagingCost\",\"packagingCostPerBox\",\"boxCount\",\"packCost\",\"slabCost\",\"collectorBonusCost\",\"postageCost\",\"revenue\"])Object.prototype.hasOwnProperty.call(data,key)&&data[key]!==\"\"&&(data[key]=Number(data[key]));return data}function movementCorrectableV664(row){return[\"purchase\",\"manual_withdrawal\",\"damage_writeoff\"].includes(String(row.movement_type||\"\"))&&!row.metadata?.corrected_by_movement_id&&!row.metadata?.deleted_at}function movementDeletableV665(row){return[\"purchase\",\"manual_withdrawal\",\"damage_writeoff\",\"opening_stocktake\",\"stocktake_adjustment\"].includes(String(row.movement_type||\"\"))&&!row.metadata?.corrected_by_movement_id&&!row.metadata?.deleted_at}function boxMonthLabelV666(month){try{const[y,m]=String(month||\"\").split(\"-\").map(Number);return new Intl.DateTimeFormat(\"en-GB\",{month:\"long\",year:\"numeric\"}).format(new Date(y,m-1,1))}catch{return String(month||\"\")}}function currentBoxMonthV666(){const d=new Date;return`${d.getFullYear()}-${String(d.getMonth()+1).padStart(2,\"0\")}`}function boxMonthlyHistoryHtmlV666(rows) {\n  return rows.length ? `<table><thead><tr><th>Month</th><th>Sent</th><th>Revenue</th><th>Pack</th><th>Slab</th><th>Bonus</th><th>Packaging</th><th>Starter</th><th>Postage</th><th>Total cost</th><th>Contribution</th></tr></thead><tbody>${rows.map(row => `<tr class=\"orbit-clickable-row\" data-box-month-detail-v666=\"${esc(row.monthKey)}\"><td><button type=\"button\" class=\"orbit-box-month-open-v827\" data-box-month-detail-v666=\"${esc(row.monthKey)}\">${esc(boxMonthLabelV666(row.monthKey))}</button><small>${(row.boxBreakdown || []).map(box => `${boxNumberLabelV827(box.boxNumber)}: ${Number(box.accountedShipments ?? box.totalSent ?? 0)}`).join(\" \u00B7 \") || `${Number(row.accountedShipments || 0)} accounted shipment(s)`}</small>${Number(row.replacements || 0) ? `<small>${Number(row.replacements)} replacement shipment(s)</small>` : \"\"}${Number(row.returns || 0) ? `<small>${Number(row.returns)} returned shipment(s)</small>` : \"\"}${Number(row.accountingPending || 0) ? `<small class=\"orbit-warning-text\">${Number(row.accountingPending)} awaiting stock accounting</small>` : \"\"}</td><td>${Number(row.accountedShipments ?? row.totalSent ?? 0) + Number(row.accountingPendingCount ?? row.accountingPending ?? 0)}${Number(row.accountingPendingCount ?? row.accountingPending ?? 0) ? `<small>${Number(row.accountedShipments ?? row.totalSent ?? 0)} accounted</small>` : \"\"}</td><td>${boxMoneyV663(row.revenue)}</td><td>${boxMoneyV663(row.packCost)}</td><td>${boxMoneyV663(row.slabCost)}</td><td>${boxMoneyV663(row.bonusCost)}</td><td>${boxMoneyV663(row.packagingCost)}</td><td>${boxMoneyV663(row.starterCost)}</td><td>${boxMoneyV663(row.postageCost)}</td><td><strong>${boxMoneyV663(row.totalCost)}</strong></td><td><strong>${boxMoneyV663(row.contribution)}</strong>${row.marginPercent == null ? \"\" : `<small>${Number(row.marginPercent).toFixed(1)}%</small>`}</td></tr>`).join(\"\")}</tbody></table>` : \"<p>No monthly box history yet.</p>\";\n}\nfunction renderBoxFulfilmentV666(payload) {\n  const settings = payload.settings || {}, settingsForm = $2(\"boxSettingsFormV666\");\n  if (settingsForm) {\n    settingsForm.elements.packagingCost.value = Number(settings.packagingCost ?? 1.6).toFixed(2);\n    settingsForm.elements.parcel1StarterCost.value = Number(settings.parcel1StarterCost ?? 1.7).toFixed(2);\n  }\n  const history = $2(\"boxMonthlyHistoryV666\");\n  if (history) history.innerHTML = boxMonthlyHistoryHtmlV666(payload.monthlyHistory || []);\n  renderBoxRecipeEditorV827(payload);\n}\nasync function loadSeptemberBackfillV666(detail) {\n  const target = $2(\"boxSeptemberBackfillV666\");\n  if (!target || detail?.monthKey !== \"2026-09\") return;\n  const read = boxRecipeUiV827.detailRead;\n  target.innerHTML = '<p role=\"status\">Checking September shipment records\u2026</p>';\n  try {\n    const result = await api(\"/api/admin/member-box-accounting/september-backfill/preview\", { cacheMs: 0, timeoutMs: 2e4 });\n    if (read !== boxRecipeUiV827.detailRead || !target.isConnected || $2(\"boxMonthDetailV666\")?.dataset.month !== \"2026-09\") return;\n    const status = result.status === \"complete\" ? \"All evidenced shipments accounted\" : result.status === \"accounting_pending\" ? \"Stock accounting pending\" : \"History needs review\";\n    target.innerHTML = `<details class=\"orbit-box-reconciliation-v827\"><summary>September history check</summary><p><strong>${status}</strong></p><p>${Number(result.physicalShipmentCount ?? result.physicalShipments ?? 0)} physical shipment(s) are supported by dispatch evidence. ${Number(result.accountedShipments ?? result.alreadyAccounted ?? 0)} have recorded contents and costs. ${Number(result.accountingPendingCount ?? 0)} are awaiting stock accounting.</p><p>${Number(result.excludedNonShipmentRows ?? 0)} superseded or non-shipment record(s) without physical dispatch evidence are excluded from shipment totals.</p>${Number(result.duplicateAllocations || 0) ? `<p class=\"orbit-warning-text\">${Number(result.duplicateAllocations)} duplicate cost record(s) need review.</p>` : \"\"}<p>This check is read only. Historical contents and costs are preserved.</p></details>`;\n  } catch (error) {\n    if (read === boxRecipeUiV827.detailRead && target.isConnected) target.innerHTML = `<p class=\"orbit-warning-text\">September history check could not load: ${esc(error.message || String(error))}</p>`;\n  }\n}\nasync function loadBoxMonthDetailV666(month) {\n  const target = $2(\"boxMonthDetailV666\");\n  if (!target) return;\n  const read = ++boxRecipeUiV827.detailRead;\n  target.dataset.month = month;\n  target.innerHTML = '<p role=\"status\">Loading month detail\u2026</p>';\n  try {\n    const detail = await api(\"/api/admin/member-box-accounting/months/\" + encodeURIComponent(month), { cacheMs: 0, timeoutMs: 2e4 });\n    if (read !== boxRecipeUiV827.detailRead || target.dataset.month !== month) return;\n    const summary = detail.summary || {};\n    target.innerHTML = `<div class=\"orbit-box-month-detail-v666\"><div class=\"orbit-panel-header compact\"><div><h3>${esc(boxMonthLabelV666(month))} detail</h3><p>${Number(summary.accountedShipments || 0) + Number(summary.accountingPendingCount ?? summary.accountingPending ?? 0)} dispatched shipment(s), ${Number(summary.accountedShipments || 0)} accounted \u00B7 total cost ${boxMoneyV663(summary.totalCost)} \u00B7 revenue ${boxMoneyV663(summary.revenue)} \u00B7 contribution ${boxMoneyV663(summary.contribution)}</p></div><button type=\"button\" class=\"secondary\" data-box-close-month-v666>Close</button></div>${boxBreakdownHtmlV827(summary.boxBreakdown || detail.boxBreakdown || [])}${boxPendingShipmentsHtmlV827(detail.pendingShipments || [])}<p class=\"orbit-box-snapshot-note-v827\">Contents and costs below are the saved records for each shipment.</p><div class=\"orbit-table-wrap\"><table><thead><tr><th>Member</th><th>Box</th><th>Status</th><th>Recorded contents</th><th>Packaging</th><th>Starter cost</th><th>Postage</th><th>Total</th><th>Revenue</th><th></th></tr></thead><tbody>${(detail.shipments || []).map(row => `<tr><td><strong>${esc(row.memberName || row.memberNumber || row.subscriptionId || \"Unlinked shipment\")}</strong><small>${esc([row.memberNumber, row.email].filter(Boolean).join(\" \u00B7 \"))}</small>${row.reconciliationRequired ? '<small class=\"orbit-warning-text\">Needs member reconciliation</small>' : \"\"}${row.replacementOfPackId ? \"<small>Replacement / resend</small>\" : \"\"}</td><td><strong>${boxNumberLabelV827(row.boxNumber ?? row.parcelNumber)}</strong><small>${esc(row.fundedMonth || month)}</small>${row.recipeId && Number(row.recipeVersion || 0) ? `<small>Recipe v${Number(row.recipeVersion)}</small>` : \"<small>Historical recorded contents</small>\"}</td><td>${esc(row.returnedToOrbit ? \"Returned to Orbit\" : row.status || \"Recorded\")}${row.returnCondition ? `<small>${esc(row.returnCondition)}</small>` : \"\"}</td><td>${(row.contents || []).map(item => `${esc(item.name)} ${item.quantity == null ? \"(quantity not recorded)\" : `\u00D7 ${Number(item.quantity)}`} (${boxMoneyV663(item.cost)})${item.returned ? \" \u00B7 returned\" : \"\"}`).join(\"<br>\") || \"No item detail recorded\"}${row.recordedVariance ? `<small class=\"orbit-box-variation-v827\">${esc(row.varianceReason || \"Recorded contents differ from the starting recipe. Historical contents and costs are preserved.\")}</small>` : \"\"}</td><td>${boxMoneyV663(row.display?.packagingCost)}</td><td>${Number(row.display?.starterCost || 0) ? boxMoneyV663(row.display.starterCost) : \"None\"}</td><td>${boxMoneyV663(row.display?.postageCost)}</td><td><strong>${boxMoneyV663(row.display?.totalDirectCost)}</strong></td><td>${boxMoneyV663(row.display?.revenue)}</td><td>${row.returnedToOrbit ? '<span class=\"orbit-status-pill success\">Received back</span>' : `<button type=\"button\" class=\"secondary\" data-box-mark-returned-v669=\"${esc(row.pack_id || row.packId)}\">Mark received back</button>`}</td></tr>`).join(\"\") || '<tr><td colspan=\"10\">No accounted shipments yet.</td></tr>'}</tbody></table></div>${month === \"2026-09\" ? '<div id=\"boxSeptemberBackfillV666\"></div>' : \"\"}</div>`;\n    if (month === \"2026-09\") loadSeptemberBackfillV666(detail);\n  } catch (error) {\n    if (read === boxRecipeUiV827.detailRead && target.dataset.month === month) target.innerHTML = `<div class=\"orbit-action-result error\" role=\"alert\">${esc(error.message || String(error))}</div>`;\n  }\n}\nfunction renderBoxAccountingV663(payload){boxAccountingPayloadV663=payload;const items=payload.items||[],credits=payload.gradingCredits||payload.sponsorCredits||{},creditHistory=payload.gradingCreditHistory||[],runs=payload.runs||[],backfills=payload.backfills||[],ledger=payload.ledger||[],grading=payload.gradingBatches||[],totalValue=items.reduce((n,x)=>n+Number(x.carryingValue||0),0),reserved=items.reduce((n,x)=>n+Number(x.reserved||0),0),openRuns=runs.filter(x=>[\"planning\",\"reserved\"].includes(x.status)).length,summary=$2(\"boxAccountingSummaryV663\");summary&&(summary.innerHTML=`<article class=\"orbit-metric\"><span>Stock value</span><strong>${boxMoneyV663(totalValue)}</strong><small>Live carrying value</small></article><article class=\"orbit-metric\"><span>Reserved units</span><strong>${reserved}</strong><small>Committed to runs</small></article><article class=\"orbit-metric\"><span>Grading Credits</span><strong>${Number(credits.available||0)}</strong><small>${Number(credits.consumed||0)} used of ${Number(credits.granted||0)}</small></article><article class=\"orbit-metric\"><span>Open runs</span><strong>${openRuns}</strong><small>Planning / reserved</small></article>`);const inv=$2(\"boxInventoryTableV663\");inv&&(inv.innerHTML=items.length?`<table><thead><tr><th>Inventory</th><th>On hand</th><th>Reserved</th><th>Available</th><th>Avg cost</th><th>Carrying value</th></tr></thead><tbody>${items.map(x=>`<tr><td><strong>${esc(x.name||x.itemKey)}</strong>${x.sku?`<small>${esc(x.sku)}</small>`:\"\"}</td><td>${Number(x.onHand||0)}</td><td>${Number(x.reserved||0)}</td><td>${Number(x.available||0)}</td><td>${boxMoneyV663(x.weightedAverageCost)}</td><td><strong>${boxMoneyV663(x.carryingValue)}</strong></td></tr>`).join(\"\")}</tbody></table>`:\"<p>No inventory yet.</p>\"),payload.openingReconciliation?.applied&&boxStatusV663(\"Opening stock values reconciled: Packs \\xA3980.00 and Raw Cards \\xA31,860.00.\");const c=$2(\"boxSponsorCreditV663\");c&&(c.textContent=`Grading Credits: ${Number(credits.available||0)} available \\xB7 ${Number(credits.consumed||0)} used`);const activeGr=$2(\"boxGradingActiveV666\"),gr=$2(\"boxGradingBatchesV663\"),batchRow=b=>{const received=b.status===\"received\",cancelled=b.status===\"cancelled\";let result;return received?result=`<span class=\"orbit-status-pill success\">Received ${Number((b.quantity_accepted??b.quantity_received)||0)} \\xB7 write-off ${Number(b.quantity_written_off||0)} \\xB7 box value ${boxMoneyV663(b.finishedValue)}</span>`:cancelled?result=`<div class=\"orbit-row-actions\"><span class=\"orbit-status-pill\">Cancelled</span><button type=\"button\" class=\"secondary\" data-box-delete-grading-v665=\"${esc(b.batch_id)}\">Delete</button></div>`:result=`<div class=\"orbit-row-actions\"><button type=\"button\" class=\"secondary\" data-box-cancel-grading-v664=\"${esc(b.batch_id)}\">Cancel / correct</button><button type=\"button\" class=\"secondary\" data-box-delete-grading-v665=\"${esc(b.batch_id)}\">Delete</button><button type=\"button\" data-box-receive-grading-v663=\"${esc(b.batch_id)}\">Receive slabs</button></div>`,`<div class=\"orbit-mini-row\"><div><strong>${esc(b.batch_id)}</strong><small>${Number(b.quantity_sent||0)} cards \\xB7 raw ${boxMoneyV663(b.rawValue)} \\xB7 grading credits ${Number(b.sponsor_credits_used||0)} \\xB7 paid grading ${boxMoneyV663(b.paidGradingCost)}</small></div>${result}</div>`};if(activeGr){const active=grading.filter(b=>![\"received\",\"cancelled\",\"archived\"].includes(String(b.status||\"\")));activeGr.innerHTML=active.length?`<h4>Open grading batches</h4>${active.map(batchRow).join(\"\")}`:'<p class=\"orbit-muted\">No open grading batches.</p>'}if(gr){const history2=grading.filter(b=>[\"received\",\"cancelled\",\"archived\"].includes(String(b.status||\"\"))),batches=history2.length?history2.slice(0,30).map(batchRow).join(\"\"):'<p class=\"orbit-muted\">No completed or cancelled grading batches yet.</p>',grants=creditHistory.length?`<h4>Grading Credit grants</h4>${creditHistory.slice(0,30).map(x=>`<div class=\"orbit-mini-row\"><div><strong>${Number(x.quantity||0)} credits</strong><small>${esc(x.reference||x.source||\"Grading Credit grant\")} \\xB7 ${esc(prettyDate(x.created_at))}</small></div><button type=\"button\" class=\"secondary\" data-box-delete-credit-v665=\"${esc(x.credit_id)}\">Delete</button></div>`).join(\"\")}`:'<h4>Grading Credit grants</h4><p class=\"orbit-muted\">No Grading Credits added yet.</p>';gr.innerHTML=batches+grants}renderBoxFulfilmentV666(payload);const withdrawalForm=$2(\"boxWithdrawalFormV664\");if(withdrawalForm){let history2=$2(\"boxWithdrawalHistoryV665\");history2||(history2=document.createElement(\"div\"),history2.id=\"boxWithdrawalHistoryV665\",history2.className=\"orbit-mini-list\",withdrawalForm.closest(\"article\")?.appendChild(history2));const rows=ledger.filter(x=>x.movement_type===\"manual_withdrawal\"&&!x.metadata?.deleted_at).slice(0,20);history2.innerHTML=\"<h4>Recent withdrawals</h4>\"+(rows.length?rows.map(x=>`<div class=\"orbit-mini-row\"><div><strong>${Math.abs(Number(x.quantity_delta||0))} slabs \\xB7 ${boxMoneyV663(Math.abs(Number(x.valueDelta||0)))}</strong><small>${esc(x.reason||x.metadata?.use||\"Business use\")} \\xB7 ${esc(prettyDate(x.created_at))}</small></div><button type=\"button\" class=\"secondary\" data-box-delete-movement-v665=\"${esc(x.movement_id)}\">Delete</button></div>`).join(\"\"):'<p class=\"orbit-muted\">No slab withdrawals yet.</p>')}const rt=$2(\"boxRunsTableV663\");rt&&(rt.innerHTML=runs.length?`<table><thead><tr><th>Run</th><th>Parcels</th><th>Sequence mix</th><th>Packaging</th><th>Status</th><th>Economics</th><th></th></tr></thead><tbody>${runs.map(r=>{const mix={};(r.parcels||[]).forEach(p=>mix[p.parcelNumber||\"?\"]=(mix[p.parcelNumber||\"?\"]||0)+1);const mixText=Object.entries(mix).map(([k,v])=>`P${k}: ${v}`).join(\" \\xB7 \"),f=r.financials?.display;return`<tr><td><strong>${esc(r.name)}</strong><small>${esc(r.monthKey||\"Selected parcels\")}</small></td><td>${Number(r.parcelCount||0)}</td><td>${esc(mixText||\"History unavailable\")}</td><td>${boxMoneyV663(r.packagingCost)}<small>${boxMoneyV663(r.packagingCostPerBox)} / box</small></td><td>${esc(r.status)}</td><td>${f?`Cost ${boxMoneyV663(f.totalDirectCost)} \\xB7 Revenue ${boxMoneyV663(f.revenue)} \\xB7 Contribution ${boxMoneyV663(f.contribution)}`:\"\\u2014\"}</td><td><div class=\"orbit-row-actions\"><button type=\"button\" class=\"secondary\" data-box-bonus-v663=\"${esc(r.runId)}\" ${r.status!==\"planning\"?\"disabled\":\"\"}>Allocate bonus</button>${r.status===\"planning\"?`<button type=\"button\" data-box-reserve-v663=\"${esc(r.runId)}\">Reserve</button>`:\"\"}${r.status===\"reserved\"?`<button type=\"button\" class=\"secondary\" data-box-release-v663=\"${esc(r.runId)}\">Release</button><button type=\"button\" data-box-fulfil-v663=\"${esc(r.runId)}\">Fulfil</button>`:\"\"}${[\"fulfilled\",\"closed\"].includes(r.status)?\"\":`<button type=\"button\" class=\"secondary\" data-box-delete-run-v665=\"${esc(r.runId)}\">Delete</button>`}</div></td></tr>`}).join(\"\")}</tbody></table>`:\"<p>No fulfilment runs yet.</p>\");const lg=$2(\"boxLedgerTableV663\");if(lg){const backfillBlock=backfills.length?`<div class=\"orbit-mini-list\"><h4>Historical backfills</h4>${backfills.map(b=>`<div class=\"orbit-mini-row\"><div><strong>${esc(b.name||b.backfill_id)}</strong><small>${Number(b.box_count||0)} boxes \\xB7 cost ${boxMoneyV663(b.totalDirectCost)} \\xB7 revenue ${boxMoneyV663(b.revenue)}</small></div><button type=\"button\" class=\"secondary\" data-box-delete-backfill-v665=\"${esc(b.backfill_id)}\">Delete</button></div>`).join(\"\")}</div>`:\"\",rows=ledger.length?`<table><thead><tr><th>When</th><th>Movement</th><th>Inventory</th><th>Qty</th><th>Value</th><th>Reference</th><th></th></tr></thead><tbody>${ledger.map(x=>{const deleted=!!x.metadata?.deleted_at,actions=deleted?\"<small>Deleted / reversed</small>\":`${movementCorrectableV664(x)?`<button type=\"button\" class=\"secondary\" data-box-correct-movement-v664=\"${esc(x.movement_id)}\">Correct</button>`:\"\"}${movementDeletableV665(x)?` <button type=\"button\" class=\"secondary\" data-box-delete-movement-v665=\"${esc(x.movement_id)}\">Delete</button>`:\"\"}`;return`<tr${deleted?' class=\"orbit-muted\"':\"\"}><td>${esc(prettyDate(x.created_at||x.createdAt))}</td><td><strong>${esc(String(x.movement_type||\"\").replace(/_/g,\" \"))}</strong><small>${esc(x.reason||\"\")}</small></td><td>${esc(x.item_key||\"\\u2014\")}</td><td>${Number(x.quantity_delta||0)}</td><td>${boxMoneyV663(x.valueDelta)}</td><td>${esc(x.reference_id||\"\\u2014\")}</td><td>${actions}</td></tr>`}).join(\"\")}</tbody></table>`:\"<p>No ledger movements yet.</p>\";lg.innerHTML=backfillBlock+rows}}async function loadBoxAccountingV663(force = false) {\n  const read = ++boxRecipeUiV827.overviewRead;\n  boxStatusV663(force ? \"Refreshing inventory\u2026\" : \"\");\n  const payload = await api(\"/api/admin/member-box-accounting/overview\", { cacheMs: force ? 0 : 3e3, timeoutMs: 2e4 });\n  if (read !== boxRecipeUiV827.overviewRead) return payload;\n  renderBoxAccountingV663(payload);\n  boxStatusV663(\"\");\n  return payload;\n}\nasync function submitBoxFormV663(form,path,success,{reset=!1,idempotencyPrefix=null}={}){const button2=form.querySelector('button[type=\"submit\"]');setLoading(button2,!0);try{const payload=boxFormPayloadV663(form);if(idempotencyPrefix&&(payload.idempotencyKey=boxEntryKeyV664(idempotencyPrefix)),await api(path,{method:\"POST\",body:JSON.stringify(payload),cacheMs:0,timeoutMs:2e4}),boxStatusV663(success),reset){const keepType=form.querySelector('[name=\"type\"]')?.value;form.reset(),keepType&&form.querySelector('[name=\"type\"]')&&(form.querySelector('[name=\"type\"]').value=keepType)}await loadBoxAccountingV663(!0)}catch(error){throw boxStatusV663(error.message||String(error),!0),error}finally{setLoading(button2,!1)}}function setBoxTabV664(tab){document.querySelectorAll(\"[data-box-open-v665]\").forEach(b=>b.classList.toggle(\"active\",b.dataset.boxOpenV665===tab)),document.querySelectorAll(\"[data-box-panel-v664]\").forEach(p=>p.hidden=p.dataset.boxPanelV664!==tab)}document.querySelectorAll(\"[data-box-open-v665]\").forEach(b=>b.addEventListener(\"click\",()=>setBoxTabV664(b.dataset.boxOpenV665))),$2(\"boxPurchaseTypeV663\")?.addEventListener(\"change\",function(){const bonus=this.value===\"collector_bonus\";$2(\"boxPurchaseSkuWrapV663\").hidden=!bonus,$2(\"boxPurchaseNameWrapV663\").hidden=!bonus}),$2(\"boxPurchaseFormV663\")?.addEventListener(\"submit\",e=>{e.preventDefault(),submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/purchases\",\"Purchase recorded. The stock quantity, carrying value and average cost have been updated.\",{reset:!0,idempotencyPrefix:\"purchase\"}).catch(()=>{})}),$2(\"boxWithdrawalFormV664\")?.addEventListener(\"submit\",e=>{e.preventDefault(),submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/manual-withdrawal\",\"Slabs withdrawn at the current weighted-average cost.\",{reset:!0,idempotencyPrefix:\"withdrawal\"}).catch(()=>{})}),$2(\"boxStocktakeFormV663\")?.addEventListener(\"submit\",e=>{e.preventDefault(),submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/stocktake\",\"Stocktake adjustment recorded.\").catch(()=>{})}),$2(\"boxGradingFormV663\")?.addEventListener(\"submit\",e=>{e.preventDefault(),submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/grading\",\"Raw-card carrying value transferred into a grading batch.\",{reset:!0,idempotencyPrefix:\"grading\"}).catch(()=>{})}),$2(\"boxCreditFormV663\")?.addEventListener(\"submit\",e=>{e.preventDefault(),submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/sponsor-credits\",\"Grading credits added.\",{reset:!0,idempotencyPrefix:\"credits\"}).catch(()=>{})}),$2(\"boxTransferFormV663\")?.addEventListener(\"submit\",e=>{e.preventDefault(),submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/pool-transfer\",\"Stock transferred at carrying value.\",{reset:!0,idempotencyPrefix:\"transfer\"}).catch(()=>{})}),$2(\"boxDamageFormV663\")?.addEventListener(\"submit\",e=>{e.preventDefault(),submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/damage\",\"Stock write-off recorded with an audit trail.\",{reset:!0,idempotencyPrefix:\"writeoff\"}).catch(()=>{})}),$2(\"boxBackfillFormV663\")?.addEventListener(\"submit\",e=>{e.preventDefault(),submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/historical-backfill\",\"Historical run recorded without changing live stock.\").catch(()=>{})}),$2(\"boxRunFormV663\")?.addEventListener(\"submit\",e=>{e.preventDefault();const total=e.currentTarget.querySelector('[name=\"packagingCost\"]'),per=e.currentTarget.querySelector('[name=\"packagingCostPerBox\"]');if(Number(total?.value||0)>0&&Number(per?.value||0)>0){boxStatusV663(\"Enter packaging as either a total OR a cost per box, not both.\",!0);return}submitBoxFormV663(e.currentTarget,\"/api/admin/member-box-accounting/runs\",\"Fulfilment run created from canonical monthly parcels.\").catch(()=>{})}),$2(\"boxSettingsFormV666\")?.addEventListener(\"submit\",async e=>{e.preventDefault();const f=e.currentTarget,b=f.querySelector('button[type=\"submit\"]');setLoading(b,!0);try{await api(\"/api/admin/member-box-accounting/settings\",{method:\"POST\",body:JSON.stringify({packagingCost:Number(f.elements.packagingCost.value),parcel1StarterCost:Number(f.elements.parcel1StarterCost.value)}),cacheMs:0}),boxStatusV663(\"Fixed parcel costs saved. Future dispatches will snapshot these values.\"),await loadBoxAccountingV663(!0)}catch(err){boxStatusV663(err.message||String(err),!0)}finally{setLoading(b,!1)}}),$2(\"boxRecipeFormV666\")?.addEventListener(\"change\",changeBoxRecipeV827),$2(\"boxRecipeFormV666\")?.addEventListener(\"input\",event=>{if(event.target.name!==\"boxNumber\")boxRecipeUiV827.dirty=true}),$2(\"boxRecipeFormV666\")?.addEventListener(\"submit\",saveBoxRecipeV827),document.addEventListener(\"click\",boxRecipeClickV827),$2(\"boxAccountingRefreshV663\")?.addEventListener(\"click\",()=>loadBoxAccountingV663(!0).catch(err=>boxStatusV663(err.message,!0))),document.addEventListener(\"click\",async event=>{const monthDetail=event.target.closest(\"[data-box-month-detail-v666]\"),closeMonth=event.target.closest(\"[data-box-close-month-v666]\"),returned=event.target.closest(\"[data-box-mark-returned-v669]\"),repairMoney=event.target.closest(\"[data-box-repair-v663-money]\"),receive=event.target.closest(\"[data-box-receive-grading-v663]\"),cancelGrade=event.target.closest(\"[data-box-cancel-grading-v664]\"),deleteGrade=event.target.closest(\"[data-box-delete-grading-v665]\"),deleteCredit=event.target.closest(\"[data-box-delete-credit-v665]\"),deleteMovement=event.target.closest(\"[data-box-delete-movement-v665]\"),deleteRun=event.target.closest(\"[data-box-delete-run-v665]\"),deleteBackfill=event.target.closest(\"[data-box-delete-backfill-v665]\"),correct=event.target.closest(\"[data-box-correct-movement-v664]\"),reserve=event.target.closest(\"[data-box-reserve-v663]\"),release=event.target.closest(\"[data-box-release-v663]\"),fulfil=event.target.closest(\"[data-box-fulfil-v663]\"),bonus=event.target.closest(\"[data-box-bonus-v663]\");try{if(monthDetail)await loadBoxMonthDetailV666(monthDetail.dataset.boxMonthDetailV666);else if(closeMonth){const el=$2(\"boxMonthDetailV666\");el&&(el.innerHTML=\"\",delete el.dataset.month,boxRecipeUiV827.detailRead++)}else if(returned){const packId=returned.dataset.boxMarkReturnedV669,condition=(prompt(\"Returned parcel condition: enter ALL if all reusable contents came back intact, PARTIAL if only some contents are reusable, or NONE if nothing is reusable.\",\"ALL\")||\"\").trim().toUpperCase();if(![\"ALL\",\"PARTIAL\",\"NONE\"].includes(condition)){boxStatusV663(\"Enter ALL, PARTIAL or NONE.\",!0);return}let body={condition:condition===\"ALL\"?\"all_intact\":condition===\"PARTIAL\"?\"partial\":\"not_reusable\",notes:\"Returned undelivered parcel received back by Orbit.\"};if(condition===\"ALL\")body={...body,recoverPack:!0,recoverSlab:!0,recoverStarter:!0,recoverBonusItemKeys:null};else if(condition===\"NONE\")body={...body,recoverPack:!1,recoverSlab:!1,recoverStarter:!1,recoverBonusItemKeys:[]};else{body.recoverPack=confirm(\"Was the pack returned intact and reusable?\"),body.recoverSlab=confirm(\"Was the slab returned intact and reusable?\"),body.recoverStarter=confirm(\"Was the Parcel 1 Member Card/lanyard returned intact and reusable?\");const bonus2=prompt(\"Enter reusable bonus item codes separated by commas (leave blank if none).\",\"\");body.recoverBonusItemKeys=(bonus2||\"\").split(\",\").map(x=>x.trim()).filter(Boolean)}if(!confirm(\"Mark this shipment received back? Reusable contents will be credited back to stock at their original allocated cost. Original packaging and postage remain a loss.\"))return;await api(\"/api/admin/member-box-accounting/parcels/\"+encodeURIComponent(packId)+\"/returned\",{method:\"POST\",body:JSON.stringify(body),cacheMs:0,timeoutMs:2e4}),boxStatusV663(\"Returned parcel recorded. Reusable contents were credited back; original packaging and postage remain historical cost.\"),await loadBoxAccountingV663(!0);const detail=$2(\"boxMonthDetailV666\");detail?.dataset?.month?await loadBoxMonthDetailV666(detail.dataset.month):await loadBoxMonthDetailV666(\"2026-09\")}else if(repairMoney){const repair=boxAccountingPayloadV663?.legacyMoneyRepair||{};if(!repair.safe){boxStatusV663(repair.message||\"Automatic legacy repair is blocked.\",!0);return}const items=(repair.affectedItems||[]).map(x=>`${x.name||x.itemKey}: ${boxMoneyV663(Number(x.currentValuePence||0)/100)} \\u2192 ${boxMoneyV663(Number(x.repairedValuePence||0)/100)}`).join(`\n`);if(!confirm(`Repair the known V663 \\xA3/pence bug now?\n\n${items}\n\nOpen/cancelled grading raw values will be repaired too. The original ledger entries remain and an audited repair movement is added.`))return;await api(\"/api/admin/member-box-accounting/repair-v663-money\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:25e3}),boxStatusV663(\"Legacy V663 money values repaired. Check Overview & Stock before continuing.\"),await loadBoxAccountingV663(!0)}else if(deleteGrade){const id=deleteGrade.dataset.boxDeleteGradingV665;if(!confirm(\"Delete this grading batch from the working list? If it is still open, Orbit will first return its Raw Cards and Grading Credits. Audit history is retained.\"))return;await api(\"/api/admin/member-box-accounting/grading/\"+encodeURIComponent(id)+\"/delete\",{method:\"POST\",body:JSON.stringify({reason:\"Deleted by Orbit Admin\"}),cacheMs:0}),boxStatusV663(\"Grading batch deleted from the working list; stock and Grading Credits were reconciled.\"),await loadBoxAccountingV663(!0)}else if(deleteCredit){const id=deleteCredit.dataset.boxDeleteCreditV665;if(!confirm(\"Delete this Grading Credit grant? Orbit will only allow this when live grading batches do not depend on the credits.\"))return;await api(\"/api/admin/member-box-accounting/grading-credits/\"+encodeURIComponent(id)+\"/delete\",{method:\"POST\",body:JSON.stringify({reason:\"Deleted by Orbit Admin\"}),cacheMs:0}),boxStatusV663(\"Grading Credit grant deleted and balance recalculated.\"),await loadBoxAccountingV663(!0)}else if(deleteMovement){const id=deleteMovement.dataset.boxDeleteMovementV665;if(!confirm(\"Delete this accounting entry? Orbit will create an audited reversal and recalculate the current inventory. Finalised downstream history will be protected.\"))return;await api(\"/api/admin/member-box-accounting/movements/\"+encodeURIComponent(id)+\"/delete\",{method:\"POST\",body:JSON.stringify({reason:\"Deleted by Orbit Admin\"}),cacheMs:0}),boxStatusV663(\"Entry deleted from current accounting and inventory recalculated. Audit reversal retained.\"),await loadBoxAccountingV663(!0)}else if(deleteRun){const id=deleteRun.dataset.boxDeleteRunV665;if(!confirm(\"Delete this unfinalised fulfilment run? Reserved stock will be released first.\"))return;await api(\"/api/admin/member-box-accounting/runs/\"+encodeURIComponent(id)+\"/delete\",{method:\"POST\",body:JSON.stringify({reason:\"Deleted by Orbit Admin\"}),cacheMs:0}),boxStatusV663(\"Fulfilment run deleted; any reservation was released.\"),await loadBoxAccountingV663(!0)}else if(deleteBackfill){const id=deleteBackfill.dataset.boxDeleteBackfillV665;if(!confirm(\"Delete this historical backfill from reporting? The audit record will be retained.\"))return;await api(\"/api/admin/member-box-accounting/historical-backfill/\"+encodeURIComponent(id)+\"/delete\",{method:\"POST\",body:JSON.stringify({reason:\"Deleted by Orbit Admin\"}),cacheMs:0}),boxStatusV663(\"Historical backfill deleted from current reporting.\"),await loadBoxAccountingV663(!0)}else if(receive){const batch=(boxAccountingPayloadV663?.gradingBatches||[]).find(b=>b.batch_id===receive.dataset.boxReceiveGradingV663),returned2=Number(batch?.quantity_sent||0),acceptedRaw=prompt(`This batch sent ${returned2} cards. How many returned slabs are good enough for Members Club boxes?`,String(returned2));if(acceptedRaw===null)return;const accepted=Number(acceptedRaw);if(!Number.isInteger(accepted)||accepted<0||accepted>returned2){boxStatusV663(\"Accepted slabs must be a whole number between 0 and the total returned.\",!0);return}const written=returned2-accepted;let reason=\"\";if(written&&(reason=prompt(`${written} slab(s) will be written off and will NOT enter the Members Club slab pool. Reason:`,\"Grade 8 or below \\u2013 giveaway/show stock\")||\"\",!reason.trim())){boxStatusV663(\"A write-off reason is required.\",!0);return}if(!confirm(`Receive ${returned2} slabs?\n\nAccepted into Members Club pool: ${accepted}\nWritten off: ${written}${written?`\nReason: ${reason}`:\"\"}`))return;await api(\"/api/admin/member-box-accounting/grading/\"+encodeURIComponent(receive.dataset.boxReceiveGradingV663)+\"/receive\",{method:\"POST\",body:JSON.stringify({quantityReceived:returned2,acceptedQuantity:accepted,writtenOffQuantity:written,writeOffReason:reason||null}),cacheMs:0}),boxStatusV663(`Grading received: ${accepted} added to Box Slabs${written?`, ${written} written off with their allocated cost`:\"\"}.`),await loadBoxAccountingV663(!0)}else if(cancelGrade){const why=prompt(\"Why are you cancelling/correcting this unreceived grading batch?\",\"Correct incorrect grading entry\");if(why===null||!confirm(\"Cancel this grading batch? Raw cards and Grading Credits will be returned so you can enter it again correctly.\"))return;await api(\"/api/admin/member-box-accounting/grading/\"+encodeURIComponent(cancelGrade.dataset.boxCancelGradingV664)+\"/cancel\",{method:\"POST\",body:JSON.stringify({reason:why}),cacheMs:0}),boxStatusV663(\"Grading batch cancelled. Raw cards and Grading Credits were restored; you can enter the batch again correctly.\"),await loadBoxAccountingV663(!0)}else if(correct){const movement=(boxAccountingPayloadV663?.ledger||[]).find(x=>x.movement_id===correct.dataset.boxCorrectMovementV664);if(!movement)return;const oldQty=Math.abs(Number(movement.quantity_delta||0)),qtyRaw=prompt(\"Correct quantity:\",String(oldQty));if(qtyRaw===null)return;const quantity=Number(qtyRaw);if(!Number.isInteger(quantity)||quantity<0){boxStatusV663(\"Correct quantity must be a non-negative whole number.\",!0);return}const body={quantity,reason:\"\"};if(movement.movement_type===\"purchase\"){const currentValue=Math.abs(Number(movement.valueDelta||0)),valueRaw=prompt(\"Correct TOTAL amount paid in pounds (\\xA3):\",Number(currentValue).toFixed(2));if(valueRaw===null)return;if(body.totalValue=Number(valueRaw),!Number.isFinite(body.totalValue)||body.totalValue<0){boxStatusV663(\"Enter a valid total amount in pounds.\",!0);return}}body.reason=prompt(\"Reason for correction:\",\"Correct typing/input error\")||\"Correct typing/input error\",await api(\"/api/admin/member-box-accounting/movements/\"+encodeURIComponent(movement.movement_id)+\"/correct\",{method:\"POST\",body:JSON.stringify(body),cacheMs:0}),boxStatusV663(\"Correction recorded. The original ledger entry remains visible and the current inventory has been adjusted.\"),await loadBoxAccountingV663(!0)}else if(reserve)await api(\"/api/admin/member-box-accounting/runs/\"+encodeURIComponent(reserve.dataset.boxReserveV663)+\"/reserve\",{method:\"POST\",body:\"{}\",cacheMs:0}),boxStatusV663(\"Expected stock reserved for the run.\"),await loadBoxAccountingV663(!0);else if(release)await api(\"/api/admin/member-box-accounting/runs/\"+encodeURIComponent(release.dataset.boxReleaseV663)+\"/release\",{method:\"POST\",body:JSON.stringify({reason:\"Released by Orbit Admin\"}),cacheMs:0}),boxStatusV663(\"Reservation released without consumption.\"),await loadBoxAccountingV663(!0);else if(fulfil){if(!confirm(\"Finalise this run and permanently consume the reserved inventory at its current historical cost basis?\"))return;await api(\"/api/admin/member-box-accounting/runs/\"+encodeURIComponent(fulfil.dataset.boxFulfilV663)+\"/fulfil\",{method:\"POST\",body:\"{}\",cacheMs:0,timeoutMs:25e3}),boxStatusV663(\"Run fulfilled. Historical costs, bonus receipt history, postage and canonical billing revenue were captured.\"),await loadBoxAccountingV663(!0)}else if(bonus){const runId=bonus.dataset.boxBonusV663,run=(boxAccountingPayloadV663?.runs||[]).find(r=>r.runId===runId),sku=prompt(\"Collector bonus item code to allocate to this run:\");if(!sku)return;const scope=prompt(\"Parcel sequence to receive this item (for example 1 for first-ever parcels). Leave blank for all parcels in this run:\",\"\");if(scope===null)return;const parcelNumber=scope.trim()?Number(scope):null;if(scope.trim()&&(!Number.isInteger(parcelNumber)||parcelNumber<1)){boxStatusV663(\"Parcel sequence must be a positive whole number.\",!0);return}const scopePackIds=(run?.parcels||[]).filter(p=>parcelNumber==null||Number(p.parcelNumber)===parcelNumber).map(p=>p.packId);if(!scopePackIds.length){boxStatusV663(\"No parcels in this run match that parcel sequence.\",!0);return}const affected=((await api(\"/api/admin/member-box-accounting/runs/\"+encodeURIComponent(runId)+\"/bonus-warning?sku=\"+encodeURIComponent(sku),{cacheMs:0})).affected||[]).filter(a=>scopePackIds.includes(a.packId));if(affected.length&&!confirm(`${affected.length} selected recipient(s) have already received ${sku}. Continue and automatically exclude those members?`))return;await api(\"/api/admin/member-box-accounting/runs/\"+encodeURIComponent(runId)+\"/bonus-allocation\",{method:\"POST\",body:JSON.stringify({sku,packIds:scopePackIds,excludePriorRecipients:!0}),cacheMs:0});let message=`${sku} allocated to ${scopePackIds.length-affected.length} parcel(s).`;if(affected.length){const alternate=prompt(`${affected.length} recipient(s) were excluded because they already had ${sku}. Enter an alternative collector bonus item code for just those members, or leave blank to decide later:`,\"\");alternate?.trim()?(await api(\"/api/admin/member-box-accounting/runs/\"+encodeURIComponent(runId)+\"/bonus-allocation\",{method:\"POST\",body:JSON.stringify({sku:alternate.trim(),packIds:affected.map(a=>a.packId),excludePriorRecipients:!0}),cacheMs:0}),message+=` Alternative ${alternate.trim()} was allocated to eligible excluded recipients.`):message+=` ${affected.length} excluded recipient(s) remain available for an alternative variant.`}boxStatusV663(message),await loadBoxAccountingV663(!0)}}catch(error){boxStatusV663(error.message||String(error),!0)}}),document.querySelectorAll(\"[data-prize-refresh-v540]\").forEach(button2=>button2.addEventListener(\"click\",()=>loadPrizeSchedulesV536().catch(err=>setNotice2(err.message||err,!0)))),$2(\"loadGoldenTicketScheduleButton\")?.addEventListener(\"click\",()=>loadPrizeSchedulesV536().catch(err=>setNotice2(err.message||err,!0))),$2(\"saveGoldenTicketScheduleButton\")?.addEventListener(\"click\",saveGoldenTicketScheduleV536),$2(\"saveMonthlyDrawScheduleButton\")?.addEventListener(\"click\",saveMonthlyDrawScheduleV536);function orbitPaAuthHeadersV802(extra={}){const headers=Object.assign({},extra||{});return adminSessionTokenV329&&(headers.Authorization=\"Bearer \"+adminSessionTokenV329),headers}async function orbitPaRawFetchV802(path,options={}){const url=API_BASE+path+(path.includes(\"?\")?\"&\":\"?\")+\"secret=\"+encodeURIComponent(secret),response=await fetch(url,Object.assign({cache:\"no-store\"},options,{headers:orbitPaAuthHeadersV802(options.headers||{})}));if(!response.ok){let detail={};try{detail=await response.json()}catch{}throw Object.assign(new Error(detail.error||\"Case Tracker request failed (HTTP \"+response.status+\").\"),{status:response.status,data:detail})}return response}const orbitPaBridgeV803={release:ORBIT_RELEASE,api:(path,options)=>api(path,options),readJson:async(path,options={})=>{const controller=new AbortController,timeoutMs=Math.max(3e3,Math.min(3e4,Number(options.timeoutMs||15e3))),timer=setTimeout(()=>controller.abort(),timeoutMs);try{return(await orbitPaRawFetchV802(path,{method:\"GET\",signal:options.signal||controller.signal})).json()}finally{clearTimeout(timer)}},loadGmail:()=>loadGmailHubV734(),setView:view=>{commsSetViewV736(view),rememberOrbitSubtab(\"gmail-hub\",view),updateAdminRouteLocationV5991(primaryRouteForModuleV5991(\"gmail-hub\",view),\"gmail-hub\",view,\"push\")},notify:(message,bad)=>setNotice2(message,bad),uploadDocument:async(caseId,file,metadata={})=>{const documentId=\"DOC-UPLOAD-\"+(crypto.randomUUID?crypto.randomUUID():Date.now().toString(36)),headers={\"Content-Type\":file.type||\"application/octet-stream\",\"X-File-Name\":encodeURIComponent(file.name||\"evidence\"),\"X-Mime-Type\":encodeURIComponent(file.type||\"application/octet-stream\"),\"X-Document-Title\":encodeURIComponent(metadata.title||file.name||\"Evidence\"),\"X-Document-Date\":encodeURIComponent(metadata.document_date||\"\"),\"X-Document-Direction\":encodeURIComponent(metadata.direction||\"reference\"),\"X-Document-Category\":encodeURIComponent(metadata.category||\"evidence\"),\"X-Source-Type\":encodeURIComponent(metadata.source_type||\"owner_upload\"),\"X-Document-Notes\":encodeURIComponent(metadata.notes||\"\")};return(await orbitPaRawFetchV802(\"/api/admin/case-tracker/cases/\"+encodeURIComponent(caseId)+\"/documents/\"+encodeURIComponent(documentId)+\"/content\",{method:\"PUT\",headers,body:file})).json()},fetchDocument:async(caseId,documentId)=>{const response=await orbitPaRawFetchV802(\"/api/admin/case-tracker/cases/\"+encodeURIComponent(caseId)+\"/documents/\"+encodeURIComponent(documentId)+\"/view\"),blob=await response.blob(),disposition=response.headers.get(\"content-disposition\")||\"\",match=disposition.match(/filename\\*=UTF-8''([^;]+)/i);return{blob,contentType:response.headers.get(\"content-type\")||blob.type||\"application/octet-stream\",filename:match?decodeURIComponent(match[1]):\"case-evidence\"}},downloadDocument:async(caseId,documentId)=>{const response=await orbitPaRawFetchV802(\"/api/admin/case-tracker/cases/\"+encodeURIComponent(caseId)+\"/documents/\"+encodeURIComponent(documentId)+\"/download\"),blob=await response.blob(),url=URL.createObjectURL(blob),a=document.createElement(\"a\"),match=(response.headers.get(\"content-disposition\")||\"\").match(/filename\\*=UTF-8''([^;]+)/i);a.download=match?decodeURIComponent(match[1]):\"case-evidence\",a.href=url,document.body.appendChild(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(url),1e3)},downloadCaseExport:async caseId=>{const blob=await(await orbitPaRawFetchV802(\"/api/admin/case-tracker/cases/\"+encodeURIComponent(caseId)+\"/export\")).blob(),url=URL.createObjectURL(blob),a=document.createElement(\"a\");a.download=caseId+\".json\",a.href=url,document.body.appendChild(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(url),1e3)},downloadCasePath:async path=>{if(!String(path||\"\").startsWith(\"/api/admin/case-tracker/\"))throw new Error(\"Unsafe Case Tracker download path.\");const response=await orbitPaRawFetchV802(path),blob=await response.blob(),url=URL.createObjectURL(blob),a=document.createElement(\"a\"),disposition=response.headers.get(\"content-disposition\")||\"\",match=disposition.match(/filename\\*=UTF-8''([^;]+)/i);a.download=match?decodeURIComponent(match[1]):\"case-document\",a.href=url,document.body.appendChild(a),a.click(),a.remove(),setTimeout(()=>URL.revokeObjectURL(url),1e3)}};window.OrbitPaBridgeV809=orbitPaBridgeV803,window.OrbitPaBridgeV807=orbitPaBridgeV803,window.OrbitPaBridgeV808=orbitPaBridgeV803,window.OrbitPaBridgeV806=orbitPaBridgeV803,window.OrbitPaBridgeV805=orbitPaBridgeV803,window.OrbitPaBridgeV804=orbitPaBridgeV803,window.OrbitPaBridgeV803=orbitPaBridgeV803,window.OrbitPaBridgeV802=orbitPaBridgeV803})(),document.addEventListener(\"change\",event=>{if(event.target?.id===\"vendorCompEvent\"){const ev=selectedVendorEventV388(\"vendorCompEvent\");$(\"vendorCompEventDate\")&&($(\"vendorCompEventDate\").value=ev.date||\"\")}if(event.target?.id===\"vendorTransferEvent\"){const ev=selectedVendorEventV388(\"vendorTransferEvent\");$(\"vendorTransferEventDate\")&&($(\"vendorTransferEventDate\").value=ev.date||\"\"),loadVendorTransferPricingV485().catch(err=>setNotice(err.message||err,!0))}});\n//# sourceMappingURL=/cdn/shop/t/39/assets/admin-os.js.map?orbit_build=V830.0.0&v=5399860409228118311793444870\n"],
  "mappings": "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",
  "names": ["button", "history", "id", "secret", "state", "recipe"]
}
