1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4636],{96691:(e,t,a)=>{"use strict";a.r(t),a.d(t,{default:()=>s});var r,n,o,i=a(12115);function c(){return(c=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var r in a)Object.prototype.hasOwnProperty.call(a,r)&&(e[r]=a[r])}return e}).apply(this,arguments)}let s=function(e){return i.createElement("svg",c({viewBox:"0 0 340 27",fill:"none",xmlns:"http://www.w3.org/2000/svg"},e),r||(r=i.createElement("path",{d:"M340 22.987v-3.686h-9.448V4.29h-4.125v18.696H340zm-25.151-7.9h-5.056l2.528-6.056 2.528 6.057zm7.585 7.9L314.317 4.16h-3.859l-8.117 18.827h4.258l1.73-4.213h7.984l1.73 4.213h4.391zm-27.412-12.244c0 1.58-1.198 2.633-3.194 2.633h-4.259V7.978h4.126c2.129 0 3.327.922 3.327 2.765zm4.79 12.244l-4.657-6.714c2.395-.922 3.992-2.765 3.992-5.793 0-3.819-2.662-6.189-7.053-6.189h-8.65v18.696h4.125v-5.924h3.327l3.992 5.924h4.924zM279.319 8.11V4.29H263.75V8.11h5.722v14.877h4.125V8.11h5.722zm-19.961 14.877V4.291h-4.125v11.455L246.45 4.29h-3.859v18.696h4.125v-11.85l9.182 11.85h3.46zm-21.558 0v-3.686h-10.246v-3.95h8.916v-3.687h-8.916V7.978h10.113V4.291h-14.238v18.696H237.8zm-18.763-3.028l-2.661-2.633c-1.464 1.316-2.795 2.238-4.924 2.238-3.194 0-5.456-2.633-5.456-5.925 0-3.16 2.262-5.793 5.456-5.793 1.863 0 3.327.79 4.791 2.107l2.661-3.028c-1.73-1.712-3.859-2.897-7.452-2.897-5.855 0-9.847 4.345-9.847 9.611 0 5.398 4.125 9.612 9.714 9.612 3.726 0 5.855-1.317 7.718-3.292zm-92.086 3.028v-3.686h-10.247v-3.95h8.916v-3.687h-8.916V7.978h10.114V4.291h-14.239v18.696h14.372zM108.321 8.11V4.29h-15.57V8.11h5.723v14.877h4.125V8.11h5.722zm-23.288 6.978h-5.056l2.528-6.057 2.528 6.057zm7.452 7.9L84.501 4.16h-3.86l-8.117 18.827h4.259l1.73-4.213h7.984l1.73 4.213h4.258zm-23.953 0V4.29h-4.524l-4.924 7.9-4.924-7.9h-4.524v18.696h4.125V10.875l5.19 7.9h.133l5.323-8.032v12.244h4.125zM43.914 4.29h-4.125v18.696h4.125V4.291zm-8.517 18.696v-3.686H25.95V4.29h-4.125v18.696h13.573zM17.433 19.96l-2.662-2.633c-1.464 1.316-2.795 2.106-4.924 2.106-3.193 0-5.456-2.633-5.456-5.924 0-3.16 2.263-5.793 5.456-5.793 1.863 0 3.327.79 4.791 2.106l2.661-3.028c-1.73-1.712-3.859-2.897-7.452-2.897C3.992 4.028 0 8.373 0 13.64c0 5.398 4.125 9.612 9.714 9.612 3.593 0 5.722-1.317 7.719-3.292zM157.026 18.773c-1.597 1.317-3.194 2.107-5.456 2.107-3.859 0-6.787-3.16-6.787-7.241v-.132c0-4.081 2.928-7.241 6.787-7.241 1.996 0 3.593.658 5.456 2.238 1.065-1.58 2.529-2.897 4.392-3.687l-.134-.131c-2.661-2.633-5.722-3.818-9.714-3.818-7.319 0-12.908 5.398-12.908 12.64v.13c0 3.424 1.331 6.584 3.593 8.954 2.395 2.37 5.589 3.686 9.049 3.686 4.125 0 6.92-1.185 9.714-3.95-1.597-.921-3.06-2.106-3.992-3.555zM178.318 1c-3.86 0-7.186 1.448-9.582 3.95 1.863.79 3.327 2.106 4.392 3.686 1.197-1.316 3.06-2.238 5.19-2.238 3.992 0 7.052 3.16 7.052 7.241v.132c0 4.081-3.06 7.11-6.919 7.11-2.13 0-3.86-.79-5.19-2.239-1.065 1.712-2.662 3.029-4.525 3.687 2.396 2.37 5.722 3.818 9.582 3.818 7.318 0 13.174-5.53 13.174-12.64C191.359 6.399 185.77 1 178.318 1z",fill:"#fff"})),n||(n=i.createElement("path",{d:"M157.559 13.64c0-4.082 3.326-7.373 7.452-7.373 4.125 0 7.452 3.291 7.452 7.373 0 4.081-3.327 7.373-7.452 7.373-4.126 0-7.452-3.292-7.452-7.373z",fill:"#fff"})),o||(o=i.createElement("path",{d:"M165.011 21.013c-4.126 0-7.452-3.292-7.452-7.373 0-4.082 3.326-7.373 7.452-7.373 0 0-3.194 3.554-3.194 7.373 0 3.818 3.194 7.373 3.194 7.373z",fill:"#DCDDDE"})))}},32605:(e,t,a)=>{"use strict";a.d(t,{default:()=>x});var r=a(12115),n=a(50376),o=a(8242),i=a(89792),c=a(94408),s=a(2365);let d=new Set(["custom_page_view","begin_checkout","purchase","form_error","form_submit","transaction","ga_purchase","ga_add_to_cart","ga_remove_from_cart","fundraising_page_sign_up","fundraising_team_sign_up","add_payment_info","studio_checkout_cta_hover","studio_inline_amount_change","studio_inline_frequency_change","studio_form_amount_change","studio_form_frequency_change","studio_checkout_close","studio_form_error","studio_form_start","studio_form_back","studio_form_skip","studio_faq_open","studio_faq_expand","share","embedded-giving:modal:track-event:open","embedded-giving:inline:track-event:open","embedded-giving:modal:track-payment-methods","embedded-giving:inline:payment-methods","embedded-giving:modal:payment-method-details","embedded-giving:inline:payment-method-details","embedded-giving:modal:recurring-nudge","embedded-giving:inline:recurring-nudge","embedded-giving:modal:contact","embedded-giving:inline:contact","embedded-giving:modal:thank-you","embedded-giving:inline:thank-you","embedded-giving:modal:faq","embedded-giving:inline:faq"]),l=new Set(["transaction","purchase","ga_purchase"]),p=new Set(["canceled","cancelled","declined","error","errored","failed","failure","refunded","voided"]),u=new WeakSet;function m(e){return!!e&&"object"==typeof e&&!Array.isArray(e)}function f(e,t){let a=e[t];return m(a)?a:void 0}function h(e,t){if(!e)return;let a=e[t];return Array.isArray(a)?a:void 0}function g(e,t){if(!e)return;let a=e[t];return"string"==typeof a?a.trim():void 0}function y(e){return Object.entries(e).reduce((e,t)=>
1{let[a,r]=t;return null!=r&&("string"==typeof r?""!==r.trim():!Array.isArray(r)||r.length>0)&&(e[a]=r),e},{})}function b(e,t){if(e?.length)return e.reduce((e,a)=>{if(!m(a))return e;let r=a[t];return"number"==typeof r&&Number.isFinite(r)?e+r:e},0)||void 0}var w=a(95155);function v(){let e=(0,n.usePathname)(),t=(0,n.useSearchParams)(),a=(0,o.sf)(),i=t.toString();return(0,r.useEffect)(()=>{if(!e)return;let t=`${window.location.origin}${e}${i?`?${i}`:""}`;(0,s.L0)(window.sessionStorage,e,i),a.capture("$pageview",{$current_url:t}),(0,c.Gr)()},[e,a,i]),null}function _(){let e=(0,o.sf)();return(0,r.useEffect)(()=>(function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:()=>window.location.href,a=Array.isArray(window.dataLayer)?window.dataLayer:window.dataLayer=[],r=a.push,n=a=>{if(m(a)){if(u.has(a))return;u.add(a)}let r=function(e){var t;if(!m(e)||"string"!=typeof e.event)return null;let a=f(e,"transaction");if(!function(e,t){if(!l.has(e)||!t)return!1;let a=g(t,"status")?.toLowerCase();return!a||!p.has(a)}(e.event,a))return null;let r=(t=g(a,"email"))?t.trim().toLowerCase():"";return r?y({email:r,first_name:g(a,"first_name")||g(a,"firstName"),last_name:g(a,"last_name")||g(a,"lastName"),gofundme_pro_transaction_id:a?.id,gofundme_pro_member_id:a?.member_id,gofundme_pro_campaign_id:a?.campaign_id,gofundme_pro_organization_id:a?.organization_id,gofundme_pro_last_donation_gross_amount:a?.donation_gross_amount,gofundme_pro_last_total_gross_amount:a?.total_gross_amount,gofundme_pro_last_currency_code:a?.charged_currency_code??a?.raw_currency_code,gofundme_pro_last_donation_frequency:a?.frequency??a?.donation_frequency,gofundme_pro_last_donation_at:a?.purchased_at??a?.created_at}):null}(a);r&&e.setPersonProperties?.(r);let n=function(e,t){var a,r,n,o,i,c,s,l;if(!m(e)||"string"!=typeof e.event)return null;let p=e.event;if(s=e,l=p,!(d.has(l)&&(l.startsWith("studio_")||l.startsWith("embedded-giving:")||f(s,"campaign")||f(s,"organization")||f(s,"transaction")||f(s,"fundraiser")||f(s,"team")||f(s,"page"))))return null;let u=y({source:"gofundme_pro_data_layer",gofundme_pro_event:p,$current_url:t,...(a=f(e,"campaign"),y({campaign_id:a?.id,campaign_name:a?.name,campaign_type:a?.type,campaign_country:a?.country,campaign_designation_id:a?.designation_id,campaign_normalized_goal:a?.normalized_goal,campaign_raw_goal:a?.raw_goal})),...(r=f(e,"organization"),y({organization_id:r?.id,organization_name:r?.name})),...function(e){let t=h(e,"items");return y({transaction_id:e?.id,transaction_type:e?.type,transaction_status:e?.status,campaign_id:e?.campaign_id,organization_id:e?.organization_id,designation_id:e?.designation_id,designation_name:e?.designation_name,donation_gross_amount:e?.donation_gross_amount,donation_net_amount:e?.donation_net_amount,raw_donation_gross_amount:e?.raw_donation_gross_amount,total_gross_amount:e?.total_gross_amount,raw_total_gross_amount:e?.raw_total_gross_amount,charged_total_gross_amount:e?.charged_total_gross_amount,currency_code:e?.charged_currency_code??e?.raw_currency_code,charged_currency_code:e?.charged_currency_code,raw_currency_code:e?.raw_currency_code,donation_frequency:e?.frequency??e?.donation_frequency,fee_on_top:e?.fee_on_top??e?.donation_fee_on_top??e?.registration_fee_on_top,has_dedication:e?.has_dedication,is_anonymous:e?.is_anonymous,is_gift_aid:e?.is_gift_aid,recurring_donation_plan_id:e?.recurring_donation_plan_id,fundraising_page_id:e?.fundraising_page_id,fundraising_team_id:e?.fundraising_team_id,promo_code_code:e?.promo_code_code,purchased_at:e?.purchased_at,transaction_created_at:e?.created_at,transaction_items_count:t?.length,transaction_items_total_price:b(t,"price")})}(f(e,"transaction")),...function(e){let t=e?f(e,"purchase"):void 0,a=t?f(t,"actionField"):void 0,r=function(e){let t=e?f(e,"purchase"):void 0,a=e?f(e,"add"):void 0,r=e?f(e,"remove"):void 0;return h(t,"products")||h(a,"products")||h(r,"products")}(e);return y({ecommerce_purchase_id:a?.id,ecommerce_revenue:a?.revenue,ecommerce_coupon:a?.coupon,ecommerce_products_count:r?.length,ecommerce_products_total_price:b(r,"price"),ecommerce_product_categories:function(e){if(!e?.length)return;let t=e.reduce((e,t)=>
1(!m(t)||"string"!=typeof t.category||e.includes(t.category)||e.push(t.category),e),[]);return t.length?t:void 0}(r)})}(f(e,"ecommerce")),...(n=f(e,"fundraiser"),y({fundraiser_id:n?.id,campaign_id:n?.campaign_id,organization_id:n?.organization_id,designation_id:n?.designation_id,fundraiser_status:n?.status,fundraiser_team_role:n?.team_role,fundraiser_normalized_goal:n?.normalized_goal,fundraiser_raw_goal:n?.raw_goal,currency_code:n?.normalized_currency_code??n?.raw_currency_code})),...(o=f(e,"team"),y({team_id:o?.id,team_normalized_goal:o?.normalized_goal,team_raw_goal:o?.raw_goal,team_total_donations:o?.total_donations,team_total_donors:o?.total_donors,team_total_fundraisers:o?.total_fundraisers,team_total_raised:o?.total_raised,team_percent_to_goal:o?.percent_to_goal,currency_code:o?.normalized_currency_code??o?.raw_currency_code})),...(i=f(e,"page"),y({gofundme_pro_page_name:i?.name})),...(c=f(e,"member"),y({gofundme_pro_member_logged_in:c?.loggedIn}))});return{event:`gofundme_pro_${p.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"")}`,properties:u}}(a,t());n&&e.capture(n.event,n.properties)},o=function(){for(var e=arguments.length,t=Array(e),o=0;o<e;o++)t[o]=arguments[o];let i=r.apply(a,t);return t.forEach(n),i};return a.push=o,a.forEach(n),()=>{a.push===o&&(a.push=r)}})({capture:(t,a)=>{e.capture(t,a)},setPersonProperties:t=>{e.setPersonProperties(t)}}),[e]),null}function x(e){let{children:t}=e;return(0,w.jsxs)(o.so,{client:i.A,children:[(0,w.jsx)(_,{}),(0,w.jsx)(r.Suspense,{fallback:null,children:(0,w.jsx)(v,{})}),t]})}},64303:(e,t,a)=>{"use strict";a.d(t,{StandalonePreviewFeedback:()=>M});var r=a(12115),n=a(77552),o=a(50376),i=a(83039);let c={id:"uncategorized",title:"Needs context",description:"This copy path does not yet have route context.",keyPrefixes:[],routes:[],editorNotes:["Add this path or prefix to copyContext.ts before relying on inline copy editing."]},s=[{id:"match-detail",title:"Match detail page",description:"Match hero, forecast module, performance-impairing heat narrative, related teams/stadiums, and match share copy.",keyPrefixes:["detail.match","forecast"],routes:[{label:"Future match with forecast",href:"/world-cup-2026/matches/9014?worldCupMatches=fake&worldCupFakeMatchSeed=team-review&worldCupFakeMatchToday=2026-06-10",state:"future",modifiers:["forecast-on","seeded-fake-data"]},{label:"Match-day copy state",href:"/world-cup-2026/matches/9016?worldCupMatches=fake&worldCupFakeMatchSeed=team-review&worldCupFakeMatchToday=2026-06-10",state:"match-day",modifiers:["seeded-fake-data"]},{label:"Past match copy state",href:"/world-cup-2026/matches/9001?worldCupMatches=fake&worldCupFakeMatchSeed=team-review&worldCupFakeMatchToday=2026-06-10",state:"past",modifiers:["seeded-fake-data"]}],lifecycleStates:["future","match-day","past"],modifiers:["forecast-on","forecast-off","seeded-fake-data"],editorNotes:["Match copy changes with lifecycle state; use seeded fake match links to review future, match-day, and past states.","Forecast copy is a data modifier, not a match lifecycle state.","Templated strings must preserve required tokens such as {matchDate}, {homeTeam}, {chanceVerb}, and {chance}."]},{id:"home",title:"Homepage and tournament dashboard",description:"Homepage hero, Climate Watch, dashboard, upcoming matches, and explore-card copy.",keyPrefixes:["home"],routes:[{label:"Homepage",href:"/world-cup-2026"}],editorNotes:["Homepage copy is often first-viewport copy; check mobile wrapping after edits."]},{id:"about",title:"About this hub",description:"Methodology, data notes, source links, contact copy, and rich inline-link paragraphs.",keyPrefixes:["about"],routes:[{label:"About this hub",href:"/world-cup-2026/about"}],editorNotes:["Rich placeholders such as {matchesAnalysisLink} are rendered as inline links."]},{id:"shared",title:"Shared World Cup UI language",description:"Shared labels, controls, entity display names, metadata, OG text, and shareable copy.",keyPrefixes:["metadata","shell","pages","cards","controls","formatting","flag","entities","dataCallout","heatRisk","venueClimate","search","detail.shared","explainer","bracket","matchList","resources","shareable","og","charts"],routes:[{label:"Matches",href:"/world-cup-2026/matches"},{label:"Teams",href:"/world-cup-2026/teams"},{label:"Stadiums",href:"/world-cup-2026/stadiums"},{label:"Tournament overview",href:"/world-cup-2026/bracket"}
1],editorNotes:["Shared strings may appear on multiple pages; review route references before changing tone."]}];function d(e,t){return Math.max(...e.keyPrefixes.filter(e=>t===e||t.startsWith(`${e}.`)).map(e=>e.length),0)}Array.from(new Map((function e(t){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";return"string"==typeof t?a?[{path:a,value:t}]:[]:!t||"object"!=typeof t||Array.isArray(t)?[]:Object.entries(t).flatMap(t=>{let[r,n]=t;return e(n,a?`${a}.${r}`:r)})})(i.CJ).map(e=>[e.path,e])).values()).map(e=>({...e,surface:function(e){return s.filter(t=>t.keyPrefixes.some(t=>e===t||e.startsWith(`${t}.`))).sort((t,a)=>d(a,e)-d(t,e))[0]??null}(e.path)??c}));let l="src/app/world-cup-2026/i18n/en.json",p=["metadata.","og.","entities."],u=(function e(t){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if("string"==typeof t){let e=h(g(t));return a?[{path:a,value:t,normalizedValue:e,templateTokens:function(e){let t;let a=new Set,r=/\{([A-Za-z0-9_]+)\}/g;for(;t=r.exec(e);)a.add(t[1]);return Array.from(a)}(t)}]:[]}return!t||"object"!=typeof t||Array.isArray(t)?[]:Object.entries(t).flatMap(t=>{let[r,n]=t;return e(n,a?`${a}.${r}`:r)})})(i.CJ).filter(e=>!p.some(t=>e.path.startsWith(t))),m=s.flatMap(e=>e.routes.filter(e=>e.state).map(e=>({href:e.href,state:e.state})));function f(e,t,a){return Math.min(1,Number((e+(("/world-cup-2026"===a?["home","cards","matchList","dataCallout","heatRisk","venueClimate","controls","scrollCue"]:a.startsWith("/world-cup-2026/matches/")?["detail.match","detail.shared","forecast","heatRisk","venueClimate"]:a.startsWith("/world-cup-2026/matches")?["pages.matches","matchList","cards","heatRisk","venueClimate"]:a.startsWith("/world-cup-2026/teams/")?["detail.team","detail.shared","cards.team","heatRisk","venueClimate"]:a.startsWith("/world-cup-2026/teams")?["pages.teams","cards.team","heatRisk","venueClimate"]:a.startsWith("/world-cup-2026/stadiums/")?["detail.stadium","detail.shared","cards.city","charts","heatRisk","venueClimate"]:a.startsWith("/world-cup-2026/stadiums")?["pages.stadiums","cards.city","charts","heatRisk","venueClimate"]:a.startsWith("/world-cup-2026/about")?["about"]:a.startsWith("/world-cup-2026/bracket")?["bracket","pages.bracket","home.dashboard","heatRisk"]:[]).some(e=>t===e||t.startsWith(`${e}.`))?.04:0)).toFixed(2)))}function h(e){return e.replace(/\s+/g," ").trim()}function g(e){return e.replace(/<\/?[A-Za-z0-9_]+>/g,"")}function y(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}let b="climatecentral-org",w=`cc_preview_feedback_session:${b}`,v="internalAccessToken",_="cc-copy-edit-root",x="cc-copy-edit-image-root",k="cc-copy-edit-style",$=new Set(["image/gif","image/heic","image/jpeg","image/png","image/svg+xml","image/tiff","image/webp","image/vnd.microsoft.icon"]),C="Draft page text and image changes on this preview. Submitting sends a request to Notion; it does not change site content.",A=new Set(["1","true","yes","on"]),E=new Set(["0","false","no","off","hide","hidden","disabled"]),L="h1,h2,h3,h4,h5,h6,p,li,blockquote,figcaption,caption,dt,dd,summary,a,button,label,th,td,span,strong,em";function M(e){let{apiBaseUrl:t,deploymentContext:a,branch:n,commitSha:i,productionAutoLoad:c,internalReviewAccess:s}=e,d=(0,o.usePathname)(),p=(0,o.useSearchParams)(),M=`${d||""}?${p?.toString()||""}`;return(0,r.useEffect)(()=>{if(!t||!function(e){var t,a,r;let{productionAutoLoad:n,currentUrl:o=new URL(window.location.href)}=e;if(a=t=o.searchParams,r="hidePreviewFeedback",A.has(S(a.get(r)))||E.has(S(t.get("previewFeedback"))))return!1;if(n||o.searchParams.has(v)||z()||function(){try{return!!window.localStorage.getItem(w)}catch{return!1}}())return!0;let i=o.hostname;return"localhost"===i||"127.0.0.1"===i||i.endsWith(".localhost")||i.endsWith(".vercel.app")||i.endsWith(".netlify.app")}({productionAutoLoad:c}))return;let e=!1,r=t.replace(/\/+$/,""),o=z(),d={appId:b,apiBaseUrl:r,enabled:!0,deploymentContext:a,branch:n,commitSha:i,internalReviewAccess:s,captureScreenshot:N,extensions:function(e){let t=[{id:"copy-edit-mode",label:"Request copy edit",placement:"panel",run:()=>{(function(e){if(document.getElementById(_))return;(function(){if(document.getElementById(k))return;let e=document.createElement("style");e.id=k,e.textContent=` 2 #${_}, 3 #${_} *, 4 #${x}, 5 #${x} * { 6 box-sizing: border-box; 7 font-family: var(--font-work-sans, "Work Sans", Arial, sans-serif); 8 } 9 #${x}
9 { 10 inset: 0; 11 pointer-events: none; 12 position: fixed; 13 z-index: 2147483190; 14 } 15 #${x} input { 16 display: none; 17 } 18 #${x} [data-copy-edit-image-action] { 19 align-items: center; 20 background: #032849; 21 border: 2px solid #fff; 22 border-radius: 999px; 23 box-shadow: 0 5px 16px rgba(3,40,73,.34); 24 color: #fff; 25 cursor: pointer; 26 display: inline-flex; 27 height: 34px; 28 justify-content: center; 29 padding: 0; 30 pointer-events: auto; 31 position: fixed; 32 width: 34px; 33 } 34 #${x} [data-copy-edit-image-action][hidden] { 35 display: none; 36 } 37 #${x} [data-copy-edit-image-action]:hover, 38 #${x} [data-copy-edit-image-action]:focus-visible { 39 background: #0d7280; 40 outline: 3px solid rgba(25,181,197,.35); 41 outline-offset: 2px; 42 } 43 #${x} [data-copy-edit-image-selected="true"] { 44 background: #c2410c; 45 } 46 #${x} [data-copy-edit-image-action] svg { 47 height: 17px; 48 width: 17px; 49 } 50 .cc-copy-edit-inline, 51 .cc-copy-edit-template { 52 outline: 2px dashed rgba(13, 114, 128, .72) !important; 53 outline-offset: 4px !important; 54 } 55 .cc-copy-edit-inline { 56 cursor: text !important; 57 } 58 .cc-copy-edit-template { 59 cursor: pointer !important; 60 } 61 .cc-copy-edit-inline-focus, 62 .cc-copy-edit-template-active { 63 outline: 2px solid #db3b28 !important; 64 outline-offset: 4px !important; 65 box-shadow: 0 0 0 4px rgba(219,59,40,.18) !important; 66 } 67 #${_} .cc-copy-edit-panel { 68 position: fixed; 69 left: 18px; 70 bottom: 18px; 71 z-index: 2147483200; 72 width: min(390px, calc(100vw - 36px)); 73 max-height: calc(100vh - 36px); 74 overflow: auto; 75 background: #fff; 76 color: #032849; 77 border: 1px solid #bfd3df; 78 border-radius: 8px; 79 box-shadow: 0 18px 44px rgba(3,40,73,.28); 80 padding: 18px; 81 display: flex; 82 flex-direction: column; 83 gap: 14px; 84 font-size: 14px; 85 line-height: 1.35; 86 } 87 #${_} .cc-copy-edit-header { 88 display: flex; 89 align-items: center; 90 justify-content: space-between; 91 gap: 16px; 92 } 93 #${_} .cc-copy-edit-header-actions { 94 align-items: center; 95 display: inline-flex; 96 flex: 0 0 auto; 97 gap: 8px; 98 } 99 #${_} .cc-copy-edit-title { 100 margin: 0; 101 font-size: 24px; 102 font-weight: 400; 103 line-height: 1.2; 104 } 105 #${_} .cc-copy-edit-message { 106 background: #edf7fa; 107 border-radius: 6px; 108 color: #24465e; 109 font-size: 14px; 110 font-weight: 700; 111 line-height: 1.35; 112 margin: 0; 113 padding: 10px 12px; 114 } 115 #${_} .cc-copy-edit-message-error { 116 background: #ffe5e2; 117 color: #7c1f16; 118 } 119 #${_} .cc-copy-edit-message-success { 120 background: #e8f7f4; 121 color: #06453d; 122 } 123 #${_} .cc-copy-edit-field { 124 display: flex; 125 flex-direction: column; 126 gap: 6px; 127 } 128 #${_} .cc-copy-edit-field label { 129 font-size: 15px; 130 font-weight: 700; 131 line-height: 1.3; 132 } 133 #${_} textarea { 134 width: 100%; 135 border: 1px solid #a9bfcb; 136 border-radius: 6px; 137 color: #032849; 138 font: inherit; 139 font-weight: 500; 140 line-height: 1.4; 141 min-height: 96px; 142 padding: 10px 12px; 143 resize: vertical; 144 } 145 #${_} textarea[readonly] { 146 background: #f7fbfd; 147 color: #426173; 148 min-height: 78px; 149 } 150 #${_} textarea:focus-visible { 151 border-color: #0d7280; 152 box-shadow: 0 0 0 3px rgba(13,114,128,.16); 153 outline: 0; 154 } 155 #${_} .cc-copy-edit-template-editor { 156 display: flex; 157 flex-direction: column; 158 gap: 10px; 159 } 160 #${_} .cc-copy-edit-token-help { 161 color: #426173; 162 font-size: 13px; 163 font-weight: 600; 164 line-height: 1.35; 165 margin: 0; 166 } 167 #${_} .cc-copy-edit-token-help code { 168 background: #edf7fa; 169 border: 1px solid #d8e6ed; 170 border-radius: 4px; 171 color: #0d7280; 172 font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace; 173 font-size: 12px; 174 font-weight: 800; 175 padding: 1px 4px; 176 } 177 #${_} .cc-copy-edit-template-preview { 178 background: #f7fbfd; 179 border: 1px solid #d8e6ed; 180 border-radius: 6px; 181 padding: 10px 12px; 182 } 183 #${_} .cc-copy-edit-template-preview span { 184 color: #426173; 185 display: block; 186 font-size: 11px; 187 font-weight: 800; 188 letter-spacing: 0; 189 line-height: 1.2; 190 margin-bottom: 6px; 191 text-transform: uppercase; 192 } 193 #${_} .cc-copy-edit-template-preview p { 194 color: #24465e; 195 font-size: 13px; 196 font-weight: 600; 197 line-height: 1.35; 198 margin: 0; 199 } 200 #${_} .cc-copy-edit-actions { 201 display: flex; 202 flex-direction: column; 203 gap: 10px; 204 } 205 #${_} .cc-copy-edit-action, 206 #${_} .cc-copy-edit-draft-remove { 207 align-items: center; 208 background: #edf7fa; 209 border: 1px solid #9eb7c6; 210 border-radius: 6px; 211 box-shadow: none;
212 color: #032849; 213 cursor: pointer; 214 display: inline-flex; 215 font-size: 15px; 216 font-weight: 600; 217 gap: 6px; 218 justify-content: center; 219 line-height: 1.2; 220 min-height: 42px; 221 padding: 8px 14px; 222 text-decoration: none; 223 transition: background-color .15s ease, border-color .15s ease, color .15s ease, box-shadow .15s ease; 224 width: 100%; 225 } 226 #${_} .cc-copy-edit-action:hover, 227 #${_} .cc-copy-edit-action:focus-visible, 228 #${_} .cc-copy-edit-draft-remove:hover, 229 #${_} .cc-copy-edit-draft-remove:focus-visible { 230 background: #d7f3f6; 231 border-color: #0d7280; 232 box-shadow: 0 0 0 3px rgba(13,114,128,.16); 233 color: #032849; 234 outline: 0; 235 } 236 #${_} .cc-copy-edit-primary { 237 background: #0d7280; 238 border-color: #0d7280; 239 color: #fff; 240 } 241 #${_} .cc-copy-edit-primary:hover, 242 #${_} .cc-copy-edit-primary:focus-visible { 243 background: #032849; 244 border-color: #032849; 245 color: #fff; 246 } 247 #${_} button:disabled { 248 opacity: .45; 249 cursor: not-allowed; 250 } 251 #${_} .cc-copy-edit-icon-button { 252 align-items: center; 253 background: #eef5f7; 254 border: 0; 255 border-radius: 999px; 256 color: #032849; 257 cursor: pointer; 258 display: inline-flex; 259 flex: 0 0 auto; 260 height: 34px; 261 justify-content: center; 262 padding: 0; 263 width: 34px; 264 } 265 #${_} .cc-copy-edit-icon-button:hover, 266 #${_} .cc-copy-edit-icon-button:focus-visible { 267 background: #edf7fa; 268 outline: 3px solid rgba(25,181,197,.28); 269 outline-offset: 2px; 270 } 271 #${_} .cc-copy-edit-action svg, 272 #${_} .cc-copy-edit-draft-remove svg, 273 #${_} .cc-copy-edit-icon-button svg { 274 flex: 0 0 auto; 275 height: 16px; 276 width: 16px; 277 } 278 #${_} .cc-copy-edit-collapsed { 279 align-items: center; 280 background: #fff; 281 border: 1px solid #bfd3df; 282 border-radius: 999px; 283 box-shadow: 0 12px 28px rgba(3,40,73,.24); 284 color: #032849; 285 display: inline-flex; 286 gap: 8px; 287 left: 18px; 288 max-width: min(340px, calc(100vw - 36px)); 289 padding: 8px 10px 8px 12px; 290 position: fixed; 291 bottom: 18px; 292 z-index: 2147483200; 293 } 294 #${_} .cc-copy-edit-collapsed-restore { 295 align-items: center; 296 background: transparent; 297 border: 0; 298 color: #032849; 299 cursor: pointer; 300 display: inline-flex; 301 font-size: 14px; 302 font-weight: 800; 303 gap: 7px; 304 line-height: 1.2; 305 min-height: 30px; 306 min-width: 0; 307 padding: 0; 308 } 309 #${_} .cc-copy-edit-collapsed-restore span { 310 min-width: 0; 311 overflow: hidden; 312 text-overflow: ellipsis; 313 white-space: nowrap; 314 } 315 #${_} .cc-copy-edit-collapsed-restore svg { 316 flex: 0 0 auto; 317 height: 16px; 318 width: 16px; 319 } 320 #${_} .cc-copy-edit-collapsed .cc-copy-edit-icon-button { 321 height: 30px; 322 width: 30px; 323 } 324 #${_} .cc-copy-edit-drafts-block { 325 display: flex; 326 flex-direction: column; 327 gap: 8px; 328 } 329 #${_} .cc-copy-edit-section-label { 330 color: #426173; 331 font-size: 12px; 332 font-weight: 800; 333 line-height: 1.2; 334 margin: 0; 335 text-transform: uppercase; 336 } 337 #${_} .cc-copy-edit-drafts { 338 display: grid; 339 gap: 8px; 340 padding: 0; 341 margin: 0; 342 list-style: none; 343 } 344 #${_} .cc-copy-edit-drafts li { 345 display: grid; 346 grid-template-columns: minmax(0, 1fr) auto; 347 gap: 10px; 348 align-items: start; 349 background: #f7fbfd; 350 border: 1px solid #d8e6ed; 351 border-radius: 6px; 352 padding: 10px; 353 } 354 #${_} .cc-copy-edit-draft-text { 355 color: #24465e; 356 font-size: 13px; 357 font-weight: 600; 358 line-height: 1.35; 359 min-width: 0; 360 overflow-wrap: anywhere; 361 } 362 #${_} .cc-copy-edit-image-draft-text { 363 align-items: center; 364 display: inline-flex; 365 gap: 7px; 366 } 367 #${_} .cc-copy-edit-image-draft-text svg { 368 flex: 0 0 auto; 369 height: 15px; 370 width: 15px; 371 } 372 #${_} .cc-copy-edit-draft-remove { 373 font-size: 12px; 374 min-height: 30px; 375 padding: 6px 9px; 376 width: auto; 377 } 378 @media (max-width: 640px) { 379 #${_} .cc-copy-edit-panel { 380 bottom: 0; 381 left: 0; 382 right: 0; 383 border-radius: 12px 12px 0 0; 384 max-height: calc(100dvh - 20px); 385 width: 100vw; 386 } 387 #${_} .cc-copy-edit-collapsed { 388 bottom: 12px; 389 left: 12px; 390 max-width: calc(100vw - 24px); 391 } 392 } 393 `,document.head.append(e)})();let t={drafts:[],imageDrafts:[],activeImageCandidate:null,message:C,templateDraft:null,templateElement:null,collapsed:!1,submitted:!1},a=document.createElement("div");a.id=_,a.setAttribute("data-preview-feedback-ui","true"),document.body.append(a);let r=document.createElement("div");r.id=x,r.setAttribute("data-preview-feedback-ui","true"),document.body.append(r);let n=[],o=()=>(function(e,t){var a;if(t.collapsed){e.innerHTML=` 394 <div class="cc-copy-edit-collapsed" role="status" aria-label="Copy edit request mode minimized"> 395 <button class="cc-copy-edit-collapsed-restore" type="button" data-copy-edit-action="restore" aria-label="Restore copy edit request panel"> 396 <svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M12 20h9"></path><path d="M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4Z"></path></svg> <span>${es(0===t.imageDrafts.length?0===t.drafts.length?"Request copy edit":1===t.drafts.length?"Copy edit request - 1 pending":`Copy edit requests - ${t.drafts.length} pending`:`Page edit requests - ${t.drafts.length+t.imageDrafts.length} pending`)}</span> 397 </button> 398 <button class="cc-copy-edit-icon-button" type="button" data-copy-edit-action="cancel" aria-label="Close copy edit request mode">${eo()}</button> 399 </div> 400 `;return}let r=t.templateDraft;e.innerHTML=` 401 <div class="cc-copy-edit-panel" role="dialog" aria-label="Copy edit request mode"> 402 <div class="cc-copy-edit-header"> 403 <h2 class="cc-copy-edit-title">Request page edits</h2> 404 <div class="cc-copy-edit-header-actions"> 405 <button class="cc-copy-edit-icon-button" type="button" data-copy-edit-action="minimize" aria-label="Minimize copy edit request panel"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M5 12h14"></path></svg></button> 406 <button class="cc-copy-edit-icon-button" type="button" data-copy-edit-action="cancel" aria-label="Close copy edit request mode">${eo()}</button> 407 </div> 408 </div> 409 <p class="${(a=t.message).includes("could not")||a.includes("Keep required")||a.includes("not a supported image")||a.includes("must be")||a.includes("must total")||a.includes("replace up to")?"cc-copy-edit-message cc-copy-edit-message-error":a.includes("sent")||a.includes("pending")?"cc-copy-edit-message cc-copy-edit-message-success":"cc-copy-edit-message"}" role="status">${es(t.message)}</p> 410 ${r?` 411 <div class="cc-copy-edit-template-editor"> 412 <p class="cc-copy-edit-section-label">Protected template</p> 413 ${r.templateTokens.length?`<p class="cc-copy-edit-token-help">Keep ${r.templateTokens.map(e=>`<code>{${es(e)}}</code>`).join(" ")} in the template.</p>`:""} 414 <div class="cc-copy-edit-field"> 415 <label for="cc-copy-edit-template">Template text</label> 416 <textarea id="cc-copy-edit-template" data-copy-edit-template rows="4">${es(r.after)}</textarea> 417 </div> 418 <div class="cc-copy-edit-template-preview"> 419 <span>Preview</span> 420 <p>${es(r.renderedAfter||r.renderedBefore||r.after)}</p> 421 </div> 422 <div class="cc-copy-edit-actions"> 423 <button class="cc-copy-edit-action cc-copy-edit-primary" type="button" data-copy-edit-action="apply-template"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M20 6 9 17l-5-5"></path></svg> Apply template preview</button> 424 <button class="cc-copy-edit-action" type="button" data-copy-edit-action="close-template"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><circle cx="12" cy="12" r="8"></circle><circle cx="12" cy="12" r="2"></circle><path d="M12 2v4"></path><path d="M12 18v4"></path><path d="M2 12h4"></path><path d="M18 12h4"></path></svg> Keep editing page</button> 425 </div> 426 </div> 427 `:""} 428 ${t.drafts.length||t.imageDrafts.length?` 429 <div class="cc-copy-edit-drafts-block"> 430 <p class="cc-copy-edit-section-label">Pending requests</p> 431 <ul class="cc-copy-edit-drafts"> 432 ${t.drafts.map(e=>` 433 <li> 434 <span class="cc-copy-edit-draft-text">${es(e.after)}</span> 435 <button class="cc-copy-edit-draft-remove" type="button" data-copy-edit-action="remove" data-copy-edit-selector="${es(e.selector)}">${ei()} Remove</button> 436 </li> 437 `).join("")} 438 ${t.imageDrafts.map(e=>` 439 <li data-copy-edit-image-draft="true"> 440 <span class="cc-copy-edit-draft-text cc-copy-edit-image-draft-text"><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><rect x="3" y="3" width="18" height="18" rx="2"></rect><circle cx="8.5" cy="8.5" r="1.5"></circle>
440<path d="m21 15-5-5L5 21"></path></svg> ${es(e.file.name)}</span> 441 <button class="cc-copy-edit-draft-remove" type="button" data-copy-edit-action="remove-image" data-copy-edit-image-selector="${es(e.selector)}">${ei()} Remove</button> 442 </li> 443 `).join("")} 444 </ul> 445 </div> 446 `:""} 447 <div class="cc-copy-edit-actions"> 448 <button class="cc-copy-edit-action cc-copy-edit-primary" type="button" data-copy-edit-action="submit" ${t.drafts.length||t.imageDrafts.length?"":"disabled"}><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="m22 2-7 20-4-9-9-4Z"></path><path d="M22 2 11 13"></path></svg> Submit copy edit request</button> 449 <button class="cc-copy-edit-action" type="button" data-copy-edit-action="cancel">${eo()} Cancel</button> 450 </div> 451 </div> 452 `,e.querySelector("[data-copy-edit-template]")?.focus()})(a,t),i=()=>{for(let e of(document.documentElement.removeAttribute("data-preview-copy-edit-mode"),n.splice(0)))e();document.removeEventListener("click",c,!0),document.removeEventListener("auxclick",c,!0),document.removeEventListener("keydown",s,!0),r.remove(),a.remove()};a.addEventListener("click",r=>{let n=r.target?.closest("[data-copy-edit-action]");if(!n)return;let c=n.dataset.copyEditAction;if("apply-template"===c)(function(e,t,a){var r;if(!t.templateDraft)return;let n=e.querySelector("[data-copy-edit-template]"),o=ec(n?.value),i=t.templateDraft.templateTokens.find(e=>!o.includes(`{${e}}`));if(!o||o===t.templateDraft.before){t.message="Change the template text before applying.",a();return}if(i){t.message=`Keep required dynamic token {${i}}.`,a();return}let c={...t.templateDraft,after:o,renderedAfter:(r=t.templateDraft.tokenValues)?ec(o.replace(/<\/?[A-Za-z0-9_]+>/g,"").replace(/\{([A-Za-z0-9_]+)\}/g,(e,t)=>r[t]||`{${t}}`)):o};U(t,c),t.templateElement&&c.renderedAfter&&(t.templateElement.textContent=c.renderedAfter),H(t,a)})(a,t,o);else if("close-template"===c)H(t,o);else if("minimize"===c)t.collapsed=!0,o();else if("restore"===c)t.collapsed=!1,o();else if("cancel"===c)i();else if("remove"===c){let e=n.dataset.copyEditSelector;e&&V(t,e),t.message=O(t),o()}else if("remove-image"===c){let e=n.dataset.copyEditImageSelector;e&&function(e,t){let a=e.imageDrafts.findIndex(e=>e.selector===t);if(-1===a)return;let r=e.imageDrafts[a];F(r.candidate),URL.revokeObjectURL(r.previewUrl),e.imageDrafts.splice(a,1)}(t,e),t.message=O(t),o()}else"submit"===c&&Q(t,e,i,o)});let c=e=>{!(X(e.target)||J(e.target))&&Y(e.target)&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation())},s=e=>{var t;!("Enter"!==e.key&&" "!==e.key||X(e.target)||((t=e.target)instanceof Element?t.closest('[data-preview-copy-editable="true"][contenteditable="plaintext-only"],[data-preview-copy-editable="true"][contenteditable="true"]'):null)||J(e.target))&&Y(e.target)&&(e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation())};for(let e of(document.documentElement.setAttribute("data-preview-copy-edit-mode","true"),Array.from(document.body.querySelectorAll(L)).filter(B))){let a=er(e),r=ec(e.textContent),i=function(e,t,a){let r=en(e),n=function(){let e=[],t=new URL(window.location.href),a="fake"===t.searchParams.get("worldCupMatches"),r=t.searchParams.has("worldCupFakeMatchSeed"),n="fake"===t.searchParams.get("worldCupAdvancement")||a&&r;return a&&e.push("world-cup-fake-data"),r&&e.push("world-cup-fake-match-seed"),n&&e.push("world-cup-fake-advancement"),(t.searchParams.has("worldCupAdvancementSeed")||n&&r)&&e.push("world-cup-fake-advancement-seed"),e}(),o=function(){if(ea()){var e;return e=R(),m.find(t=>(function(e,t){let a=new URL(e,t.origin);if(a.pathname!==t.pathname)return!1;for(let[e,r]of a.searchParams)if(t.searchParams.get(e)!==r)return!1;return!0})(t.href,e))?.state}}(),i=ea()?function(e,t){let a=h(e),r=function(e,t){let a=h(e),r=[],n=[];for(let e of u){if(e.normalizedValue===a){r.push({copyPath:e.path,confidence:f(1,e.path,t),reason:"Exact visible-text match.",entry:e,tokenValues:{},matchType:"exact"});continue}let o=function(e,t){let a;let r=h(g(e));if(r.replace(/\{[A-Za-z0-9_]+\}/g,"").replace(/\s+/g,"").length<12)return null;let n=[],o=[],i=/\{([A-Za-z0-9_]+)\}/g,c=0;for(;a=i.exec(r);)n.push(y(r.slice(c,a.index))),n.push("(.+?)"),o.push(a[1]),c=a.index+a[0].length;if(0===o.length)return null;n.push(y(r.slice(c)));let s=t.match(RegExp(`^${n.join("")}$`,"i"));if(!s)return null;let d={};for(let[e,t]of o.entries())d[t]=s[e+1]?.trim()||`{${t}}`;return d}(e.value,a);o&&n.push({copyPath:e.path,confidence:f(.92,e.path,t),reason:"Rendered template match.",entry:e,tokenValues:o,matchType:"template"})}return(r.length>0?r:n).sort((e,t)=>
452t.confidence-e.confidence||e.copyPath.localeCompare(t.copyPath)).slice(0,5)}(a,t),n=r[0];if(!n||n.confidence<.9)return null;let o="exact"===n.matchType?"exact":"high",i="exact"===n.matchType?"Matched visible text to en.json.":"Matched rendered text to en.json template.";return{copyPath:n.copyPath,before:n.entry.value,renderedBefore:a,after:n.entry.value,renderedAfter:a,candidateCopyPaths:r.map(e=>{let{copyPath:t,confidence:a,reason:r}=e;return{copyPath:t,confidence:a,...r?{reason:r}:{}}}),inferenceConfidence:o,inferenceReason:i,templateTokens:n.entry.templateTokens,tokenValues:n.tokenValues}}(a,window.location.pathname):null;return i?{selector:t,copyPath:i.copyPath,source:l,sourceType:"known",before:i.before,after:i.after,renderedBefore:i.renderedBefore,renderedAfter:i.renderedAfter,tagName:e.tagName.toUpperCase(),lifecycleState:o,modifiers:n,templateTokens:i.templateTokens,tokenValues:i.tokenValues,candidateCopyPaths:i.candidateCopyPaths,inferenceConfidence:i.inferenceConfidence,inferenceReason:i.inferenceReason,nearbyText:r}:{selector:t,sourceType:"unknown",before:a,after:a,renderedBefore:a,renderedAfter:a,tagName:e.tagName.toUpperCase(),lifecycleState:o,modifiers:n,templateTokens:[],nearbyText:r}}(e,a,r);0===i.templateTokens.length&&i.before===i.renderedBefore?function(e,t,a,r,n){let o=K(e),i=e.style.outline,c=e.style.outlineColor,s=e.style.outlineOffset,d=e.style.cursor,l=()=>{e.classList.add("cc-copy-edit-inline-focus")},p=()=>{e.classList.remove("cc-copy-edit-inline-focus")},u=()=>{let n=ec(e.textContent);n&&n!==t.before?U(a,{...t,after:n,renderedAfter:n}):V(a,t.selector),a.message=O(a),r()};e.classList.add("cc-copy-edit-inline"),e.setAttribute("data-preview-copy-editable","true"),e.setAttribute("data-copy-selector",t.selector),t.copyPath&&e.setAttribute("data-copy-path",t.copyPath),t.source&&e.setAttribute("data-copy-source",t.source),e.setAttribute("data-copy-source-type",t.sourceType),e.setAttribute("contenteditable","plaintext-only"),e.setAttribute("spellcheck","true"),e.setAttribute("aria-label",`Edit ${t.copyPath||t.tagName.toLowerCase()} copy`),e.addEventListener("focus",l),e.addEventListener("blur",p),e.addEventListener("input",u),n.push(()=>{e.removeEventListener("focus",l),e.removeEventListener("blur",p),e.removeEventListener("input",u),e.classList.remove("cc-copy-edit-inline","cc-copy-edit-inline-focus"),e.style.outline=i,e.style.outlineColor=c,e.style.outlineOffset=s,e.style.cursor=d,G(e,o)})}(e,i,t,o,n):function(e,t,a,r,n){let o=K(e),i=e.style.cursor,c=()=>{let n=a.drafts.find(e=>e.selector===t.selector);a.templateDraft=n??t,a.templateElement?.classList.remove("cc-copy-edit-template-active"),a.templateElement=e,a.templateElement.classList.add("cc-copy-edit-template-active"),a.message="Edit the template text and keep required tokens.",r()},s=e=>{X(e.target)||(e.preventDefault(),e.stopPropagation(),c())},d=e=>{("Enter"===e.key||" "===e.key)&&(e.preventDefault(),c())};e.classList.add("cc-copy-edit-template"),e.setAttribute("data-preview-copy-editable","true"),e.setAttribute("data-copy-template",t.before),e.setAttribute("data-copy-selector",t.selector),t.copyPath&&e.setAttribute("data-copy-path",t.copyPath),t.source&&e.setAttribute("data-copy-source",t.source),e.setAttribute("data-copy-source-type",t.sourceType),e.setAttribute("role","button"),e.setAttribute("tabindex","0"),e.setAttribute("aria-label",`Open template editor for ${t.copyPath||t.tagName.toLowerCase()} copy`),e.style.cursor="pointer",e.addEventListener("click",s),e.addEventListener("keydown",d),n.push(()=>{e.removeEventListener("click",s),e.removeEventListener("keydown",d),e.classList.remove("cc-copy-edit-template","cc-copy-edit-template-active"),e.style.cursor=i,G(e,o)})}(e,i,t,o,n)}(function(e,t,a,r){let n=document.createElement("input");n.type="file",n.accept="image/*",n.dataset.copyEditImageInput="true",n.setAttribute("aria-hidden","true"),e.append(n);let o=Array.from(document.body.querySelectorAll("img")).filter(e=>{if(X(e)||!e.currentSrc&&!e.src)return!1;let t=window.getComputedStyle(e);if("none"===t.display||"hidden"===t.visibility)return!1;let a=e.getBoundingClientRect();return a.width>0&&a.height>0}).map(t=>{let a=er(t),r=document.createElement("button"),n=ec(t.alt)||en(t)||"page image";return r.type="button",r.innerHTML='<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3 12a9 9 0 0 1 15-6.7L21 8"></path><path d="M21 3v5h-5"></path><path d="M21 12a9 9 0 0 1-15 6.7L3 16"></path><path d="M3 21v-5h5"></path></svg>',r.dataset.copyEditImageAction="true",r.dataset.copyEditImageSelector=a,r.setAttribute("aria-label",`Replace image: ${n}`),r.title=`Replace image: ${n}`,e.append(r),{element:t,selector:a,beforeSrc:t.currentSrc||t.src,nearbyText:n,srcAttribute:t.getAttribute("src"),srcsetAttribute:t.getAttribute("srcset"),pictureSources:t.parentElement?.tagName==="PICTURE"?Array.from(t.parentElement.querySelectorAll("source")).map(e=>({element:e,srcset:e.getAttribute("srcset")})):[],button:r}}),i=()=>{for(let e of o)(function(e){let t=e.element.getBoundingClientRect(),a=t.width>0&&t.height>0&&t.bottom>0&&t.right>0&&t.top<window.innerHeight&&t.left<window.innerWidth;e.button.hidden=!a,a&&(e.button.style.left=`${Math.max(6,Math.min(window.innerWidth-34-6,t.right-34-6))}px`,e.button.style.top=`${Math.max(6,Math.min(window.innerHeight-34-6,t.bottom-34-6))}px`)})(e)},c=e=>{let a=e.target?.closest("[data-copy-edit-image-action]");a&&(t.activeImageCandidate=o.find(e=>e.selector===a.dataset.copyEditImageSelector)??null,t.activeImageCandidate&&n.click())},s=()=>{let e=n.files?.[0];e&&t.activeImageCandidate&&(function(e,t,a){let r=e.imageDrafts.find(e=>e.selector===t.selector),n=function(e){let t=e.type.toLowerCase();if($.has(t))return t;let a=e.name.toLowerCase().split(".").pop();return a&&({gif:"image/gif",heic:"image/heic",ico:"image/vnd.microsoft.icon",
452jpeg:"image/jpeg",jpg:"image/jpeg",png:"image/png",svg:"image/svg+xml",tif:"image/tiff",tiff:"image/tiff",webp:"image/webp"})[a]||""}(a),o=e.imageDrafts.filter(e=>e.selector!==t.selector),i=o.reduce((e,t)=>e+t.file.size,0);if(!n)return e.message=`${a.name} is not a supported image.`,!1;if(!a.size||a.size>5242880)return e.message=`${a.name} must be 5 MiB or smaller.`,!1;if(!r&&o.length>=4)return e.message="You can replace up to 4 images per request.",!1;if(i+a.size>0xa00000)return e.message="Replacement images must total 10 MiB or less.",!1;let c=URL.createObjectURL(a);for(let e of(r&&URL.revokeObjectURL(r.previewUrl),t.pictureSources))e.element.removeAttribute("srcset");t.element.removeAttribute("srcset"),t.element.setAttribute("src",c),t.button.dataset.copyEditImageSelected="true";let s={selector:t.selector,beforeSrc:t.beforeSrc,nearbyText:t.nearbyText,file:a,mimeType:n,previewUrl:c,candidate:t},d=r?e.imageDrafts.indexOf(r):-1;return -1===d?e.imageDrafts.push(s):e.imageDrafts[d]=s,!0}(t,t.activeImageCandidate,e)&&(t.message=O(t)),a(),i()),n.value=""};for(let t of(e.addEventListener("click",c),n.addEventListener("change",s),window.addEventListener("resize",i),window.addEventListener("scroll",i,!0),o))t.element.addEventListener("load",i);i(),r.push(()=>{for(let a of(e.removeEventListener("click",c),n.removeEventListener("change",s),window.removeEventListener("resize",i),window.removeEventListener("scroll",i,!0),o))a.element.removeEventListener("load",i),t.submitted||F(a);if(!t.submitted)for(let e of t.imageDrafts)URL.revokeObjectURL(e.previewUrl);t.imageDrafts=[],t.activeImageCandidate=null})})(r,t,o,n),document.addEventListener("click",c,!0),document.addEventListener("auxclick",c,!0),document.addEventListener("keydown",s,!0),o()})(e)}}];return window.location.pathname.startsWith("/world-cup-2026")?[...t,{id:"world-cup-prototype-timeline",label:"Prototype timeline",placement:"settings",groupLabel:"World Cup",run:()=>{P("/world-cup-2026/prototype-timeline")}},{id:"world-cup-preview-feedback-board",label:"Preview Feedback Notion board",placement:"settings",groupLabel:"World Cup",run:()=>{P("https://www.notion.so/34bc68d1e1fb80dfbea9d3eb3e9d1be4")}},{id:"world-cup-feature-flag-guide",label:"Feature flag guide",placement:"settings",groupLabel:"World Cup",run:()=>{P("/world-cup-2026/feature-flag-guide")}},{id:"world-cup-copy-edit-guide",label:"Copy edit guide",placement:"settings",groupLabel:"World Cup",run:()=>{P("/world-cup-2026/copy-guide")}},{id:"world-cup-apply-seeded-fake-data",label:"Apply seeded fake data",placement:"settings",groupLabel:"World Cup",run:()=>{window.location.assign(T().toString())}},{id:"world-cup-copy-seeded-fake-data-url",label:"Copy seeded fake data URL",placement:"settings",groupLabel:"World Cup",run:e=>{var t;let{copyText:a}=e;return t=T().toString(),a?a(t):navigator.clipboard?.writeText(t)}},{id:"world-cup-clear-fake-data",label:"Clear fake data",placement:"settings",groupLabel:"World Cup",run:()=>{window.location.assign((function(){let e=R();return e.searchParams.delete("worldCupMatches"),e.searchParams.delete("worldCupFakeMatchSeed"),e.searchParams.delete("worldCupFakeMatchToday"),e.searchParams.delete("worldCupAdvancement"),e.searchParams.delete("worldCupAdvancementSeed"),e})().toString())}}]:t}({apiBaseUrl:r,deploymentContext:a,branch:n,commitSha:i})};o&&(d.internalAccessToken=o);let p=()=>{e||window.ClimateCentralPreviewFeedback?.initPreviewFeedback(d)};if("function"==typeof window.ClimateCentralPreviewFeedback?.initPreviewFeedback){p();return}let M=document.querySelector('script[data-cc-preview-feedback-client="true"]'),j=M??document.createElement("script");return j.dataset.ccPreviewFeedbackClient="true",j.async=!0,j.src=`${r}/preview-feedback.js`,j.addEventListener("load",p,{once:!0}),j.addEventListener("error",()=>{console.warn("[PreviewFeedback] Unable to load standalone preview feedback client.")},{once:!0}),M||document.head.append(j),()=>{e=!0,j.removeEventListener("load",p),document.getElementById("cc-preview-feedback-root")?.remove()}},[t,n,i,a,s,c,M]),null}function S(e){return null===e?"":e.trim().toLowerCase()}function z(){let e=window.__CC_PREVIEW_FEEDBACK_INTERNAL_ACCESS_TOKEN__;if("string"==typeof e)return e.trim()||void 0}function P(e){window.open(e,"_blank","noopener,noreferrer")}function T(){let e=R();return e.searchParams.set("worldCupMatches","fake"),e.searchParams.set("worldCupFakeMatchSeed","team-review"),e.searchParams.set("worldCupAdvancement","fake"),e.searchParams.set("worldCupAdvancementSeed","team-review"),e}function R(){let e=new URL(window.location.href);return e.searchParams.delete(v),e}async function N(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=function(e){let t=document.documentElement,a=document.body,r=Math.max(window.innerWidth||1,t?.clientWidth||0,t?.scrollWidth||0,t?.offsetWidth||0,a?.clientWidth||0,a?.scrollWidth||0,a?.offsetWidth||0),n=Math.max(window.innerHeight||1,t?.clientHeight||0,t?.scrollHeight||0,t?.offsetHeight||0,a?.clientHeight||0,a?.scrollHeight||0,a?.offsetHeight||0),o=j(e.selectedElement);return{elementCount:document.querySelectorAll("*").length,imageCount:document.images.length,documentWidth:Math.round(r),documentHeight:Math.round(n),scrollX:Math.round(window.scrollX||0),scrollY:Math.round(window.scrollY||0),mode:e.kind||"feedback",pathname:window.location.pathname,sourceHost:window.location.host,...o?{targetSelector:o}:{}}}(e),a=function(e){let t=j(e);if(!t)return null;try{let e=document.querySelector(t);return e instanceof HTMLElement?e:null}catch{return null}}(e.selectedElement),r=a?"element":"page",o=a?function(e,t){let a=e.getBoundingClientRect();if(a.width<=0||a.height<=0)return q(t);let r=Math.max(0,Math.floor((window.scrollX||0)+a.left-16)),n=Math.max(0,Math.floor((window.scrollY||0)+a.top-16));return{x:r,y:n,width:Math.max(1,Math.min(t.documentWidth,Math.ceil((window.scrollX||0)+a.right+16))-r),height:Math.max(1,Math.min(t.documentHeight,Math.ceil((window.scrollY||0)+a.bottom+16))-n)}}(a,t):q(t);try{return await I(),{screenshotDataUrl:await (0,n.gO)(document.body,{backgroundColor:"#ffffff",cacheBust:!1,canvasHeight:o.height,canvasWidth:o.width,filter:W,height:o.height,pixelRatio:1,qual
452ity:.82,skipAutoScale:!0,style:{height:`${t.documentHeight}px`,transform:`translate(-${o.x}px, -${o.y}px)`,transformOrigin:"top left",width:`${t.documentWidth}px`},width:o.width}),screenshotMode:r,screenshotFailureNote:e.annotations?.length?"Standalone client captured browser-rendered screenshot with reviewer annotations via climatecentral.org host hook.":"Standalone client captured browser-rendered screenshot via climatecentral.org host hook.",captureContext:t}}catch(e){return{screenshotMode:r,screenshotFailureNote:`Host screenshot capture failed: ${e instanceof Error&&e.message?e.message:"unknown error"}`,captureContext:t}}}function j(e){let t=e?.selector;return"string"==typeof t&&t.trim()?t.trim():null}function q(e){return{x:Math.max(0,Math.round(window.scrollX||0)),y:Math.max(0,Math.round(window.scrollY||0)),width:D(window.innerWidth,e.documentWidth),height:D(window.innerHeight,e.documentHeight)}}function D(e,t){return Math.max(1,Math.min(Math.round(Number.isFinite(e)&&e>0?e:t),Math.max(1,t)))}function W(e){return!(e instanceof Element)||!function(e){let t=e.tagName.toLowerCase();return"script"===t||"style"===t||"noscript"===t||"template"===t}(e)&&(!!(e.classList.contains("cc-pf-annotation-layer")||e.closest(".cc-pf-annotation-layer"))||"cc-preview-feedback-root"===e.id||!(e.id===_||e.closest(`#${_}`))&&!e.closest(".cc-pf-panel,.cc-pf-launcher,.cc-pf-comments,.cc-pf-bubbles,.cc-pf-comment-list-panel,.cc-pf-toast,.cc-pf-toasts,.cc-pf-targeting,.cc-pf-target-highlight,.cc-pf-selected-outline,.cc-pf-annotation-toolbar,.cc-pf-annotation-hint,.cc-pf-settings-dialog,[data-preview-feedback-settings-dialog]"))}async function I(){let e=document.fonts;e?.ready&&await e.ready.catch(()=>void 0)}function F(e){for(let t of(null===e.srcAttribute?e.element.removeAttribute("src"):e.element.setAttribute("src",e.srcAttribute),null===e.srcsetAttribute?e.element.removeAttribute("srcset"):e.element.setAttribute("srcset",e.srcsetAttribute),e.pictureSources))null===t.srcset?t.element.removeAttribute("srcset"):t.element.setAttribute("srcset",t.srcset);delete e.button.dataset.copyEditImageSelected}function B(e){if(X(e)||e.closest("script,style,svg,canvas,noscript,input,textarea,select,option")||"true"===e.getAttribute("aria-hidden")||!ec(e.textContent))return!1;let t=window.getComputedStyle(e);return"none"!==t.display&&"hidden"!==t.visibility&&(!Array.from(e.children).some(e=>e instanceof HTMLElement&&e.matches(L))||Array.from(e.childNodes).some(e=>e.nodeType===Node.TEXT_NODE&&!!ec(e.textContent)))}function U(e,t){let a=e.drafts.findIndex(e=>e.selector===t.selector);-1===a?e.drafts.push(t):e.drafts[a]=t}function V(e,t){let a=e.drafts.findIndex(e=>e.selector===t);-1!==a&&e.drafts.splice(a,1),e.templateDraft?.selector===t&&(e.templateDraft=null,e.templateElement?.classList.remove("cc-copy-edit-template-active"),e.templateElement=null)}function H(e,t){e.templateDraft=null,e.templateElement?.classList.remove("cc-copy-edit-template-active"),e.templateElement=null,e.message=O(e),t()}function O(e){if(0===e.imageDrafts.length)return 0===e.drafts.length?C:1===e.drafts.length?"1 pending copy edit request.":`${e.drafts.length} pending copy edit requests.`;let t=e.drafts.length+e.imageDrafts.length;return 1===t?"1 pending page edit request.":`${t} pending page edit requests.`}let Z=["contenteditable","spellcheck","aria-label","role","tabindex","data-preview-copy-editable","data-copy-selector","data-copy-path","data-copy-source","data-copy-source-type","data-copy-template"];function K(e){return Z.map(t=>[t,e.getAttribute(t)])}function G(e,t){for(let[a,r]of t)null===r?e.removeAttribute(a):e.setAttribute(a,r)}function X(e){return e instanceof Element&&!!e.closest(`#${_}, #cc-preview-feedback-root, [data-preview-feedback-ui="true"]`)}function Y(e){return e instanceof Element?e.closest('a[href],area[href],button,[role="link"],[role="button"]'):null}function J(e){return e instanceof Element&&!!e.closest('[data-preview-copy-editable="true"][data-copy-template]')}async function Q(e,t,a,r){if(!e.drafts.length&&!e.imageDrafts.length){e.message="Make at least one page edit request before submitting.",r();return}try{e.message="Submitting copy edit request...",r();
452let n=await ee(e.drafts,e.imageDrafts,t);if(!(await fetch(`${t.apiBaseUrl}/v1/copy-edits`,{method:"POST",headers:{"Content-Type":"application/json",...function(){try{let e=window.localStorage.getItem(w);return e?{Authorization:`Bearer ${e}`}:{}}catch{return{}}}()},body:JSON.stringify(n)})).ok)throw Error("Copy edit request could not be submitted.");e.message="Copy edit request sent to Notion.",e.submitted=!0,e.drafts=[],e.imageDrafts=[],r(),window.setTimeout(a,1200)}catch(t){e.message=t instanceof Error?t.message:"Copy edit request could not be submitted.",r()}}async function ee(e,t,a){let r=function(e){let t=new Set;return e.map(e=>{if(!t.has(e.name.toLowerCase()))return t.add(e.name.toLowerCase()),e;let a=e.name.lastIndexOf("."),r=a>0,n=r?e.name.slice(0,a):e.name,o=r?e.name.slice(a):"",i=2,c=`${n||"replacement"}-${i}${o}`;for(;t.has(c.toLowerCase());)i+=1,c=`${n||"replacement"}-${i}${o}`;return t.add(c.toLowerCase()),{...e,name:c}})}(await Promise.all(t.map(async e=>{var t,a;return{name:e.file.name,mimeType:e.mimeType,size:e.file.size,dataUrl:await (t=e.file,a=e.mimeType,new Promise((e,r)=>{let n=new FileReader;n.addEventListener("load",()=>{let t="string"==typeof n.result?n.result:"",o=t.indexOf(",");if(o<0){r(Error("Replacement image could not be encoded."));return}e(`data:${a};base64,${t.slice(o+1)}`)}),n.addEventListener("error",()=>r(n.error||Error("Replacement image could not be read."))),n.readAsDataURL(t)}))}}))),n=function(e,t,a,r){let n=e.length>0&&e.every(e=>e.source===l)?l:void 0,o=function(e){let t=new Set(e.map(e=>e.lifecycleState).filter(Boolean));return 1===t.size?Array.from(t)[0]:void 0}(e),i=function(e){let t=new Set;for(let a of e)for(let e of a.modifiers)t.add(e);return Array.from(t)}(e);return{appId:b,name:function(){try{return window.localStorage.getItem("preview-feedback-reporter-name")||void 0}catch{return}}(),comment:"Generic page copy edit request",pageUrl:R().toString(),clientEditId:`copyedit-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`,...n?{sourceFile:n}:{},locale:"en",...o?{lifecycleState:o}:{},...i.length>0?{modifiers:i}:{},edits:e.map(et),imageEdits:t,...a.length?{attachments:a}:{},screenshotMode:"none",screenshotFailureNote:"Generic copy edit request submitted without a screenshot.",viewport:{width:window.innerWidth,height:window.innerHeight},userAgent:navigator.userAgent,captureContext:{mode:"generic-dom-copy-edit",pathname:window.location.pathname},deploymentContext:r.deploymentContext,branch:r.branch,commitSha:r.commitSha}}(e,t.map((e,t)=>({selector:e.selector,beforeSrc:e.beforeSrc,replacementAttachmentName:r[t].name,...e.nearbyText?{nearbyText:e.nearbyText}:{}})),r,a),o=[...e.map(e=>e.selector),...t.map(e=>e.selector)],i=await N({kind:"generic-dom-copy-edit",pageUrl:n.pageUrl,selectedElement:1===o.length?{selector:o[0]}:null});return{...n,...i.screenshotDataUrl?{screenshotDataUrl:i.screenshotDataUrl}:{},screenshotMode:i.screenshotMode,screenshotFailureNote:i.screenshotFailureNote,captureContext:{...i.captureContext,...n.captureContext}}}function et(e){return{...e.copyPath?{copyPath:e.copyPath}:{},...e.source?{source:e.source}:{},sourceType:e.sourceType,before:e.before,after:e.after,...e.renderedBefore?{renderedBefore:e.renderedBefore}:{},...e.renderedAfter?{renderedAfter:e.renderedAfter}:{},selector:e.selector,...e.lifecycleState?{lifecycleState:e.lifecycleState}:{},...e.modifiers.length>0?{modifiers:e.modifiers}:{},...e.templateTokens.length>0?{templateTokens:e.templateTokens}:{},...e.candidateCopyPaths?.length?{candidateCopyPaths:e.candidateCopyPaths}:{},...e.inferenceConfidence?{inferenceConfidence:e.inferenceConfidence}:{},...e.inferenceReason?{inferenceReason:e.inferenceReason}:{},...e.nearbyText?{nearbyText:e.nearbyText}:{}}}function ea(){return"/world-cup-2026"===window.location.pathname||window.location.pathname.startsWith("/world-cup-2026/")}function er(e){for(let t of["data-preview-feedback-id","data-testid","data-component"]){let a=e.getAttribute(t);if(a)return`[${t}="${a.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"]`}if(e.id){var t;return`#${t=e.id,window.CSS?.escape?window.CSS.escape(t):t.replace(/[^a-zA-Z0-9_-]/g,"\\$&")}`}let a=[],r=e;for(;r&&r!==document.body&&a.length<6;){let e=r.tagName.toLowerCase(),t=r.parentElement;if(!t)break;let n=r.tagName,o=Array.from(t.children).filter(e=>e.tagName===n).indexOf(r)+1;if(a.unshift(`${e}:nth-of-type(${Math.max(1,o)})`),t.matches('main,article,[role="main"]'))break;r=t}return a.join(" > ")||e.tagName.toLowerCase()}function en(e){let t=ec(e.parentElement?.textContent);if(t&&t!==ec(e.textContent))return t.slice(0,500)}function eo(){return'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M18 6 6 18"></path><path d="m6 6 12 12"></path></svg>'}function ei(){return'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"><path d="M3 6h18"></path><path d="M8 6V4h8v2"></path><path d="M19 6l-1 14H6L5 6"></path></svg>'}function ec(e){return(e||"").replace(/\s+/g," ").trim()}function es(e){return e.replace(/[&<>"']/g,e=>({"&":"&","<":"<",">":">",'"':""","'":"'"})[e]||e)}},92823:(e,t,a)=>{"use strict";a.d(t,{ModalSetup:()=>i});var r=a(12115),n=a(18620),o=a.n(n);let i=()=>((0,r.useEffect)(()=>{{let e=document.getElementById("main-app");e&&o().setAppElement(e)}},[]),null)},81269:(e,t,a)=>{"use strict";a.d(t,{N:()=>u}),a(12115);var r=a(95618),n=a(51091),o=a(66988),i=a.n(o),c=a(14398),s=a(2836),d=a(57255),l=a(97067),p=a(95155);let u=e=>{let{url:t,link:a,linkVariant:o="Simple Link",label:u,title:m,size:f="lg",variant:h="text",theme:g="light",withArrow:y,className:b,children:w,download:v,onClick:_,centered:x=!1,parameters:k,replace:$,scroll:C,href:A=""}=e,E="button"===h&&[u,w].some(l.X),L=(0,d.U)(("RichText Link"===o?t:a)||A),M=k||"",S=L?.split("?");S?.length>1&&(L=S[0],M=S[1]);let z=k?.includes("#"),P=z?`${L}${k}`:{pathname:L,query:M?.includes("?")?M?.replace("?",""):M},T={href:`${L}${M?`?${M}`:""}`,title:m,className:"unstyled"===h?b:(0,n.A)(i().link,{[i()["size-xl"]]:"xl"===f},{[i()["size-lg"]]:"lg"===f},{[i()["size-md"]]:"md"===f},{[i()["size-sm"]]:"sm"===f},{[i()["variant-button"]]:"button"===h},{[i()["variant-text"]]:"text"===h},{[i()["variant-arrow"]]:"arrow"===h},{[i()["donate-button"]]:E},{[i()["theme-light"]]:"light"===g},{[i()["theme-dark"]]:"dark"===g},{[i()["theme-accent-light"]]:"accent-light"===g},{[i()["theme-accent-dark"]]:"accent-dark"===g},{[i().centered]:x},b),download:v,onClick:_},R=(0,p.jsxs)(p.Fragment,{children:[u,w,(y||"arrow"===h)&&(0,p.jsx)(c.i,{size:"button"===h||"lg"===f?"md":"sm",className:i().arrow})]});return(0,s.i)(L)?(0,p.jsx)("a",{target:"_blank",rel:"noopener noreferrer",...T,children:R}):(0,s.f)(L)?(0,p.jsx)("a",{target:"_self",...T,children:R}):(0,p.jsx)(r.default,{...T,href:P,scroll:C??!z,replace:$,children:R})}},54317:(e,t,a)=>{"use strict";a.d(t,{CookieModal:()=>_}),a(12115);var r=a(44939),n=a.n(r),o=a(51091),i=a(85214),c=a.n(i),s=a(66988),d=a.n(s),l=a(2820),p=a.n(l),u=a(14398),m=a(80123),f=a(17316),h=a(81269),g=a(20628),y=a(95155);let b=(0,o.A)(c().acceptButton,p().button,[d()["size-lg"]],[d()["variant-button"]],[d()["theme-light"]]),w=(0,o.A)(p().button,[d()["size-lg"]],[d()["variant-text"]],[d()["theme-light"]]),v=e=>{let{children:t,className:a,...r}=e;return(0,y.jsxs)("button",{type:"button",className:a,...r,children:[t,(0,y.jsx)(u.i,{size:"md",className:d().arrow})]})},_=()=>(0,y.jsxs)(n(),{disableStyles:!0,location:"bottom",buttonText:"Accept",cookieName:"userCookieConsent",onAccept:()=>window.dispatchEvent(new Event(g.R)),containerClasses:`${c().container}
452 cookie-consent-banner`,buttonClasses:b,declineButtonClasses:w,ButtonComponent:v,children:[(0,y.jsx)(m.D,{level:"h3",display:"h4",children:"How we use cookies"}),(0,y.jsxs)(f.E,{size:"md",children:["Climate Central uses cookies to personalize visitors' experiences and save time by remembering settings"," (",(0,y.jsx)(h.N,{link:"/what-we-do/legal",label:"learn more",className:c().link}),"). By continuing to use our site, you accept our"," ",(0,y.jsx)(h.N,{link:"/what-we-do/legal",label:"terms of use",className:c().link})," and"," ",(0,y.jsx)(h.N,{link:"/privacy-policy",label:"privacy policy",className:c().link}),"."]})]})},45607:(e,t,a)=>{"use strict";a.d(t,{GoogleAnalytics:()=>o});var r=a(12115),n=a(95155);let o=()=>((0,r.useEffect)(()=>{if(!window.GA_INITIALIZED){let e=a(42650);window.analytics=new e({id:"G-ML9X8R6H73"}),window.Analytics=e,window.GA_INITIALIZED=!0}},[]),(0,n.jsx)(n.Fragment,{}))},57255:(e,t,a)=>{"use strict";a.d(t,{U:()=>o});var r=a(2836);function n(e){return"/"===e||(0,r.i)(e)||0===e.indexOf("/")?e:`/${e}`}let o=e=>e?.url?n(e.url):e?.slug?n(e.slug):"string"==typeof e?n(e):"/"},2836:(e,t,a)=>{"use strict";a.d(t,{f:()=>o,i:()=>n});let r=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[];return t.some(t=>e.includes(t))},n=e=>r(e,["http://","https://","s3://"]),o=e=>r(e,["mailto:","tel:","callto:","skype:","sms:","fax:"])},20628:(e,t,a)=>{"use strict";a.d(t,{R:()=>r,a:()=>n});let r="cc:user-cookie-consent-accepted";function n(e){return e.split(";").some(e=>"userCookieConsent=true"===e.trim())}},94408:(e,t,a)=>{"use strict";a.d(t,{Gr:()=>y,uT:()=>g});let r="cc:donation-post-exposure-session-quality:v1",n=[1e4,3e4,6e4],o=[],i=null,c=null,s=()=>Date.now();function d(e){return Array.isArray(e)?e.filter(e=>"number"==typeof e):[]}function l(e){try{let t=window.sessionStorage.getItem(r);if(!t)return null;let a=JSON.parse(t),n="number"==typeof a.startedAt?a.startedAt:e,o="number"==typeof a.lastActivityAt?a.lastActivityAt:e;if(e-o>18e5)return null;return{exposureEvent:"string"==typeof a.exposureEvent?a.exposureEvent:"",donationExposureType:"counterfactual"===a.donationExposureType?"counterfactual":"rendered",donationPromptVariant:"string"==typeof a.donationPromptVariant?a.donationPromptVariant:"",featureFlagKey:"string"==typeof a.featureFlagKey?a.featureFlagKey:"",featureFlagVariant:"string"==typeof a.featureFlagVariant?a.featureFlagVariant:"",startedAt:n,lastActivityAt:o,durationObserved:!0===a.durationObserved,durationThresholdsReached:d(a.durationThresholdsReached),durationThresholdsNotReached:d(a.durationThresholdsNotReached)}}catch{return null}}function p(e){try{window.sessionStorage.setItem(r,JSON.stringify(e))}catch{}}function u(e,t){return{source:"donation_post_exposure_session_quality",donation_exposure_event:e.exposureEvent,donation_exposure_type:e.donationExposureType,donation_prompt_variant:e.donationPromptVariant,feature_flag_key:e.featureFlagKey,feature_flag_variant:e.featureFlagVariant,..."number"==typeof t?{elapsed_milliseconds:t}:{}}}function m(e,t,a){return{...u(e,t),threshold_milliseconds:a,threshold_seconds:a/1e3}}function f(){o.forEach(e=>window.clearTimeout(e)),o=[]}function h(){if(!c)return;let e=s(),t=l(e);if(!t)return;let a=e-t.startedAt;t.durationObserved||(c("donation_post_exposure_duration_observed",u(t,a),{transport:"sendBeacon"}),t.durationObserved=!0),n.filter(e=>a<e&&!t.durationThresholdsReached.includes(e)&&!t.durationThresholdsNotReached.includes(e)).forEach(e=>{t.durationThresholdsNotReached.push(e),c?.("donation_post_exposure_duration_threshold_not_reached",m(t,a,e),{transport:"sendBeacon"})}),t.lastActivityAt=e,p(t),f()}function g(e){let{capture:t,context:a,now:r=()=>Date.now()}
452=e,d=r(),u=l(d)??{...a,startedAt:d,lastActivityAt:d,durationObserved:!1,durationThresholdsReached:[],durationThresholdsNotReached:[]};u.lastActivityAt=d,p(u),c=t,s=r,i||(i=h,window.addEventListener("pagehide",i)),function(e,t){f();let a=l(t());if(!a)return;let r=t()-a.startedAt;o=n.filter(e=>!a.durationThresholdsReached.includes(e)).map(a=>{let n=Math.max(a-r,0);return window.setTimeout(()=>{let r=t(),n=l(r);if(!n||n.durationThresholdsReached.includes(a))return;let o=r-n.startedAt;n.durationThresholdsReached.push(a),n.lastActivityAt=r,p(n),e("donation_post_exposure_duration_threshold_reached",m(n,o,a))},n)})}(t,r)}function y(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:()=>Date.now(),t=e(),a=l(t);a&&(a.lastActivityAt=t,p(a))}},2365:(e,t,a)=>{"use strict";a.d(t,{L0:()=>s,kC:()=>d,mZ:()=>l});let r="cc:donation:return-to:last-internal-route",n=new Set(["/media-signup-thanks"]);function o(e){return e&&"/"!==e?e.endsWith("/")?e.slice(0,-1):e:"/"}function i(e){let t=o(e);return function(e){let t=o(e);return"/donate"===t||t.startsWith("/donate/")}(t)||n.has(t)}function c(e,t,a){if(e?.trim())try{let r=new URL(e,t);if(r.origin!==t||o(r.pathname)===o(a)||i(r.pathname))return;return`${r.pathname}${r.search}${r.hash}`||"/"}catch{return}}function s(e,t){let a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",n=function(e){let t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"";if(!(!e||i(e)))return`${e}${t?`?${t}`:""}`}(t,a);if(e&&n)try{e.setItem(r,n)}catch{}}function d(e){if(e)try{return e.getItem(r)?.trim()||void 0}catch{return}}function l(e){let{currentOrigin:t,currentPathname:a,searchParams:r,storedReturnTo:n,referrer:o}=e;return c(r?.get("returnTo"),t,a)??c(n,t,a)??c(o,t,a)??"/"}},444:e=>{e.exports={container:"styles_container__xKEZT",info:"styles_info__SgVE1",link:"styles_link__MwmGc"}},85214:e=>{e.exports={container:"styles_container__m0oBc","slide-top":"styles_slide-top__E7vWR",acceptButton:"styles_acceptButton__PlsW_",link:"styles_link__tqNHQ"}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.