@primestyleai/tryon 5.10.116 → 5.10.117

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -262,9 +262,9 @@ function nn(o, g, t) {
262
262
  const r = yg(o.leftIrisRing, g, t), B = yg(o.rightIrisRing, g, t), a = (r + B) / 2;
263
263
  let n = 1;
264
264
  a < 8 ? n = 0.3 : Math.abs(r - B) / a > 0.3 ? n = 0.5 : Math.abs(r - B) / a > 0.15 && (n = 0.8);
265
- const w = a > 0 ? Mg / a : 0, s = (E, M) => Math.hypot(
266
- (E.x - M.x) * g,
267
- (E.y - M.y) * t
265
+ const w = a > 0 ? Mg / a : 0, s = (E, H) => Math.hypot(
266
+ (E.x - H.x) * g,
267
+ (E.y - H.y) * t
268
268
  ) * w, l = s(o.leftIrisCenter, o.rightIrisCenter), d = s(o.leftInnerEye, o.rightInnerEye) / 1.6, m = s(o.leftTragus, o.rightTragus), P = s(o.leftTragus, o.leftOuterEye), x = s(o.rightTragus, o.rightOuterEye), L = (P + x) / 2, G = m * 1.07, D = Math.abs((o.forehead.z ?? 0) - (o.chin.z ?? 0)) * g * w, W = Math.max(170, Math.min(210, D || 190)), V = G / 2, i = W / 2, b = Math.PI * Math.sqrt(2 * (V * V + i * i));
269
269
  return {
270
270
  measurements: {
@@ -8194,6 +8194,21 @@ const xn = `
8194
8194
  color: var(--ps-error-color); font-size: 0.73vw; margin: 0;
8195
8195
  }
8196
8196
 
8197
+ /* Photo step → manual measurements escape hatch (desktop only — mobile
8198
+ uses MobileBottomTabs). Subtle inline link, sits just above the
8199
+ back/analyze nav row. */
8200
+ .ps-bp-photo-manual-switch {
8201
+ text-align: center; padding: 0.5vw 0 0.3vw;
8202
+ font-size: 0.78vw; color: var(--ps-text-muted);
8203
+ }
8204
+ .ps-bp-photo-manual-link {
8205
+ background: none; border: none; padding: 0;
8206
+ color: var(--ps-accent); font-weight: 600; cursor: pointer;
8207
+ font-size: inherit; font-family: inherit; text-decoration: underline;
8208
+ text-underline-offset: 2px;
8209
+ }
8210
+ .ps-bp-photo-manual-link:hover { color: var(--ps-accent-hover); }
8211
+
8197
8212
  /* Navigation — back left, next right */
8198
8213
  .ps-bp-nav {
8199
8214
  display: flex; align-items: center; margin-top: auto;
@@ -8949,10 +8964,10 @@ function Rn({
8949
8964
  /* @__PURE__ */ A("h3", { className: "ps-bp-title", style: { fontSize: "1.1vw" }, children: G("Here's what we estimated") }),
8950
8965
  /* @__PURE__ */ A("p", { className: "ps-bp-subtitle", children: G("Tap any value to adjust if needed") }),
8951
8966
  /* @__PURE__ */ A("div", { className: "ps-tryon-sf-fields", style: { flex: 1, overflowY: "auto" }, children: W.map((i) => {
8952
- const b = t[i.key], E = a.current[i.key] ? parseFloat(a.current[i.key]) : null, M = b || E;
8953
- if (!M) return null;
8967
+ const b = t[i.key], E = a.current[i.key] ? parseFloat(a.current[i.key]) : null, H = b || E;
8968
+ if (!H) return null;
8954
8969
  const N = !b && !!E;
8955
- return a.current[i.key] || (a.current[i.key] = String(M)), /* @__PURE__ */ A("div", { className: "ps-tryon-sf-float-row", children: /* @__PURE__ */ e("div", { className: "ps-tryon-sf-float-field", children: [
8970
+ return a.current[i.key] || (a.current[i.key] = String(H)), /* @__PURE__ */ A("div", { className: "ps-tryon-sf-float-row", children: /* @__PURE__ */ e("div", { className: "ps-tryon-sf-float-field", children: [
8956
8971
  /* @__PURE__ */ e("label", { className: "ps-tryon-sf-float-label", children: [
8957
8972
  G(i.label),
8958
8973
  " (",
@@ -8966,7 +8981,7 @@ function Rn({
8966
8981
  type: "number",
8967
8982
  placeholder: " ",
8968
8983
  className: "ps-tryon-sf-input",
8969
- defaultValue: M,
8984
+ defaultValue: H,
8970
8985
  onInput: (j) => d(i.key, j.target.value)
8971
8986
  }
8972
8987
  )
@@ -9146,7 +9161,7 @@ function Yg({
9146
9161
  }, G = 6e3, I = 1e3, D = hA(Date.now()), [W, V] = f(0);
9147
9162
  MA(() => {
9148
9163
  const b = (G - I) / Math.max(1, m.length - 1), E = setInterval(() => {
9149
- const M = Date.now() - D.current, N = Math.min(m.length - 1, Math.floor(M / b));
9164
+ const H = Date.now() - D.current, N = Math.min(m.length - 1, Math.floor(H / b));
9150
9165
  V((j) => j === N ? j : N), N >= m.length - 1 && clearInterval(E);
9151
9166
  }, 100);
9152
9167
  return () => clearInterval(E);
@@ -9229,7 +9244,7 @@ function er({
9229
9244
  b.matchDetails && i.push(...b.matchDetails);
9230
9245
  if (i.length > 0) {
9231
9246
  const b = i.filter(
9232
- (M) => M.fit === "good" || M.fit === "a-bit-tight" || M.fit === "a-bit-loose"
9247
+ (H) => H.fit === "good" || H.fit === "a-bit-tight" || H.fit === "a-bit-loose"
9233
9248
  ).length, E = Math.round(b / i.length * 100);
9234
9249
  return Math.max(70, E);
9235
9250
  }
@@ -9293,7 +9308,7 @@ function er({
9293
9308
  /* @__PURE__ */ A("span", { className: "ps-msr-match-label", children: I("FIT MATCH") })
9294
9309
  ] }) }),
9295
9310
  /* @__PURE__ */ A("div", { className: "ps-msr-sections", children: B.map(({ name: i, secResult: b }) => {
9296
- const E = i.replace(/\s*[—–-]\s*.*/g, ""), M = b, N = a?.[i], j = !!N, wA = M.found === !1 ? I("No fit") : j ? N.displayLabel : M.size || b.recommendedSize, J = r?.sectionImages?.[i], ie = $n(i), h = J || ie || null;
9311
+ const E = i.replace(/\s*[—–-]\s*.*/g, ""), H = b, N = a?.[i], j = !!N, wA = H.found === !1 ? I("No fit") : j ? N.displayLabel : H.size || b.recommendedSize, J = r?.sectionImages?.[i], ie = $n(i), h = J || ie || null;
9297
9312
  return /* @__PURE__ */ e(
9298
9313
  "button",
9299
9314
  {
@@ -9685,10 +9700,10 @@ function Fo({ lines: o, fitRows: g, show: t, imgWidth: r, imgHeight: B }) {
9685
9700
  if (!G || typeof G.x1 != "number" || typeof G.x2 != "number" || typeof G.y != "number") return null;
9686
9701
  const W = Math.abs(G.x2 - G.x1);
9687
9702
  if (Q > 0 && W < Q * 0.35 || W * w < 20) return null;
9688
- const V = G.x1 * w, i = G.x2 * w, b = G.y * s, E = i - V, M = E * 0.06, N = (V + i) / 2, j = g.find((ee) => {
9703
+ const V = G.x1 * w, i = G.x2 * w, b = G.y * s, E = i - V, H = E * 0.06, N = (V + i) / 2, j = g.find((ee) => {
9689
9704
  const yA = ee.area.toLowerCase().trim();
9690
9705
  return !!(yA === L || L === "chest" && (yA.includes("bust") || yA.includes("chest")) || L === "waist" && yA.includes("waist") || L === "hips" && (yA.includes("hip") || yA === "hips"));
9691
- }), wA = j ? a(j.fit) : "#2154EF", J = D * 0.35, ie = `M ${V} ${b} Q ${N} ${b + M} ${i} ${b}`, h = E * 1.05, Ce = j ? j.fit === "good" ? "✓ Fit" : j.isLength ? j.fit.includes("short") || j.fit.includes("tight") ? "Short" : "Long" : j.fit.includes("tight") ? "Tight" : "Loose" : I, oA = Math.round(14 * x), O = Ce.length * oA * 0.62, T = w - i - 12 * x < O, _ = T ? V - 10 * x : i + 10 * x, pA = T ? "end" : "start", nA = T ? V : i, RA = T ? V - 6 * x : i + 6 * x;
9706
+ }), wA = j ? a(j.fit) : "#2154EF", J = D * 0.35, ie = `M ${V} ${b} Q ${N} ${b + H} ${i} ${b}`, h = E * 1.05, Ce = j ? j.fit === "good" ? "✓ Fit" : j.isLength ? j.fit.includes("short") || j.fit.includes("tight") ? "Short" : "Long" : j.fit.includes("tight") ? "Tight" : "Loose" : I, oA = Math.round(14 * x), O = Ce.length * oA * 0.62, T = w - i - 12 * x < O, _ = T ? V - 10 * x : i + 10 * x, pA = T ? "end" : "start", nA = T ? V : i, RA = T ? V - 6 * x : i + 6 * x;
9692
9707
  return /* @__PURE__ */ e("g", { children: [
9693
9708
  /* @__PURE__ */ A(
9694
9709
  "path",
@@ -9820,43 +9835,43 @@ function To({
9820
9835
  internationalSizes: i,
9821
9836
  continueLabel: b,
9822
9837
  renderRaw: E = !1,
9823
- sectionFound: M,
9838
+ sectionFound: H,
9824
9839
  allSizes: N
9825
9840
  }) {
9826
- const j = t?.recommendedSize || "", [wA, J] = f(null), ie = Tn(W ?? null), h = B.toLowerCase(), Ce = h.includes("mm") ? "mm" : h.includes("cm") ? "cm" : "in", oA = a || Ce, O = (H) => ct(H, oA, Ce), GA = (H) => Br(H, oA, Ce), T = (H) => {
9827
- const AA = GA(H);
9841
+ const j = t?.recommendedSize || "", [wA, J] = f(null), ie = Tn(W ?? null), h = B.toLowerCase(), Ce = h.includes("mm") ? "mm" : h.includes("cm") ? "cm" : "in", oA = a || Ce, O = (M) => ct(M, oA, Ce), GA = (M) => Br(M, oA, Ce), T = (M) => {
9842
+ const AA = GA(M);
9828
9843
  return /^\d+(?:\.\d+)?(?:\s*[-–]\s*\d+(?:\.\d+)?)?$/.test(AA.trim()) ? `${AA} ${B}` : AA;
9829
9844
  }, _ = i ? Object.keys(i) : [], [pA, nA] = f(null), RA = n?.secResult?.recommendedSize || "", [ee, yA] = f(null), LA = He(() => {
9830
9845
  if (!n) return [];
9831
- const H = n.section, AA = H.headers.findIndex((CA) => /size|taglia|größe|taille/i.test(CA.trim())), EA = AA >= 0 ? AA : 0, S = H.headers[EA] || "Size", IA = H.rows.map((CA) => Te(CA, EA, S)).filter(Boolean);
9846
+ const M = n.section, AA = M.headers.findIndex((CA) => /size|taglia|größe|taille/i.test(CA.trim())), EA = AA >= 0 ? AA : 0, S = M.headers[EA] || "Size", IA = M.rows.map((CA) => Te(CA, EA, S)).filter(Boolean);
9832
9847
  return [...new Set(IA)];
9833
9848
  }, [n]), he = He(() => ({}), []), uA = He(() => {
9834
- const H = g.headers.findIndex((AA) => /size|taglia|größe|taille/i.test(AA.trim()));
9835
- if (H >= 0) return H;
9849
+ const M = g.headers.findIndex((AA) => /size|taglia|größe|taille/i.test(AA.trim()));
9850
+ if (M >= 0) return M;
9836
9851
  for (let AA = 0; AA < g.headers.length; AA++) {
9837
9852
  const EA = g.headers[AA];
9838
9853
  if (g.rows.some((S) => /^(XXS|XS|S|M|L|XL|XXL|XXXL|ONE SIZE|\d{1,2})$/i.test(Te(S, AA, EA)))) return AA;
9839
9854
  }
9840
9855
  return 0;
9841
9856
  }, [g]), oe = g.headers[uA] || "Size", TA = He(() => {
9842
- const H = g.rows.map((AA) => Te(AA, uA, oe)).filter(Boolean);
9843
- return [...new Set(H)];
9857
+ const M = g.rows.map((AA) => Te(AA, uA, oe)).filter(Boolean);
9858
+ return [...new Set(M)];
9844
9859
  }, [g, uA, oe]), de = wA || j, vA = de === j;
9845
9860
  He(() => {
9846
9861
  if (vA) return null;
9847
- const H = t?.matchDetails ?? [], AA = /tight|loose|large|small|very/i, EA = H.some((S) => AA.test(S.fit || ""));
9862
+ const M = t?.matchDetails ?? [], AA = /tight|loose|large|small|very/i, EA = M.some((S) => AA.test(S.fit || ""));
9848
9863
  return s(EA ? "Not Recommended" : "Your Selection");
9849
9864
  }, [vA, t, s]);
9850
9865
  const XA = pA && vA && i && i[pA] ? i[pA] : de, iA = He(() => {
9851
- const H = [];
9866
+ const M = [];
9852
9867
  for (let AA = 0; AA < g.headers.length; AA++) {
9853
9868
  const EA = (g.headers[AA] || "").toLowerCase();
9854
9869
  if (/\(cm\)|centimeter/i.test(EA)) {
9855
- H.push("cm");
9870
+ M.push("cm");
9856
9871
  continue;
9857
9872
  }
9858
9873
  if (/\(in\)|\(inch|inch/i.test(EA)) {
9859
- H.push("in");
9874
+ M.push("in");
9860
9875
  continue;
9861
9876
  }
9862
9877
  let S = null;
@@ -9873,11 +9888,11 @@ function To({
9873
9888
  }
9874
9889
  }
9875
9890
  }
9876
- H.push(S);
9891
+ M.push(S);
9877
9892
  }
9878
- return H;
9879
- }, [g]), Me = bA((H, AA) => {
9880
- const EA = H.toLowerCase().trim(), S = B === "cm" || B === "", IA = S ? "cm" : "in", CA = [];
9893
+ return M;
9894
+ }, [g]), Me = bA((M, AA) => {
9895
+ const EA = M.toLowerCase().trim(), S = B === "cm" || B === "", IA = S ? "cm" : "in", CA = [];
9881
9896
  for (let xA = 0; xA < g.headers.length; xA++) {
9882
9897
  const FA = (g.headers[xA] || "").toLowerCase().trim();
9883
9898
  if (FA === EA) {
@@ -9941,7 +9956,7 @@ function To({
9941
9956
  isLength: !1
9942
9957
  };
9943
9958
  });
9944
- const H = t?.matchDetails || [], AA = n?.secResult?.matchDetails || [], EA = /* @__PURE__ */ new Set(), S = [...H, ...AA].filter((u) => {
9959
+ const M = t?.matchDetails || [], AA = n?.secResult?.matchDetails || [], EA = /* @__PURE__ */ new Set(), S = [...M, ...AA].filter((u) => {
9945
9960
  const YA = String(u?.measurement ?? "").toLowerCase().trim();
9946
9961
  return !YA || EA.has(YA) ? !1 : (EA.add(YA), !0);
9947
9962
  }), IA = t?.length || "", CA = (t?.availableLengths?.length || 0) > 0, ae = RA || IA, ve = !!(n || CA), ge = S.some((u) => u.measurement.toLowerCase() === "height"), NA = !!n?.section?.headers?.some((u) => /height|altezza|estatura|\(cm\)/i.test(u));
@@ -9985,24 +10000,24 @@ function To({
9985
10000
  };
9986
10001
  });
9987
10002
  }, [t, n, r, E, N, de]), De = Ee.filter(
9988
- (H) => H.fit === "good" || H.fit === "a-bit-tight" || H.fit === "a-bit-loose"
10003
+ (M) => M.fit === "good" || M.fit === "a-bit-tight" || M.fit === "a-bit-loose"
9989
10004
  ).length, me = Ee.length > 0 ? Math.round(De / Ee.length * 100) : 0, WA = !E, DA = t, mA = DA?.size || j, F = (t?.matchDetails || []).find(
9990
- (H) => /inseam|length/i.test(H.measurement) && !/neck|arm|sleeve|back|shoulder/i.test(H.measurement)
10005
+ (M) => /inseam|length/i.test(M.measurement) && !/neck|arm|sleeve|back|shoulder/i.test(M.measurement)
9991
10006
  ), lA = F ? (F.chartRange || "").replace(/\s*(cm|in|inches)\s*/i, "").trim() : "", Qe = DA?.length || RA || lA, le = DA?.availableSizes || [], Oe = DA?.availableLengths || [], $A = ee || Qe, tA = le.length > 0 ? le : TA, se = (() => {
9992
10007
  if (tA.length <= 3) return tA;
9993
- const H = tA.indexOf(j);
9994
- if (H < 0) return tA.slice(0, 3);
9995
- const AA = Math.max(0, Math.min(tA.length - 3, H - 1));
10008
+ const M = tA.indexOf(j);
10009
+ if (M < 0) return tA.slice(0, 3);
10010
+ const AA = Math.max(0, Math.min(tA.length - 3, M - 1));
9996
10011
  return tA.slice(AA, AA + 3);
9997
10012
  })(), zA = Oe.length > 0 ? Oe : LA, _A = (() => {
9998
10013
  if (zA.length <= 3) return zA;
9999
- const H = zA.indexOf(Qe);
10000
- if (H < 0) return zA.slice(0, 3);
10001
- const AA = Math.max(0, Math.min(zA.length - 3, H - 1));
10014
+ const M = zA.indexOf(Qe);
10015
+ if (M < 0) return zA.slice(0, 3);
10016
+ const AA = Math.max(0, Math.min(zA.length - 3, M - 1));
10002
10017
  return zA.slice(AA, AA + 3);
10003
10018
  })();
10004
10019
  if (d) {
10005
- const H = o.replace(/\s*[—–-]\s*.*/g, ""), AA = (S) => {
10020
+ const M = o.replace(/\s*[—–-]\s*.*/g, ""), AA = (S) => {
10006
10021
  const IA = S.toLowerCase().replace(/\s*\(.*?\)\s*/g, "").trim();
10007
10022
  return IA.includes("chest") || IA.includes("bust") ? s("Full circumference at the widest point.") : IA.includes("waist") ? s("Circumference at the natural waistline.") : IA.includes("hip") ? s("Circumference at the fullest point.") : IA.includes("shoulder") ? s("Shoulder edge to shoulder edge.") : IA.includes("sleeve") || IA.includes("arm") ? s("Shoulder seam to cuff edge.") : IA.includes("neck") || IA.includes("collar") ? s("Around the base of the neck.") : IA.includes("inseam") || IA.includes("inside leg") ? s("Inner leg seam length.") : IA.includes("thigh") ? s("Circumference around the upper leg.") : IA.includes("length") || IA.includes("height") ? s("Top to bottom length.") : "";
10008
10023
  }, EA = (S, IA) => IA && S === "good" ? s("EDITORIAL LENGTH") : S === "good" ? s("PERFECT TENSION") : S === "a-bit-tight" ? s("SLIGHTLY TIGHT") : S === "a-bit-loose" ? s("SLIGHT EASE") : S.includes("tight") ? s("TIGHT") : S.includes("loose") ? s("LOOSE") : s("FIT");
@@ -10013,7 +10028,7 @@ function To({
10013
10028
  /* @__PURE__ */ A("polyline", { points: "12 19 5 12 12 5" })
10014
10029
  ] }) }),
10015
10030
  /* @__PURE__ */ e("span", { className: "ps-msd-topbar-title", children: [
10016
- H.toUpperCase(),
10031
+ M.toUpperCase(),
10017
10032
  " ",
10018
10033
  s("DETAIL")
10019
10034
  ] }),
@@ -10049,7 +10064,7 @@ function To({
10049
10064
  }
10050
10065
  )
10051
10066
  ] }),
10052
- M === !1 && /* @__PURE__ */ A("div", { style: {
10067
+ H === !1 && /* @__PURE__ */ A("div", { style: {
10053
10068
  flex: 1,
10054
10069
  display: "flex",
10055
10070
  alignItems: "center",
@@ -10066,7 +10081,7 @@ function To({
10066
10081
  /* @__PURE__ */ A("p", { style: { fontSize: "15px", fontWeight: 600, color: "var(--ps-text-primary)", margin: "10px 0 6px", lineHeight: 1.4 }, children: s("We couldn't find a size that fits for this product.") }),
10067
10082
  /* @__PURE__ */ A("p", { className: "ps-msd-card-note", style: { margin: 0, lineHeight: 1.5 }, children: s("Your measurements are outside this product's size range. You can still try it on visually below.") })
10068
10083
  ] }) }),
10069
- M !== !1 && /* @__PURE__ */ e("div", { className: "ps-msd-card", children: [
10084
+ H !== !1 && /* @__PURE__ */ e("div", { className: "ps-msd-card", children: [
10070
10085
  /* @__PURE__ */ A(
10071
10086
  "span",
10072
10087
  {
@@ -10133,7 +10148,7 @@ function To({
10133
10148
  ] }),
10134
10149
  /* @__PURE__ */ A("p", { className: "ps-msd-card-note", children: s("Based on your measurements and the garment's tailoring chart.") })
10135
10150
  ] }),
10136
- M !== !1 && Ee.length > 0 && /* @__PURE__ */ e("div", { className: "ps-msd-blueprint", children: [
10151
+ H !== !1 && Ee.length > 0 && /* @__PURE__ */ e("div", { className: "ps-msd-blueprint", children: [
10137
10152
  /* @__PURE__ */ A("span", { className: "ps-msd-blueprint-title", children: s("MEASUREMENT BLUEPRINT") }),
10138
10153
  /* @__PURE__ */ A("div", { className: "ps-msd-blueprint-underline" }),
10139
10154
  /* @__PURE__ */ A("div", { className: "ps-msd-rows", children: Ee.map((S, IA) => {
@@ -10166,7 +10181,7 @@ function To({
10166
10181
  ] }, IA);
10167
10182
  }) })
10168
10183
  ] }),
10169
- M !== !1 && se.length > 1 && /* @__PURE__ */ e("div", { className: "ps-msd-sizes", children: [
10184
+ H !== !1 && se.length > 1 && /* @__PURE__ */ e("div", { className: "ps-msd-sizes", children: [
10170
10185
  /* @__PURE__ */ A("span", { className: "ps-msd-sizes-label", children: s("TRY ANOTHER SIZE") }),
10171
10186
  /* @__PURE__ */ A("div", { className: "ps-msd-sizes-pills", children: se.map((S) => /* @__PURE__ */ A(
10172
10187
  "button",
@@ -10179,7 +10194,7 @@ function To({
10179
10194
  S
10180
10195
  )) })
10181
10196
  ] }),
10182
- M !== !1 && _A.length > 0 && /* @__PURE__ */ e("div", { className: "ps-msd-sizes", children: [
10197
+ H !== !1 && _A.length > 0 && /* @__PURE__ */ e("div", { className: "ps-msd-sizes", children: [
10183
10198
  /* @__PURE__ */ A("span", { className: "ps-msd-sizes-label", children: s("LENGTH ADJUSTMENT") }),
10184
10199
  /* @__PURE__ */ A("div", { className: "ps-msd-sizes-pills", children: _A.map((S) => {
10185
10200
  const IA = String($A ?? "").trim() === String(S ?? "").trim(), CA = he[String(S).trim()];
@@ -10199,7 +10214,7 @@ function To({
10199
10214
  );
10200
10215
  }) })
10201
10216
  ] }),
10202
- M !== !1 && /* @__PURE__ */ e("p", { className: "ps-msd-footer-note", children: [
10217
+ H !== !1 && /* @__PURE__ */ e("p", { className: "ps-msd-footer-note", children: [
10203
10218
  s("*Our sizing engine recommends"),
10204
10219
  " ",
10205
10220
  mA,
@@ -10282,7 +10297,7 @@ function To({
10282
10297
  ] }) });
10283
10298
  }
10284
10299
  return /* @__PURE__ */ e("div", { className: "ps-tryon-sec-detail", style: { padding: "1.5vw", display: "flex", flexDirection: "column", height: "100%", background: "#F8F9FA" }, children: [
10285
- /* @__PURE__ */ A("div", { style: { flex: 1, minHeight: 0, overflowY: "auto", scrollbarWidth: "thin", scrollbarColor: "rgba(0,0,0,0.04) transparent", display: M === !1 ? "flex" : "block", alignItems: M === !1 ? "center" : void 0, justifyContent: M === !1 ? "center" : void 0 }, children: M === !1 ? /* @__PURE__ */ e("div", { style: {
10300
+ /* @__PURE__ */ A("div", { style: { flex: 1, minHeight: 0, overflowY: "auto", scrollbarWidth: "thin", scrollbarColor: "rgba(0,0,0,0.04) transparent", display: H === !1 ? "flex" : "block", alignItems: H === !1 ? "center" : void 0, justifyContent: H === !1 ? "center" : void 0 }, children: H === !1 ? /* @__PURE__ */ e("div", { style: {
10286
10301
  background: "white",
10287
10302
  borderRadius: "0.7vw",
10288
10303
  border: "1px solid rgba(0,0,0,0.06)",
@@ -10313,7 +10328,7 @@ function To({
10313
10328
  "select",
10314
10329
  {
10315
10330
  value: pA || "",
10316
- onChange: (H) => nA(H.target.value || null),
10331
+ onChange: (M) => nA(M.target.value || null),
10317
10332
  style: {
10318
10333
  fontSize: "0.7vw",
10319
10334
  fontWeight: 600,
@@ -10330,7 +10345,7 @@ function To({
10330
10345
  "aria-label": s("Display size in country"),
10331
10346
  children: [
10332
10347
  /* @__PURE__ */ A("option", { value: "", children: s("Standard") }),
10333
- _.map((H) => /* @__PURE__ */ A("option", { value: H, children: H }, H))
10348
+ _.map((M) => /* @__PURE__ */ A("option", { value: M, children: M }, M))
10334
10349
  ]
10335
10350
  }
10336
10351
  ),
@@ -10345,7 +10360,7 @@ function To({
10345
10360
  }, children: [
10346
10361
  /* @__PURE__ */ A("span", { style: { fontSize: "3.5vw", fontWeight: 300, color: "var(--ps-text-primary)", lineHeight: 1, letterSpacing: "-0.02em" }, children: XA }),
10347
10362
  $A && (() => {
10348
- const H = /^\d+(\.\d+)?$/.test(String($A).trim()), AA = (o || "").toLowerCase(), EA = H ? /pant|trouser|inseam/.test(AA) ? s("Inseam") : s("Length") : null;
10363
+ const M = /^\d+(\.\d+)?$/.test(String($A).trim()), AA = (o || "").toLowerCase(), EA = M ? /pant|trouser|inseam/.test(AA) ? s("Inseam") : s("Length") : null;
10349
10364
  return /* @__PURE__ */ e("span", { style: { fontSize: "1.4vw", fontWeight: 400, color: "var(--ps-text-secondary)", display: "inline-flex", alignItems: "baseline", gap: "0.25vw" }, children: [
10350
10365
  /* @__PURE__ */ A("span", { style: { fontSize: "0.9vw", fontWeight: 600, color: "var(--ps-text-muted)", letterSpacing: "0.02em" }, children: "/" }),
10351
10366
  EA && /* @__PURE__ */ A("span", { style: { fontSize: "0.7vw", fontWeight: 600, color: "var(--ps-text-muted)", textTransform: "uppercase", letterSpacing: "0.08em" }, children: EA }),
@@ -10377,13 +10392,13 @@ function To({
10377
10392
  /* @__PURE__ */ A("th", { style: { textAlign: "left", padding: "0.5vw 0.6vw", fontSize: "0.6vw", fontWeight: 600, color: "var(--ps-text-secondary)", textTransform: "uppercase", letterSpacing: "0.08em", borderBottom: "1px solid rgba(0,0,0,0.06)" }, children: s("Garment Spec") }),
10378
10393
  /* @__PURE__ */ A("th", { style: { textAlign: "right", padding: "0.5vw 0.6vw", fontSize: "0.6vw", fontWeight: 600, color: "var(--ps-text-secondary)", textTransform: "uppercase", letterSpacing: "0.08em", borderBottom: "1px solid rgba(0,0,0,0.06)" }, children: s("Fit Result") })
10379
10394
  ] }) }),
10380
- /* @__PURE__ */ A("tbody", { children: Ee.map((H, AA) => {
10381
- const EA = H.fit === "good" ? "#2154EF" : H.isLength ? H.fit.includes("short") || H.fit.includes("tight") ? "#dc2626" : "#d97706" : H.fit.includes("tight") ? "#dc2626" : "#d97706", S = H.fit === "good" ? "rgba(33,84,239,0.08)" : H.isLength ? H.fit.includes("short") || H.fit.includes("tight") ? "rgba(220,38,38,0.08)" : "rgba(217,119,6,0.08)" : H.fit.includes("tight") ? "rgba(220,38,38,0.08)" : "rgba(217,119,6,0.08)";
10395
+ /* @__PURE__ */ A("tbody", { children: Ee.map((M, AA) => {
10396
+ const EA = M.fit === "good" ? "#2154EF" : M.isLength ? M.fit.includes("short") || M.fit.includes("tight") ? "#dc2626" : "#d97706" : M.fit.includes("tight") ? "#dc2626" : "#d97706", S = M.fit === "good" ? "rgba(33,84,239,0.08)" : M.isLength ? M.fit.includes("short") || M.fit.includes("tight") ? "rgba(220,38,38,0.08)" : "rgba(217,119,6,0.08)" : M.fit.includes("tight") ? "rgba(220,38,38,0.08)" : "rgba(217,119,6,0.08)";
10382
10397
  return /* @__PURE__ */ e("tr", { style: { borderBottom: AA < Ee.length - 1 ? "1px solid rgba(0,0,0,0.04)" : "none" }, children: [
10383
- /* @__PURE__ */ A("td", { style: { padding: "0.55vw 0.6vw", fontSize: "0.75vw", fontWeight: 500, color: "var(--ps-text-primary)" }, children: H.area }),
10384
- /* @__PURE__ */ A("td", { style: { padding: "0.55vw 0.6vw", fontSize: "0.75vw", color: "var(--ps-text-secondary)" }, children: E ? H.rawUserValue || "" : isNaN(H.userNum) || H.userNum === 0 ? "" : `${O(H.userNum)} ${B}` }),
10385
- /* @__PURE__ */ A("td", { style: { padding: "0.55vw 0.6vw", fontSize: "0.75vw", color: "var(--ps-text-secondary)" }, children: E ? H.rawChartRange || "" : T(H.chartLabel) }),
10386
- /* @__PURE__ */ A("td", { style: { padding: "0.55vw 0.6vw", textAlign: "right" }, children: /* @__PURE__ */ A("span", { style: { fontSize: "0.6vw", fontWeight: 600, color: EA, background: S, borderRadius: "1vw", padding: "0.15vw 0.5vw", whiteSpace: "nowrap" }, children: H.isLength ? Lg(H.fit, s) : ar(H.fit, s) }) })
10398
+ /* @__PURE__ */ A("td", { style: { padding: "0.55vw 0.6vw", fontSize: "0.75vw", fontWeight: 500, color: "var(--ps-text-primary)" }, children: M.area }),
10399
+ /* @__PURE__ */ A("td", { style: { padding: "0.55vw 0.6vw", fontSize: "0.75vw", color: "var(--ps-text-secondary)" }, children: E ? M.rawUserValue || "" : isNaN(M.userNum) || M.userNum === 0 ? "" : `${O(M.userNum)} ${B}` }),
10400
+ /* @__PURE__ */ A("td", { style: { padding: "0.55vw 0.6vw", fontSize: "0.75vw", color: "var(--ps-text-secondary)" }, children: E ? M.rawChartRange || "" : T(M.chartLabel) }),
10401
+ /* @__PURE__ */ A("td", { style: { padding: "0.55vw 0.6vw", textAlign: "right" }, children: /* @__PURE__ */ A("span", { style: { fontSize: "0.6vw", fontWeight: 600, color: EA, background: S, borderRadius: "1vw", padding: "0.15vw 0.5vw", whiteSpace: "nowrap" }, children: M.isLength ? Lg(M.fit, s) : ar(M.fit, s) }) })
10387
10402
  ] }, AA);
10388
10403
  }) })
10389
10404
  ] }) }),
@@ -10395,12 +10410,12 @@ function To({
10395
10410
  " ",
10396
10411
  s("Size")
10397
10412
  ] }),
10398
- /* @__PURE__ */ A("div", { style: { display: "flex", gap: "0.3vw", flexWrap: "wrap" }, children: se.map((H) => {
10399
- const AA = H === de;
10413
+ /* @__PURE__ */ A("div", { style: { display: "flex", gap: "0.3vw", flexWrap: "wrap" }, children: se.map((M) => {
10414
+ const AA = M === de;
10400
10415
  return /* @__PURE__ */ A(
10401
10416
  "button",
10402
10417
  {
10403
- onClick: () => J(H === j ? null : H),
10418
+ onClick: () => J(M === j ? null : M),
10404
10419
  style: {
10405
10420
  padding: "0.35vw 0.7vw",
10406
10421
  borderRadius: "0.35vw",
@@ -10415,20 +10430,20 @@ function To({
10415
10430
  minWidth: "2vw",
10416
10431
  textAlign: "center"
10417
10432
  },
10418
- children: H
10433
+ children: M
10419
10434
  },
10420
- H
10435
+ M
10421
10436
  );
10422
10437
  }) })
10423
10438
  ] }),
10424
10439
  _A.length > 0 && /* @__PURE__ */ e("div", { style: { marginBottom: "0.8vw", marginTop: "0.4vw" }, children: [
10425
10440
  /* @__PURE__ */ A("span", { style: { fontSize: "0.6vw", fontWeight: 700, color: "var(--ps-text-secondary)", textTransform: "uppercase", letterSpacing: "0.1em", display: "block", marginBottom: "0.4vw" }, children: s("Length Adjustment") }),
10426
- /* @__PURE__ */ A("div", { style: { display: "flex", gap: "0.3vw", flexWrap: "wrap" }, children: _A.map((H) => {
10427
- const AA = String($A ?? "").trim() === String(H ?? "").trim(), EA = he[String(H).trim()];
10441
+ /* @__PURE__ */ A("div", { style: { display: "flex", gap: "0.3vw", flexWrap: "wrap" }, children: _A.map((M) => {
10442
+ const AA = String($A ?? "").trim() === String(M ?? "").trim(), EA = he[String(M).trim()];
10428
10443
  return /* @__PURE__ */ e(
10429
10444
  "button",
10430
10445
  {
10431
- onClick: () => yA(H === Qe ? null : H),
10446
+ onClick: () => yA(M === Qe ? null : M),
10432
10447
  style: {
10433
10448
  padding: "0.35vw 0.7vw",
10434
10449
  borderRadius: "0.35vw",
@@ -10447,11 +10462,11 @@ function To({
10447
10462
  gap: "0.1vw"
10448
10463
  },
10449
10464
  children: [
10450
- /* @__PURE__ */ A("span", { children: H }),
10465
+ /* @__PURE__ */ A("span", { children: M }),
10451
10466
  EA && /* @__PURE__ */ A("span", { style: { fontSize: "0.55vw", fontWeight: 500, opacity: 0.75 }, children: EA })
10452
10467
  ]
10453
10468
  },
10454
- H
10469
+ M
10455
10470
  );
10456
10471
  }) })
10457
10472
  ] })
@@ -10483,11 +10498,11 @@ function To({
10483
10498
  gap: "0.4vw",
10484
10499
  transition: "opacity 0.2s"
10485
10500
  },
10486
- onMouseEnter: (H) => {
10487
- D || (H.currentTarget.style.opacity = "0.9");
10501
+ onMouseEnter: (M) => {
10502
+ D || (M.currentTarget.style.opacity = "0.9");
10488
10503
  },
10489
- onMouseLeave: (H) => {
10490
- D || (H.currentTarget.style.opacity = "1");
10504
+ onMouseLeave: (M) => {
10505
+ D || (M.currentTarget.style.opacity = "1");
10491
10506
  },
10492
10507
  children: [
10493
10508
  /* @__PURE__ */ A(go, { size: 12 }),
@@ -10513,8 +10528,8 @@ function To({
10513
10528
  gap: "0.3vw",
10514
10529
  transition: "opacity 0.2s"
10515
10530
  },
10516
- onMouseEnter: (H) => H.currentTarget.style.opacity = "0.9",
10517
- onMouseLeave: (H) => H.currentTarget.style.opacity = "1",
10531
+ onMouseEnter: (M) => M.currentTarget.style.opacity = "0.9",
10532
+ onMouseLeave: (M) => M.currentTarget.style.opacity = "1",
10518
10533
  children: [
10519
10534
  b || s("Continue"),
10520
10535
  " →"
@@ -10549,7 +10564,7 @@ function cr({
10549
10564
  measurementType: i = "body",
10550
10565
  estimationDone: b = !1,
10551
10566
  activeSection: E,
10552
- setActiveSection: M,
10567
+ setActiveSection: H,
10553
10568
  onResetTryOn: N,
10554
10569
  onClose: j,
10555
10570
  userHeightCm: wA,
@@ -10646,7 +10661,7 @@ function cr({
10646
10661
  }, [r, I]);
10647
10662
  const [le, Oe] = f(!1), [$A, tA] = f(!1);
10648
10663
  hA(null);
10649
- const [se, zA] = f(!1), [_A, H] = f(null), [AA, EA] = f(!1), S = hA(null), [IA, CA] = f(null), [ae, ve] = f(!1);
10664
+ const [se, zA] = f(!1), [_A, M] = f(null), [AA, EA] = f(!1), S = hA(null), [IA, CA] = f(null), [ae, ve] = f(!1);
10650
10665
  MA(() => {
10651
10666
  if (_A) {
10652
10667
  const v = URL.createObjectURL(_A);
@@ -10856,7 +10871,7 @@ function cr({
10856
10871
  const y = sg(v.name, YA);
10857
10872
  return y || v.secResult?.availableLengths?.length > 0 && YA.find((U) => U.section.headers.some((cA) => /height|altezza|estatura|\(cm\)/i.test(cA))) || null;
10858
10873
  })(),
10859
- onBack: () => M(null),
10874
+ onBack: () => H(null),
10860
10875
  internationalSizes: v.secResult?.internationalSizes,
10861
10876
  productImage: r || B,
10862
10877
  productTitle: n,
@@ -10907,7 +10922,7 @@ function cr({
10907
10922
  const y = sg(v.name, YA);
10908
10923
  return y || v.secResult?.availableLengths?.length > 0 && YA.find((U) => U.section.headers.some((cA) => /height|altezza|estatura|\(cm\)/i.test(cA))) || null;
10909
10924
  })(),
10910
- onBack: () => M(null),
10925
+ onBack: () => H(null),
10911
10926
  internationalSizes: v.secResult?.internationalSizes,
10912
10927
  t: h,
10913
10928
  allSizes: v.secResult?.allSizes ?? g?.allSizes
@@ -10930,15 +10945,15 @@ function cr({
10930
10945
  return { name: v, secResult: { ...y, recommendedSize: xA(v, K) } };
10931
10946
  }),
10932
10947
  pendingCustomSizes: lA,
10933
- onSelectSection: (v) => M(v),
10948
+ onSelectSection: (v) => H(v),
10934
10949
  onTryOn: () => {
10935
- H(m || null), zA(!0);
10950
+ M(m || null), zA(!0);
10936
10951
  },
10937
10952
  tryOnProcessing: I,
10938
10953
  resultImageUrl: r,
10939
10954
  tryOnDone: !!r && !I,
10940
10955
  onTryAgain: () => {
10941
- N?.(), H(m || null), zA(!0);
10956
+ N?.(), M(m || null), zA(!0);
10942
10957
  },
10943
10958
  onClose: j,
10944
10959
  showLines: XA,
@@ -11012,7 +11027,7 @@ function cr({
11012
11027
  /* @__PURE__ */ A("div", { className: "ps-tryon-v2-sep" }),
11013
11028
  /* @__PURE__ */ A("div", { className: "ps-tryon-sr-cards-v2", children: u.map(({ name: v, secResult: y }, K) => {
11014
11029
  const U = t?.sectionImages?.[v], cA = tr(v), X = K === u.length - 1 && u.length % 2 !== 0, kA = y, KA = lA[v], VA = !!KA, fe = VA ? KA.displayLabel : xA(v, kA.size || y.recommendedSize || "");
11015
- return /* @__PURE__ */ e("button", { className: `ps-tryon-sr-card-v2${X ? " ps-full" : ""}${VA ? " ps-overridden" : ""}`, onClick: () => M(v), style: { animationDelay: `${K * 0.07}s` }, children: [
11030
+ return /* @__PURE__ */ e("button", { className: `ps-tryon-sr-card-v2${X ? " ps-full" : ""}${VA ? " ps-overridden" : ""}`, onClick: () => H(v), style: { animationDelay: `${K * 0.07}s` }, children: [
11016
11031
  /* @__PURE__ */ e("div", { className: "ps-tryon-sr-card-v2-text", children: [
11017
11032
  /* @__PURE__ */ e("span", { className: "ps-tryon-sr-card-v2-label", children: [
11018
11033
  cA && /* @__PURE__ */ A("img", { src: cA, alt: "", className: "ps-tryon-sr-card-v2-label-icon" }),
@@ -11076,7 +11091,7 @@ function cr({
11076
11091
  style: { marginTop: 0 },
11077
11092
  disabled: I,
11078
11093
  onClick: () => {
11079
- H(m || null), zA(!0);
11094
+ M(m || null), zA(!0);
11080
11095
  },
11081
11096
  children: [
11082
11097
  /* @__PURE__ */ A(go, { size: 14 }),
@@ -11095,7 +11110,7 @@ function cr({
11095
11110
  if (g?.matchDetails)
11096
11111
  for (const X of g.matchDetails) K[X.measurement.toLowerCase()] = _e(X.userValue);
11097
11112
  const U = h("Your Fit"), cA = () => {
11098
- r || (H(m || null), zA(!0));
11113
+ r || (M(m || null), zA(!0));
11099
11114
  };
11100
11115
  return BA ? /* @__PURE__ */ e(eA, { children: [
11101
11116
  be && /* @__PURE__ */ A("div", { style: { padding: "0 16px" }, children: be }),
@@ -11176,7 +11191,7 @@ function cr({
11176
11191
  chartUnit: oA,
11177
11192
  lengthEntry: null,
11178
11193
  onBack: () => {
11179
- r ? (N?.(), Q("body-profile")) : M(null);
11194
+ r ? (N?.(), Q("body-profile")) : H(null);
11180
11195
  },
11181
11196
  backLabel: h("Back"),
11182
11197
  internationalSizes: g?.internationalSizes,
@@ -11234,7 +11249,7 @@ function cr({
11234
11249
  "button",
11235
11250
  {
11236
11251
  className: `ps-tryon-sr-card-v2 ps-full${lA[U] ? " ps-overridden" : ""}`,
11237
- onClick: () => M(U),
11252
+ onClick: () => H(U),
11238
11253
  type: "button",
11239
11254
  children: /* @__PURE__ */ e("div", { className: "ps-tryon-sr-card-v2-text", children: [
11240
11255
  /* @__PURE__ */ A("span", { className: "ps-tryon-sr-card-v2-label", children: U }),
@@ -11317,7 +11332,7 @@ function cr({
11317
11332
  style: { display: "none" },
11318
11333
  onChange: (v) => {
11319
11334
  const y = v.target.files?.[0];
11320
- y && H(y);
11335
+ y && M(y);
11321
11336
  }
11322
11337
  }
11323
11338
  ),
@@ -11328,7 +11343,7 @@ function cr({
11328
11343
  {
11329
11344
  type: "button",
11330
11345
  className: "ps-pm-preview-remove",
11331
- onClick: () => H(null),
11346
+ onClick: () => M(null),
11332
11347
  "aria-label": h("Remove photo"),
11333
11348
  children: /* @__PURE__ */ e("svg", { viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round", width: "14", height: "14", children: [
11334
11349
  /* @__PURE__ */ A("line", { x1: "18", y1: "6", x2: "6", y2: "18" }),
@@ -11400,7 +11415,7 @@ function cr({
11400
11415
  type: "button",
11401
11416
  className: "ps-pm-secondary-btn",
11402
11417
  onClick: () => {
11403
- zA(!1), H(null);
11418
+ zA(!1), M(null);
11404
11419
  },
11405
11420
  children: h("BACK")
11406
11421
  }
@@ -11420,7 +11435,7 @@ function cr({
11420
11435
  onDrop: (v) => {
11421
11436
  v.preventDefault(), EA(!1);
11422
11437
  const y = v.dataTransfer.files[0];
11423
- y && H(y);
11438
+ y && M(y);
11424
11439
  },
11425
11440
  style: {
11426
11441
  flex: 1,
@@ -11454,7 +11469,7 @@ function cr({
11454
11469
  style: { display: "none" },
11455
11470
  onChange: (v) => {
11456
11471
  const y = v.target.files?.[0];
11457
- y && H(y);
11472
+ y && M(y);
11458
11473
  }
11459
11474
  }
11460
11475
  )
@@ -11663,7 +11678,7 @@ function Ng({
11663
11678
  MA(() => {
11664
11679
  t || (i(null), E(null));
11665
11680
  }, [t]);
11666
- const M = async (O) => {
11681
+ const H = async (O) => {
11667
11682
  if (!(a || G)) {
11668
11683
  if (E(null), i(null), r && B !== !0) {
11669
11684
  E(d("Please confirm that the person in the photo is 18 or older before uploading."));
@@ -11708,10 +11723,10 @@ function Ng({
11708
11723
  }, ie = (O) => {
11709
11724
  if (O.preventDefault(), O.stopPropagation(), P.current = 0, L(!1), a || G) return;
11710
11725
  const GA = O.dataTransfer?.files?.[0];
11711
- GA && M(GA);
11726
+ GA && H(GA);
11712
11727
  }, h = (O) => {
11713
11728
  const GA = O.target.files?.[0];
11714
- GA && M(GA), m.current && (m.current.value = "");
11729
+ GA && H(GA), m.current && (m.current.value = "");
11715
11730
  }, Ce = () => {
11716
11731
  i(null), E(null), Q?.();
11717
11732
  };
@@ -12019,7 +12034,7 @@ function pr({
12019
12034
  clearInterval(N), clearInterval(j);
12020
12035
  };
12021
12036
  }, []);
12022
- const M = s?.trim() || (l?.trim() ? l.trim().slice(0, 90) + (l.trim().length > 90 ? "…" : "") : null) || m("Crafted with quality materials for everyday comfort");
12037
+ const H = s?.trim() || (l?.trim() ? l.trim().slice(0, 90) + (l.trim().length > 90 ? "…" : "") : null) || m("Crafted with quality materials for everyday comfort");
12023
12038
  return /* @__PURE__ */ e("div", { className: "ps-tryon-processing-v2", children: [
12024
12039
  /* @__PURE__ */ e("div", { className: "ps-tryon-processing-v2-image", children: [
12025
12040
  o && /* @__PURE__ */ e(eA, { children: [
@@ -12082,7 +12097,7 @@ function pr({
12082
12097
  ] }) }),
12083
12098
  /* @__PURE__ */ e("div", { className: "ps-tryon-processing-v2-card-text", children: [
12084
12099
  /* @__PURE__ */ A("div", { className: "ps-tryon-processing-v2-card-head", children: m("Garment Spotlight") }),
12085
- /* @__PURE__ */ A("div", { className: "ps-tryon-processing-v2-card-body", children: M })
12100
+ /* @__PURE__ */ A("div", { className: "ps-tryon-processing-v2-card-body", children: H })
12086
12101
  ] })
12087
12102
  ] }),
12088
12103
  /* @__PURE__ */ e("div", { className: "ps-tryon-processing-v2-card", children: [
@@ -12264,7 +12279,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12264
12279
  MA(() => {
12265
12280
  I.current && (I.current.scrollTop = 0);
12266
12281
  }, [w, l]);
12267
- const [D, W] = f(""), [V, i] = f("male"), [b, E] = f("cm"), [M, N] = f(""), [j, wA] = f(""), [J, ie] = f(""), [h, Ce] = f(""), [oA, O] = f(""), [GA, T] = f(""), [_, pA] = f(null), [nA, RA] = f(!1), [ee, yA] = f(""), [LA, he] = f(null), [uA, oe] = f(null), [TA, de] = f({ w: 800, h: 1200 }), [vA, XA] = f(0), [iA, Me] = f(!1), [Ee, De] = f(!1);
12282
+ const [D, W] = f(""), [V, i] = f("male"), [b, E] = f("cm"), [H, N] = f(""), [j, wA] = f(""), [J, ie] = f(""), [h, Ce] = f(""), [oA, O] = f(""), [GA, T] = f(""), [_, pA] = f(null), [nA, RA] = f(!1), [ee, yA] = f(""), [LA, he] = f(null), [uA, oe] = f(null), [TA, de] = f({ w: 800, h: 1200 }), [vA, XA] = f(0), [iA, Me] = f(!1), [Ee, De] = f(!1);
12268
12283
  MA(() => {
12269
12284
  if (d !== "calculating" || !_) return;
12270
12285
  let p = !1;
@@ -12314,7 +12329,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12314
12329
  }
12315
12330
  }, Oe = () => {
12316
12331
  pA(null), B?.(null), me.current && (me.current.value = "");
12317
- }, [$A, tA] = f(null), [se, zA] = f(null), [_A, H] = f(null), [AA, EA] = f(null), [S, IA] = f(null), [CA, ae] = f(null), [ve, ge] = f("US"), [NA, Ae] = f(null), u = hA(null);
12332
+ }, [$A, tA] = f(null), [se, zA] = f(null), [_A, M] = f(null), [AA, EA] = f(null), [S, IA] = f(null), [CA, ae] = f(null), [ve, ge] = f("US"), [NA, Ae] = f(null), u = hA(null);
12318
12333
  MA(() => {
12319
12334
  if (!NA) return;
12320
12335
  const p = (Z) => {
@@ -12331,7 +12346,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12331
12346
  E("cm");
12332
12347
  }, JA = () => {
12333
12348
  if (b === "cm") {
12334
- const p = parseFloat(M);
12349
+ const p = parseFloat(H);
12335
12350
  !isNaN(p) && p > 0 && (wA(String(Math.floor(p / 2.54 / 12))), ie(String(Math.round(p / 2.54 % 12))));
12336
12351
  }
12337
12352
  E("in");
@@ -12343,7 +12358,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12343
12358
  const ce = parseInt(j, 10), ZA = parseInt(J, 10);
12344
12359
  p = !isNaN(ce) && ce > 0 && !isNaN(ZA) && ZA >= 0 && ZA <= 11;
12345
12360
  } else {
12346
- const ce = parseFloat(M);
12361
+ const ce = parseFloat(H);
12347
12362
  p = !isNaN(ce) && ce > 0;
12348
12363
  }
12349
12364
  if (!p)
@@ -12351,7 +12366,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12351
12366
  const Z = parseFloat(h), PA = parseFloat(oA);
12352
12367
  return !Z || Z <= 0 ? (T(n("Please enter a valid weight")), !1) : !PA || PA <= 0 ? (T(n("Please enter a valid age")), !1) : (T(""), !0);
12353
12368
  }, be = () => D.trim() ? (T(""), !0) : (T(n("Please enter a profile name")), !1), v = () => {
12354
- const p = b === "in" ? (parseInt(j, 10) || 0) * 12 + (parseInt(J, 10) || 0) : parseFloat(M);
12369
+ const p = b === "in" ? (parseInt(j, 10) || 0) * 12 + (parseInt(J, 10) || 0) : parseFloat(H);
12355
12370
  return {
12356
12371
  name: D.trim(),
12357
12372
  gender: V,
@@ -12370,7 +12385,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12370
12385
  cupSize: FA && CA || void 0
12371
12386
  };
12372
12387
  }, y = () => {
12373
- const p = b === "in" ? (parseInt(j, 10) || 0) * 12 + (parseInt(J, 10) || 0) : parseFloat(M), Z = parseFloat(h), PA = parseFloat(oA);
12388
+ const p = b === "in" ? (parseInt(j, 10) || 0) * 12 + (parseInt(J, 10) || 0) : parseFloat(H), Z = parseFloat(h), PA = parseFloat(oA);
12374
12389
  return {
12375
12390
  name: D.trim(),
12376
12391
  gender: V,
@@ -12414,7 +12429,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12414
12429
  Q(te[pe + 1]);
12415
12430
  }
12416
12431
  }, U = (p, Z) => {
12417
- T(""), p === "chest" ? tA(Z) : p === "stomach" ? zA(Z) : p === "seat" ? H(Z) : p === "hips" && EA(Z);
12432
+ T(""), p === "chest" ? tA(Z) : p === "stomach" ? zA(Z) : p === "seat" ? M(Z) : p === "hips" && EA(Z);
12418
12433
  const PA = te.indexOf(p), ce = PA === Be - 1;
12419
12434
  setTimeout(() => {
12420
12435
  if (ce) {
@@ -12443,7 +12458,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12443
12458
  return;
12444
12459
  }
12445
12460
  } else {
12446
- const PA = parseFloat(M);
12461
+ const PA = parseFloat(H);
12447
12462
  if (!PA || PA < 100 || PA > 250) {
12448
12463
  T(n("Please enter a valid height"));
12449
12464
  return;
@@ -12459,7 +12474,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12459
12474
  return;
12460
12475
  }
12461
12476
  if (T(""), m("calculating"), x(!0), a && _) {
12462
- const PA = b === "in" ? (parseInt(j, 10) || 0) * 12 + (parseInt(J, 10) || 0) : parseFloat(M), ce = parseFloat(oA);
12477
+ const PA = b === "in" ? (parseInt(j, 10) || 0) * 12 + (parseInt(J, 10) || 0) : parseFloat(H), ce = parseFloat(oA);
12463
12478
  try {
12464
12479
  const ZA = await a({
12465
12480
  photoBase64: _,
@@ -12603,7 +12618,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
12603
12618
  type: "number",
12604
12619
  inputMode: "numeric",
12605
12620
  className: "ps-bp-inline-input",
12606
- value: M,
12621
+ value: H,
12607
12622
  placeholder: n("e.g. 173"),
12608
12623
  onChange: (p) => {
12609
12624
  N(p.target.value), T("");
@@ -13122,7 +13137,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
13122
13137
  /* @__PURE__ */ e("div", { className: "ps-bp-inline-row", children: [
13123
13138
  /* @__PURE__ */ A("span", { className: "ps-bp-inline-label", children: n("HEIGHT") }),
13124
13139
  b === "cm" ? /* @__PURE__ */ e("div", { className: "ps-bp-inline-input-group", children: [
13125
- /* @__PURE__ */ A("input", { type: "number", inputMode: "numeric", className: "ps-bp-inline-input", value: M, placeholder: n("e.g. 173"), onChange: (p) => {
13140
+ /* @__PURE__ */ A("input", { type: "number", inputMode: "numeric", className: "ps-bp-inline-input", value: H, placeholder: n("e.g. 173"), onChange: (p) => {
13126
13141
  N(p.target.value), T("");
13127
13142
  } }),
13128
13143
  /* @__PURE__ */ A("span", { className: "ps-bp-inline-unit", children: "cm" })
@@ -13293,7 +13308,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
13293
13308
  /* @__PURE__ */ e("div", { className: "ps-bp-inline-row", children: [
13294
13309
  /* @__PURE__ */ A("span", { className: "ps-bp-inline-label", children: n("HEIGHT") }),
13295
13310
  b === "cm" ? /* @__PURE__ */ e("div", { className: "ps-bp-inline-input-group", children: [
13296
- /* @__PURE__ */ A("input", { type: "number", inputMode: "numeric", className: "ps-bp-inline-input", value: M, placeholder: n("e.g. 173"), onChange: (p) => {
13311
+ /* @__PURE__ */ A("input", { type: "number", inputMode: "numeric", className: "ps-bp-inline-input", value: H, placeholder: n("e.g. 173"), onChange: (p) => {
13297
13312
  N(p.target.value), T("");
13298
13313
  } }),
13299
13314
  /* @__PURE__ */ A("span", { className: "ps-bp-inline-unit", children: "cm" })
@@ -13462,7 +13477,7 @@ function Lr({ onSave: o, onCancel: g, apiUrl: t, apiKey: r, onPhotoPreview: B, o
13462
13477
  /* @__PURE__ */ A("button", { type: "button", className: "ps-cpw-back-btn", onClick: VA, children: w == null ? n("Cancel") : `← ${n("Back")}` }),
13463
13478
  w === "manual" && !X && /* @__PURE__ */ A("button", { type: "button", className: "ps-cpw-next-btn", onClick: K, children: n(Pe ? "CALCULATE MY FIT" : "Continue") }),
13464
13479
  w === "image" && d === "name-photo" && (() => {
13465
- const p = b === "in" ? parseFloat(j) > 0 || parseFloat(J) > 0 : parseFloat(M) > 0, Z = parseFloat(h) > 0, PA = !!D.trim(), ce = !!_, ZA = nA, xe = n(ZA ? "Analyzing photo…" : ce ? PA ? p ? Z ? "Calculate My Body Parts" : "Enter your weight" : "Enter your height" : "Add a name for this profile" : "Upload a photo"), Ie = ZA || !ce || !PA || !p || !Z;
13480
+ const p = b === "in" ? parseFloat(j) > 0 || parseFloat(J) > 0 : parseFloat(H) > 0, Z = parseFloat(h) > 0, PA = !!D.trim(), ce = !!_, ZA = nA, xe = n(ZA ? "Analyzing photo…" : ce ? PA ? p ? Z ? "Calculate My Body Parts" : "Enter your weight" : "Enter your height" : "Add a name for this profile" : "Upload a photo"), Ie = ZA || !ce || !PA || !p || !Z;
13466
13481
  return /* @__PURE__ */ A(
13467
13482
  "button",
13468
13483
  {
@@ -13522,25 +13537,25 @@ function jr({
13522
13537
  }) {
13523
13538
  const Q = o.gender === "female" ? Jr : Ur, d = o.measurements || {}, m = Object.keys(d).some((E) => d[E] != null), [P, x] = f(o.measurementsUnit || "cm"), [L, G] = f(() => {
13524
13539
  const E = {};
13525
- return Q.forEach((M) => {
13526
- const N = d[M.key];
13527
- E[M.key] = N != null ? String(Math.round(N * 10) / 10) : "";
13540
+ return Q.forEach((H) => {
13541
+ const N = d[H.key];
13542
+ E[H.key] = N != null ? String(Math.round(N * 10) / 10) : "";
13528
13543
  }), E;
13529
13544
  });
13530
13545
  MA(() => {
13531
13546
  G((E) => {
13532
- const M = { ...E };
13547
+ const H = { ...E };
13533
13548
  let N = !1;
13534
13549
  return Q.forEach((j) => {
13535
13550
  const wA = d[j.key];
13536
- wA != null && !E[j.key] && (M[j.key] = String(Math.round(wA * 10) / 10), N = !0);
13537
- }), N ? M : E;
13551
+ wA != null && !E[j.key] && (H[j.key] = String(Math.round(wA * 10) / 10), N = !0);
13552
+ }), N ? H : E;
13538
13553
  });
13539
13554
  }, [o.measurements, o.id]);
13540
13555
  const [I, D] = f(o.bandSize || ""), [W, V] = f(o.cupSize || ""), i = (E) => {
13541
- E !== P && (G((M) => {
13556
+ E !== P && (G((H) => {
13542
13557
  const N = {};
13543
- for (const [j, wA] of Object.entries(M)) {
13558
+ for (const [j, wA] of Object.entries(H)) {
13544
13559
  const J = parseFloat(wA);
13545
13560
  !isNaN(J) && J > 0 ? N[j] = String(E === "in" ? Math.round(J / 2.54 * 10) / 10 : Math.round(J * 2.54 * 10) / 10) : N[j] = wA;
13546
13561
  }
@@ -13548,9 +13563,9 @@ function jr({
13548
13563
  }), x(E));
13549
13564
  }, b = () => {
13550
13565
  const E = { ...o.measurements || {} };
13551
- for (const [M, N] of Object.entries(L)) {
13566
+ for (const [H, N] of Object.entries(L)) {
13552
13567
  const j = parseFloat(N);
13553
- !isNaN(j) && j > 0 && (E[M] = j);
13568
+ !isNaN(j) && j > 0 && (E[H] = j);
13554
13569
  }
13555
13570
  r(E, P), o.gender === "female" && w && (I || W) && w(I, W), n();
13556
13571
  };
@@ -13589,8 +13604,8 @@ function jr({
13589
13604
  ] }) }),
13590
13605
  /* @__PURE__ */ e("div", { className: "ps-pmv-measure-list", children: [
13591
13606
  Q.map((E) => {
13592
- const M = d[E.key], N = s && M == null && !L[E.key];
13593
- return /* @__PURE__ */ e("div", { className: `ps-pmv-measure-row${M == null ? " ps-loading" : ""}`, children: [
13607
+ const H = d[E.key], N = s && H == null && !L[E.key];
13608
+ return /* @__PURE__ */ e("div", { className: `ps-pmv-measure-row${H == null ? " ps-loading" : ""}`, children: [
13594
13609
  /* @__PURE__ */ A("span", { className: "ps-pmv-measure-icon", children: /* @__PURE__ */ A("img", { src: E.iconSrc, alt: "", "aria-hidden": "true" }) }),
13595
13610
  /* @__PURE__ */ A("span", { className: "ps-pmv-measure-label", children: l(E.label) }),
13596
13611
  /* @__PURE__ */ A("span", { className: "ps-pmv-measure-value ps-pmv-inline-edit", children: N ? /* @__PURE__ */ e("span", { style: { display: "inline-flex", alignItems: "center", gap: "0.4vw" }, children: [
@@ -13841,8 +13856,8 @@ function Wr({
13841
13856
  try {
13842
13857
  const E = localStorage.getItem("primestyle_profiles");
13843
13858
  if (E) {
13844
- const M = JSON.parse(E);
13845
- M.length > 0 && (b = M[0].id ?? null);
13859
+ const H = JSON.parse(E);
13860
+ H.length > 0 && (b = H[0].id ?? null);
13846
13861
  }
13847
13862
  } catch {
13848
13863
  }
@@ -13924,7 +13939,7 @@ function $r({
13924
13939
  onStartFresh: i,
13925
13940
  hidePhotoOptions: b = !1,
13926
13941
  error: E,
13927
- t: M
13942
+ t: H
13928
13943
  }) {
13929
13944
  const N = parseFloat(r) || 173, j = (parseFloat(a) || 5) * 12 + (parseFloat(w) || 8), wA = Math.floor(j / 12), J = j % 12, ie = parseFloat(l) || (g === "kg" ? 70 : 154), h = parseFloat(d) || 30, Ce = g === "kg" ? 30 : 66, oA = g === "kg" ? 200 : 440, O = 120, GA = 220, T = 48, _ = 84, pA = 13, nA = 100, RA = (N - O) / (GA - O) * 100, ee = (j - T) / (_ - T) * 100, yA = (ie - Ce) / (oA - Ce) * 100, LA = (h - pA) / (nA - pA) * 100, he = (iA) => {
13930
13945
  const Me = Math.max(T, Math.min(_, iA));
@@ -13936,16 +13951,16 @@ function $r({
13936
13951
  }, TA = () => Q(String(Math.min(oA, ie + 1))), de = () => Q(String(Math.max(Ce, ie - 1))), vA = () => m(String(Math.min(nA, h + 1))), XA = () => m(String(Math.max(pA, h - 1)));
13937
13952
  return /* @__PURE__ */ e("div", { className: "ps-bpm-root", children: [
13938
13953
  /* @__PURE__ */ e("div", { className: "ps-bpm-header", children: [
13939
- /* @__PURE__ */ A("h2", { className: "ps-bpm-title", children: M("Body Measurements") }),
13940
- /* @__PURE__ */ A("p", { className: "ps-bpm-subtitle", children: M("Enter your details for a bespoke size recommendation") })
13954
+ /* @__PURE__ */ A("h2", { className: "ps-bpm-title", children: H("Body Measurements") }),
13955
+ /* @__PURE__ */ A("p", { className: "ps-bpm-subtitle", children: H("Enter your details for a bespoke size recommendation") })
13941
13956
  ] }),
13942
13957
  V && /* @__PURE__ */ e("p", { className: "ps-bp-profile-hint", children: [
13943
- M("Using"),
13958
+ H("Using"),
13944
13959
  " ",
13945
13960
  /* @__PURE__ */ A("strong", { children: V }),
13946
13961
  i && /* @__PURE__ */ e(eA, { children: [
13947
13962
  " · ",
13948
- /* @__PURE__ */ A("button", { type: "button", className: "ps-bp-profile-hint-link", onClick: i, children: M("start fresh") })
13963
+ /* @__PURE__ */ A("button", { type: "button", className: "ps-bp-profile-hint-link", onClick: i, children: H("start fresh") })
13949
13964
  ] })
13950
13965
  ] }),
13951
13966
  /* @__PURE__ */ e("div", { className: "ps-bpm-toggle", children: [
@@ -13955,7 +13970,7 @@ function $r({
13955
13970
  type: "button",
13956
13971
  className: `ps-bpm-toggle-btn${t ? "" : " ps-active"}`,
13957
13972
  onClick: P,
13958
- children: M("Metric")
13973
+ children: H("Metric")
13959
13974
  }
13960
13975
  ),
13961
13976
  /* @__PURE__ */ A(
@@ -13964,18 +13979,18 @@ function $r({
13964
13979
  type: "button",
13965
13980
  className: `ps-bpm-toggle-btn${t ? " ps-active" : ""}`,
13966
13981
  onClick: x,
13967
- children: M("Imperial")
13982
+ children: H("Imperial")
13968
13983
  }
13969
13984
  )
13970
13985
  ] }),
13971
13986
  /* @__PURE__ */ e("div", { className: "ps-bpm-fields", children: [
13972
13987
  /* @__PURE__ */ e("div", { className: "ps-bpm-row", children: [
13973
13988
  /* @__PURE__ */ e("div", { className: "ps-bpm-row-top", children: [
13974
- /* @__PURE__ */ A("span", { className: "ps-bpm-label", children: M("HEIGHT") }),
13989
+ /* @__PURE__ */ A("span", { className: "ps-bpm-label", children: H("HEIGHT") }),
13975
13990
  /* @__PURE__ */ A("span", { className: "ps-bpm-value-display", children: o === "in" ? `${wA}ft ${J}in` : `${Math.round(N)} cm` })
13976
13991
  ] }),
13977
13992
  /* @__PURE__ */ e("div", { className: "ps-bpm-slider-row", children: [
13978
- /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: oe, "aria-label": M("Decrease"), children: /* @__PURE__ */ A(wg, {}) }),
13993
+ /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: oe, "aria-label": H("Decrease"), children: /* @__PURE__ */ A(wg, {}) }),
13979
13994
  o === "in" ? /* @__PURE__ */ A(
13980
13995
  "input",
13981
13996
  {
@@ -14001,12 +14016,12 @@ function $r({
14001
14016
  style: { "--ps-pct": `${RA}%` }
14002
14017
  }
14003
14018
  ),
14004
- /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: uA, "aria-label": M("Increase"), children: /* @__PURE__ */ A(lg, {}) })
14019
+ /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: uA, "aria-label": H("Increase"), children: /* @__PURE__ */ A(lg, {}) })
14005
14020
  ] })
14006
14021
  ] }),
14007
14022
  /* @__PURE__ */ e("div", { className: "ps-bpm-row", children: [
14008
14023
  /* @__PURE__ */ e("div", { className: "ps-bpm-row-top", children: [
14009
- /* @__PURE__ */ A("span", { className: "ps-bpm-label", children: M("WEIGHT") }),
14024
+ /* @__PURE__ */ A("span", { className: "ps-bpm-label", children: H("WEIGHT") }),
14010
14025
  /* @__PURE__ */ e("span", { className: "ps-bpm-value-display", children: [
14011
14026
  Math.round(ie),
14012
14027
  " ",
@@ -14014,7 +14029,7 @@ function $r({
14014
14029
  ] })
14015
14030
  ] }),
14016
14031
  /* @__PURE__ */ e("div", { className: "ps-bpm-slider-row", children: [
14017
- /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: de, "aria-label": M("Decrease"), children: /* @__PURE__ */ A(wg, {}) }),
14032
+ /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: de, "aria-label": H("Decrease"), children: /* @__PURE__ */ A(wg, {}) }),
14018
14033
  /* @__PURE__ */ A(
14019
14034
  "input",
14020
14035
  {
@@ -14028,20 +14043,20 @@ function $r({
14028
14043
  style: { "--ps-pct": `${yA}%` }
14029
14044
  }
14030
14045
  ),
14031
- /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: TA, "aria-label": M("Increase"), children: /* @__PURE__ */ A(lg, {}) })
14046
+ /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: TA, "aria-label": H("Increase"), children: /* @__PURE__ */ A(lg, {}) })
14032
14047
  ] })
14033
14048
  ] }),
14034
14049
  /* @__PURE__ */ e("div", { className: "ps-bpm-row", children: [
14035
14050
  /* @__PURE__ */ e("div", { className: "ps-bpm-row-top", children: [
14036
- /* @__PURE__ */ A("span", { className: "ps-bpm-label", children: M("AGE") }),
14051
+ /* @__PURE__ */ A("span", { className: "ps-bpm-label", children: H("AGE") }),
14037
14052
  /* @__PURE__ */ e("span", { className: "ps-bpm-value-display", children: [
14038
14053
  Math.round(h),
14039
14054
  " ",
14040
- M("YEARS")
14055
+ H("YEARS")
14041
14056
  ] })
14042
14057
  ] }),
14043
14058
  /* @__PURE__ */ e("div", { className: "ps-bpm-slider-row", children: [
14044
- /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: XA, "aria-label": M("Decrease"), children: /* @__PURE__ */ A(wg, {}) }),
14059
+ /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: XA, "aria-label": H("Decrease"), children: /* @__PURE__ */ A(wg, {}) }),
14045
14060
  /* @__PURE__ */ A(
14046
14061
  "input",
14047
14062
  {
@@ -14055,12 +14070,12 @@ function $r({
14055
14070
  style: { "--ps-pct": `${LA}%` }
14056
14071
  }
14057
14072
  ),
14058
- /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: vA, "aria-label": M("Increase"), children: /* @__PURE__ */ A(lg, {}) })
14073
+ /* @__PURE__ */ A("button", { type: "button", className: "ps-bpm-step-btn", onClick: vA, "aria-label": H("Increase"), children: /* @__PURE__ */ A(lg, {}) })
14059
14074
  ] })
14060
14075
  ] })
14061
14076
  ] }),
14062
14077
  !b && /* @__PURE__ */ e(eA, { children: [
14063
- /* @__PURE__ */ A("div", { className: "ps-bpm-or", children: /* @__PURE__ */ A("span", { children: M("or") }) }),
14078
+ /* @__PURE__ */ A("div", { className: "ps-bpm-or", children: /* @__PURE__ */ A("span", { children: H("or") }) }),
14064
14079
  /* @__PURE__ */ e(
14065
14080
  "button",
14066
14081
  {
@@ -14069,7 +14084,7 @@ function $r({
14069
14084
  onClick: L,
14070
14085
  children: [
14071
14086
  /* @__PURE__ */ A(qr, {}),
14072
- /* @__PURE__ */ A("span", { children: M("Upload a photo for AI sizing") }),
14087
+ /* @__PURE__ */ A("span", { children: H("Upload a photo for AI sizing") }),
14073
14088
  /* @__PURE__ */ A(Zr, {})
14074
14089
  ]
14075
14090
  }
@@ -14085,7 +14100,7 @@ function $r({
14085
14100
  className: "ps-bpm-next-btn",
14086
14101
  onClick: I,
14087
14102
  disabled: !D,
14088
- children: W || M("Next")
14103
+ children: W || H("Next")
14089
14104
  }
14090
14105
  ),
14091
14106
  !b && /* @__PURE__ */ A(
@@ -14095,7 +14110,7 @@ function $r({
14095
14110
  onSwitchToManual: () => {
14096
14111
  },
14097
14112
  onSwitchToScan: G,
14098
- t: M
14113
+ t: H
14099
14114
  }
14100
14115
  )
14101
14116
  ] })
@@ -14542,13 +14557,13 @@ function ai({
14542
14557
  onBack: V,
14543
14558
  t: i
14544
14559
  }) {
14545
- const b = t ? ri : ni, [E, M] = f("basics");
14560
+ const b = t ? ri : ni, [E, H] = f("photo");
14546
14561
  E === "photo" || b.indexOf(E);
14547
14562
  const N = Lo(), j = tt(B), wA = W?.height, J = W?.weight, ie = W?.age, h = W?.heightUnit === "ft" ? "in" : W?.heightUnit, Ce = W?.weightUnit, oA = wA != null && h === "cm" ? String(Math.round(wA)) : wA != null && (h === "in" || h === "ft") ? String(Math.round(wA * 2.54)) : r.current.height || "", O = wA != null && (h === "in" || h === "ft") ? Math.round(wA) : wA != null && h === "cm" ? Math.round(wA / 2.54) : null, GA = O != null ? String(Math.floor(O / 12)) : r.current.heightFeet || "", T = O != null ? String(O % 12) : r.current.heightInches || "", _ = J != null ? String(Math.round(J)) : r.current.weight || "", pA = ie != null ? String(ie) : r.current.age || "", [nA, RA] = f(oA), [ee, yA] = f(GA), [LA, he] = f(T), [uA, oe] = f(_), [TA, de] = f(pA), [vA, XA] = f(
14548
14563
  h || (a === "ft" ? "in" : a || (j ? "in" : "cm"))
14549
14564
  ), [iA, Me] = f(
14550
14565
  Ce || w || (j ? "lbs" : "kg")
14551
- ), Ee = vA === "in" || iA === "lbs", [De, me] = f(null), [WA, DA] = f(null), [mA, F] = f(null), [lA, Qe] = f(!1), [le, Oe] = f(""), [$A, tA] = f(null), se = hA(null), [zA, _A] = f(null), [H, AA] = f(!1), [EA, S] = f(!1), [IA, CA] = f(() => O != null ? String(Math.round(O * 2.54)) : oA), [ae, ve] = f(null), [ge, NA] = f(null), [Ae, u] = f(null), [YA, xA] = f(null), [FA, q] = f(""), [te, pe] = f(null), [Be, Pe] = f(null), [BA, JA] = f(() => ["US", "UK", "AU"].includes(B) ? B === "AU" ? "UK" : B : ["FR", "ES"].includes(B) ? "FR" : ["IT"].includes(B) ? "IT" : ["JP", "CN", "KR"].includes(B) ? "JP" : "EU"), [ye, be] = f(!1), [v, y] = f(null), K = hA(null);
14566
+ ), Ee = vA === "in" || iA === "lbs", [De, me] = f(null), [WA, DA] = f(null), [mA, F] = f(null), [lA, Qe] = f(!1), [le, Oe] = f(""), [$A, tA] = f(null), se = hA(null), [zA, _A] = f(null), [M, AA] = f(!1), [EA, S] = f(!1), [IA, CA] = f(() => O != null ? String(Math.round(O * 2.54)) : oA), [ae, ve] = f(null), [ge, NA] = f(null), [Ae, u] = f(null), [YA, xA] = f(null), [FA, q] = f(""), [te, pe] = f(null), [Be, Pe] = f(null), [BA, JA] = f(() => ["US", "UK", "AU"].includes(B) ? B === "AU" ? "UK" : B : ["FR", "ES"].includes(B) ? "FR" : ["IT"].includes(B) ? "IT" : ["JP", "CN", "KR"].includes(B) ? "JP" : "EU"), [ye, be] = f(!1), [v, y] = f(null), K = hA(null);
14552
14567
  MA(() => {
14553
14568
  if (!v) return;
14554
14569
  const k = (dA) => {
@@ -14658,21 +14673,21 @@ function ai({
14658
14673
  }, [mA, De, vA, iA, ee, LA, nA, uA, TA, HA, t, te, Be, BA, x]), PA = bA(() => {
14659
14674
  if (E === "basics") {
14660
14675
  if (!VA()) return;
14661
- M(ke("basics"));
14676
+ H(ke("basics"));
14662
14677
  } else if (E === "chest") {
14663
14678
  if (!ae) return;
14664
- M(ke("chest"));
14679
+ H(ke("chest"));
14665
14680
  } else if (E === "midsection") {
14666
14681
  if (!ge) return;
14667
- M(ke("midsection"));
14682
+ H(ke("midsection"));
14668
14683
  } else if (E === "seat") {
14669
14684
  if (!YA) return;
14670
14685
  const k = ke("seat");
14671
- k === "submit" ? p() : M(k);
14686
+ k === "submit" ? p() : H(k);
14672
14687
  } else if (E === "hips") {
14673
14688
  if (!Ae) return;
14674
14689
  const k = ke("hips");
14675
- k === "submit" ? p() : M(k);
14690
+ k === "submit" ? p() : H(k);
14676
14691
  } else if (E === "bra") {
14677
14692
  if (!te || !Be) {
14678
14693
  X(i("Please select both band and cup size"));
@@ -14693,7 +14708,7 @@ function ai({
14693
14708
  return;
14694
14709
  }
14695
14710
  if (X(""), N) {
14696
- M("scan-details");
14711
+ H("scan-details");
14697
14712
  return;
14698
14713
  }
14699
14714
  Z();
@@ -14724,12 +14739,12 @@ function ai({
14724
14739
  if (X(""), E === "basics")
14725
14740
  V();
14726
14741
  else if (E === "photo")
14727
- M("basics");
14742
+ H("basics");
14728
14743
  else if (E === "scan-details")
14729
- M("photo");
14744
+ H("photo");
14730
14745
  else {
14731
14746
  const k = ce(E);
14732
- k ? M(k) : V();
14747
+ k ? H(k) : V();
14733
14748
  }
14734
14749
  }, [E, b, V]), xe = E === "basics" || E === "scan-details" ? !0 : E === "chest" ? !!ae : E === "midsection" ? !!ge : E === "seat" ? !!YA : E === "hips" ? !!Ae : E === "bra" ? !!(te && Be) : E === "photo", Ie = E === b[b.length - 1], Ne = () => {
14735
14750
  if (vA === "in") {
@@ -14755,7 +14770,7 @@ function ai({
14755
14770
  {
14756
14771
  type: "button",
14757
14772
  className: "ps-bp-scan-progress-back",
14758
- onClick: () => M("photo"),
14773
+ onClick: () => H("photo"),
14759
14774
  "aria-label": i("Back"),
14760
14775
  children: "←"
14761
14776
  }
@@ -14859,7 +14874,7 @@ function ai({
14859
14874
  Qo,
14860
14875
  {
14861
14876
  mode: "scan",
14862
- onSwitchToManual: () => M("basics"),
14877
+ onSwitchToManual: () => H("basics"),
14863
14878
  onSwitchToScan: () => {
14864
14879
  },
14865
14880
  t: i
@@ -14893,7 +14908,7 @@ function ai({
14893
14908
  type: "button",
14894
14909
  onClick: () => AA((sA) => !sA),
14895
14910
  "aria-label": i("How to take a good photo"),
14896
- className: `ps-pm-help-pill ps-bp-scan-help-pill${H ? " ps-active" : ""}`,
14911
+ className: `ps-pm-help-pill ps-bp-scan-help-pill${M ? " ps-active" : ""}`,
14897
14912
  children: [
14898
14913
  /* @__PURE__ */ A("span", { className: "ps-pm-help-pill-q", "aria-hidden": "true", children: "?" }),
14899
14914
  /* @__PURE__ */ A("span", { children: i("How to take a good photo") })
@@ -14907,7 +14922,7 @@ function ai({
14907
14922
  handlePhotoSelect: kA,
14908
14923
  handleRemovePhoto: KA,
14909
14924
  onAnalyze: PA,
14910
- onSwitchToManual: () => M("basics"),
14925
+ onSwitchToManual: () => H("basics"),
14911
14926
  error: cA,
14912
14927
  photoStepHeight: IA,
14913
14928
  onPhotoStepHeightChange: CA,
@@ -14924,7 +14939,7 @@ function ai({
14924
14939
  t: i
14925
14940
  }
14926
14941
  ),
14927
- H && /* @__PURE__ */ e(eA, { children: [
14942
+ M && /* @__PURE__ */ e(eA, { children: [
14928
14943
  /* @__PURE__ */ A("div", { className: "ps-bp-photo-help-backdrop", onClick: () => AA(!1), "aria-hidden": "true" }),
14929
14944
  /* @__PURE__ */ e("div", { role: "dialog", "aria-label": i("How to take the best photo"), className: "ps-bp-photo-help", children: [
14930
14945
  /* @__PURE__ */ A("div", { className: "ps-bp-photo-help-handle", "aria-hidden": "true" }),
@@ -15259,8 +15274,8 @@ function ai({
15259
15274
  alignItems: "center",
15260
15275
  gap: "0.35vw",
15261
15276
  padding: "0.4vw 0.7vw",
15262
- background: H ? "var(--ps-accent)" : "transparent",
15263
- color: H ? "#FFFFFF" : "var(--ps-accent)",
15277
+ background: M ? "var(--ps-accent)" : "transparent",
15278
+ color: M ? "#FFFFFF" : "var(--ps-accent)",
15264
15279
  border: "1.5px solid var(--ps-accent)",
15265
15280
  borderRadius: "999px",
15266
15281
  cursor: "pointer",
@@ -15282,8 +15297,8 @@ function ai({
15282
15297
  minWidth: "14px",
15283
15298
  minHeight: "14px",
15284
15299
  borderRadius: "50%",
15285
- background: H ? "#FFFFFF" : "var(--ps-accent)",
15286
- color: H ? "var(--ps-accent)" : "#FFFFFF",
15300
+ background: M ? "#FFFFFF" : "var(--ps-accent)",
15301
+ color: M ? "var(--ps-accent)" : "#FFFFFF",
15287
15302
  fontSize: "0.65vw",
15288
15303
  fontWeight: 700,
15289
15304
  lineHeight: 1
@@ -15370,7 +15385,7 @@ function ai({
15370
15385
  ] })
15371
15386
  ] })
15372
15387
  ] }) }),
15373
- H && /* @__PURE__ */ e(eA, { children: [
15388
+ M && /* @__PURE__ */ e(eA, { children: [
15374
15389
  /* @__PURE__ */ A(
15375
15390
  "div",
15376
15391
  {
@@ -15471,30 +15486,45 @@ function ai({
15471
15486
  Qo,
15472
15487
  {
15473
15488
  mode: "scan",
15474
- onSwitchToManual: () => M("basics"),
15489
+ onSwitchToManual: () => H("basics"),
15475
15490
  onSwitchToScan: () => {
15476
15491
  },
15477
15492
  t: i
15478
15493
  }
15479
15494
  )
15480
15495
  ] })
15481
- ] }) : /* @__PURE__ */ e("div", { className: "ps-bp-nav", children: [
15482
- /* @__PURE__ */ e("button", { className: "ps-bp-back-btn", onClick: ZA, type: "button", children: [
15483
- /* @__PURE__ */ A("span", { className: "ps-bp-back-arrow", children: "←" }),
15496
+ ] }) : /* @__PURE__ */ e(eA, { children: [
15497
+ /* @__PURE__ */ e("div", { className: "ps-bp-photo-manual-switch", children: [
15498
+ i("Prefer not to upload a photo?"),
15484
15499
  " ",
15485
- i("Back")
15500
+ /* @__PURE__ */ A(
15501
+ "button",
15502
+ {
15503
+ type: "button",
15504
+ className: "ps-bp-photo-manual-link",
15505
+ onClick: () => H("basics"),
15506
+ children: i("Enter measurements manually")
15507
+ }
15508
+ )
15486
15509
  ] }),
15487
- /* @__PURE__ */ A(
15488
- "button",
15489
- {
15490
- className: `ps-bp-next-btn${Ve ? " ps-bp-btn-disabled" : ""}`,
15491
- onClick: PA,
15492
- disabled: Ve,
15493
- type: "button",
15494
- title: Ve ? ue.join(" · ") : void 0,
15495
- children: Ke
15496
- }
15497
- )
15510
+ /* @__PURE__ */ e("div", { className: "ps-bp-nav", children: [
15511
+ /* @__PURE__ */ e("button", { className: "ps-bp-back-btn", onClick: ZA, type: "button", children: [
15512
+ /* @__PURE__ */ A("span", { className: "ps-bp-back-arrow", children: "←" }),
15513
+ " ",
15514
+ i("Back")
15515
+ ] }),
15516
+ /* @__PURE__ */ A(
15517
+ "button",
15518
+ {
15519
+ className: `ps-bp-next-btn${Ve ? " ps-bp-btn-disabled" : ""}`,
15520
+ onClick: PA,
15521
+ disabled: Ve,
15522
+ type: "button",
15523
+ title: Ve ? ue.join(" · ") : void 0,
15524
+ children: Ke
15525
+ }
15526
+ )
15527
+ ] })
15498
15528
  ] })
15499
15529
  ] });
15500
15530
  }
@@ -15543,8 +15573,8 @@ function ai({
15543
15573
  setAge: de,
15544
15574
  switchToMetric: k,
15545
15575
  switchToImperial: dA,
15546
- onUploadPhoto: () => M("photo"),
15547
- onSwitchToScan: () => M("photo"),
15576
+ onUploadPhoto: () => H("photo"),
15577
+ onSwitchToScan: () => H("photo"),
15548
15578
  hidePhotoOptions: L,
15549
15579
  onNext: L && G ? G : PA,
15550
15580
  canProceed: !0,
@@ -15602,7 +15632,7 @@ function ai({
15602
15632
  "button",
15603
15633
  {
15604
15634
  className: "ps-bp-photo-cta",
15605
- onClick: () => M("photo"),
15635
+ onClick: () => H("photo"),
15606
15636
  type: "button",
15607
15637
  children: [
15608
15638
  /* @__PURE__ */ A(ti, {}),
@@ -15853,7 +15883,7 @@ function Eg({
15853
15883
  apiKey: I,
15854
15884
  t: D
15855
15885
  }) {
15856
- const W = r === "close-up", V = Lo(), [i, b] = f("manual"), [E, M] = f(() => {
15886
+ const W = r === "close-up", V = Lo(), [i, b] = f("manual"), [E, H] = f(() => {
15857
15887
  const F = {};
15858
15888
  return g.forEach((lA) => {
15859
15889
  F[lA.key] = w.current[lA.key] || "";
@@ -15879,7 +15909,7 @@ function Eg({
15879
15909
  }, [W, G, I, D]), de = bA(() => {
15880
15910
  J && URL.revokeObjectURL(J), Ce(null), ie(null), O(null);
15881
15911
  }, [J]), vA = (F, lA) => {
15882
- M((Qe) => ({ ...Qe, [F]: lA })), j("");
15912
+ H((Qe) => ({ ...Qe, [F]: lA })), j("");
15883
15913
  }, XA = () => {
15884
15914
  const F = g[0];
15885
15915
  if (!F) return;
@@ -16715,7 +16745,7 @@ function vi({
16715
16745
  onProcessing: i,
16716
16746
  onComplete: b,
16717
16747
  onError: E,
16718
- sizeGuideData: M
16748
+ sizeGuideData: H
16719
16749
  }) {
16720
16750
  const N = B || o, [j, wA] = f(() => m || "");
16721
16751
  MA(() => {
@@ -16750,7 +16780,7 @@ function vi({
16750
16780
  }, [tA]), MA(() => {
16751
16781
  De.current = nA;
16752
16782
  }, [nA]);
16753
- const [_A, H] = f(!1), AA = hA(!1), [EA, S] = f(vn), IA = tt(EA), [CA, ae] = f(IA ? "in" : "cm"), [ve, ge] = f(IA ? "in" : "cm"), [NA, Ae] = f(IA ? "lbs" : "kg");
16783
+ const [_A, M] = f(!1), AA = hA(!1), [EA, S] = f(vn), IA = tt(EA), [CA, ae] = f(IA ? "in" : "cm"), [ve, ge] = f(IA ? "in" : "cm"), [NA, Ae] = f(IA ? "lbs" : "kg");
16754
16784
  MA(() => {
16755
16785
  const c = ao(r);
16756
16786
  c === "foot" || c === "head" ? ae("cm") : c === "face" && ae("mm");
@@ -16845,7 +16875,7 @@ function vi({
16845
16875
  return window.addEventListener(Go, c), () => window.removeEventListener(Go, c);
16846
16876
  }, []), MA(() => {
16847
16877
  if (AA.current) return;
16848
- if (AA.current = !0, !M) {
16878
+ if (AA.current = !0, !H) {
16849
16879
  se({ found: !1 });
16850
16880
  return;
16851
16881
  }
@@ -16853,18 +16883,18 @@ function vi({
16853
16883
  se({ found: !1 });
16854
16884
  return;
16855
16885
  }
16856
- H(!0);
16886
+ M(!0);
16857
16887
  const c = je(s), C = Re();
16858
16888
  fetch(`${c}/api/v1/sizing/sizeguide`, {
16859
16889
  method: "POST",
16860
16890
  headers: { "Content-Type": "application/json", Authorization: `Bearer ${C}` },
16861
- body: JSON.stringify({ product: { title: r, productId: N }, sizeGuideRaw: M })
16891
+ body: JSON.stringify({ product: { title: r, productId: N }, sizeGuideRaw: H })
16862
16892
  }).then((z) => z.ok ? z.json() : null).then((z) => {
16863
16893
  se(z || { found: !1 });
16864
16894
  }).catch(() => {
16865
16895
  se({ found: !1 });
16866
- }).finally(() => H(!1));
16867
- }, [s, r, M]);
16896
+ }).finally(() => M(!1));
16897
+ }, [s, r, H]);
16868
16898
  const ht = He(() => {
16869
16899
  switch (oA) {
16870
16900
  case "welcome":
@@ -16960,7 +16990,7 @@ function vi({
16960
16990
  productId: N,
16961
16991
  productTitle: r,
16962
16992
  productImage: o,
16963
- sizeGuideData: M,
16993
+ sizeGuideData: H,
16964
16994
  profile: c,
16965
16995
  apiUrl: s,
16966
16996
  skipCache: !0
@@ -16968,7 +16998,7 @@ function vi({
16968
16998
  Y?.raw && mA(Y.raw), le(!0);
16969
16999
  }).catch(() => {
16970
17000
  }).finally(() => lA(!1));
16971
- }, [N, r, o, M, s, _]), vt = bA(async () => {
17001
+ }, [N, r, o, H, s, _]), vt = bA(async () => {
16972
17002
  const c = BA.find((QA) => QA.id === v);
16973
17003
  if (!c) return;
16974
17004
  const C = c.height ?? c.heightCm ?? 0, z = c.weight ?? c.weightKg ?? 0;
@@ -17647,7 +17677,7 @@ function vi({
17647
17677
  reasoning: c.reasoning || "",
17648
17678
  internationalSizes: c.internationalSizes,
17649
17679
  matchDetails: c.matchDetails
17650
- }), c.sizeGuide && (se(c.sizeGuide), H(!1)), RA(c.resultImageUrl || null), c.hasPhoto && jt(c.id).then((C) => {
17680
+ }), c.sizeGuide && (se(c.sizeGuide), M(!1)), RA(c.resultImageUrl || null), c.hasPhoto && jt(c.id).then((C) => {
17651
17681
  if (!C) return;
17652
17682
  const z = new File([C], `history-photo-${c.id}.jpg`, { type: C.type || "image/jpeg" });
17653
17683
  T(z), Ue.current = z;