@primestyleai/tryon 5.10.190 → 5.10.191

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.
@@ -275,7 +275,7 @@ var scheduler_production_min = {};
275
275
  * This source code is licensed under the MIT license found in the
276
276
  * LICENSE file in the root directory of this source tree.
277
277
  */
278
- (function(exports) {
278
+ (function(exports$1) {
279
279
  function f2(a, b) {
280
280
  var c = a.length;
281
281
  a.push(b);
@@ -308,12 +308,12 @@ var scheduler_production_min = {};
308
308
  }
309
309
  if ("object" === typeof performance && "function" === typeof performance.now) {
310
310
  var l2 = performance;
311
- exports.unstable_now = function() {
311
+ exports$1.unstable_now = function() {
312
312
  return l2.now();
313
313
  };
314
314
  } else {
315
315
  var p2 = Date, q2 = p2.now();
316
- exports.unstable_now = function() {
316
+ exports$1.unstable_now = function() {
317
317
  return p2.now() - q2;
318
318
  };
319
319
  }
@@ -349,7 +349,7 @@ var scheduler_production_min = {};
349
349
  v2.callback = null;
350
350
  y2 = v2.priorityLevel;
351
351
  var e = d(v2.expirationTime <= b);
352
- b = exports.unstable_now();
352
+ b = exports$1.unstable_now();
353
353
  "function" === typeof e ? v2.callback = e : v2 === h(r2) && k2(r2);
354
354
  G2(b);
355
355
  } else k2(r2);
@@ -368,11 +368,11 @@ var scheduler_production_min = {};
368
368
  }
369
369
  var N2 = false, O2 = null, L2 = -1, P2 = 5, Q2 = -1;
370
370
  function M2() {
371
- return exports.unstable_now() - Q2 < P2 ? false : true;
371
+ return exports$1.unstable_now() - Q2 < P2 ? false : true;
372
372
  }
373
373
  function R2() {
374
374
  if (null !== O2) {
375
- var a = exports.unstable_now();
375
+ var a = exports$1.unstable_now();
376
376
  Q2 = a;
377
377
  var b = true;
378
378
  try {
@@ -401,31 +401,31 @@ var scheduler_production_min = {};
401
401
  }
402
402
  function K2(a, b) {
403
403
  L2 = D2(function() {
404
- a(exports.unstable_now());
404
+ a(exports$1.unstable_now());
405
405
  }, b);
406
406
  }
407
- exports.unstable_IdlePriority = 5;
408
- exports.unstable_ImmediatePriority = 1;
409
- exports.unstable_LowPriority = 4;
410
- exports.unstable_NormalPriority = 3;
411
- exports.unstable_Profiling = null;
412
- exports.unstable_UserBlockingPriority = 2;
413
- exports.unstable_cancelCallback = function(a) {
407
+ exports$1.unstable_IdlePriority = 5;
408
+ exports$1.unstable_ImmediatePriority = 1;
409
+ exports$1.unstable_LowPriority = 4;
410
+ exports$1.unstable_NormalPriority = 3;
411
+ exports$1.unstable_Profiling = null;
412
+ exports$1.unstable_UserBlockingPriority = 2;
413
+ exports$1.unstable_cancelCallback = function(a) {
414
414
  a.callback = null;
415
415
  };
416
- exports.unstable_continueExecution = function() {
416
+ exports$1.unstable_continueExecution = function() {
417
417
  A2 || z2 || (A2 = true, I2(J2));
418
418
  };
419
- exports.unstable_forceFrameRate = function(a) {
419
+ exports$1.unstable_forceFrameRate = function(a) {
420
420
  0 > a || 125 < a ? console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported") : P2 = 0 < a ? Math.floor(1e3 / a) : 5;
421
421
  };
422
- exports.unstable_getCurrentPriorityLevel = function() {
422
+ exports$1.unstable_getCurrentPriorityLevel = function() {
423
423
  return y2;
424
424
  };
425
- exports.unstable_getFirstCallbackNode = function() {
425
+ exports$1.unstable_getFirstCallbackNode = function() {
426
426
  return h(r2);
427
427
  };
428
- exports.unstable_next = function(a) {
428
+ exports$1.unstable_next = function(a) {
429
429
  switch (y2) {
430
430
  case 1:
431
431
  case 2:
@@ -443,11 +443,11 @@ var scheduler_production_min = {};
443
443
  y2 = c;
444
444
  }
445
445
  };
446
- exports.unstable_pauseExecution = function() {
446
+ exports$1.unstable_pauseExecution = function() {
447
447
  };
448
- exports.unstable_requestPaint = function() {
448
+ exports$1.unstable_requestPaint = function() {
449
449
  };
450
- exports.unstable_runWithPriority = function(a, b) {
450
+ exports$1.unstable_runWithPriority = function(a, b) {
451
451
  switch (a) {
452
452
  case 1:
453
453
  case 2:
@@ -466,8 +466,8 @@ var scheduler_production_min = {};
466
466
  y2 = c;
467
467
  }
468
468
  };
469
- exports.unstable_scheduleCallback = function(a, b, c) {
470
- var d = exports.unstable_now();
469
+ exports$1.unstable_scheduleCallback = function(a, b, c) {
470
+ var d = exports$1.unstable_now();
471
471
  "object" === typeof c && null !== c ? (c = c.delay, c = "number" === typeof c && 0 < c ? d + c : d) : c = d;
472
472
  switch (a) {
473
473
  case 1:
@@ -490,8 +490,8 @@ var scheduler_production_min = {};
490
490
  c > d ? (a.sortIndex = c, f2(t2, a), null === h(r2) && a === h(t2) && (B2 ? (E2(L2), L2 = -1) : B2 = true, K2(H2, c - d))) : (a.sortIndex = e, f2(r2, a), A2 || z2 || (A2 = true, I2(J2)));
491
491
  return a;
492
492
  };
493
- exports.unstable_shouldYield = M2;
494
- exports.unstable_wrapCallback = function(a) {
493
+ exports$1.unstable_shouldYield = M2;
494
+ exports$1.unstable_wrapCallback = function(a) {
495
495
  var b = y2;
496
496
  return function() {
497
497
  var c = y2;
@@ -13093,7 +13093,7 @@ const STYLES = `
13093
13093
  }
13094
13094
 
13095
13095
  /* ── Product photo strip (single-garment, below the size card) ──
13096
- Two thumbnails per row, evenly spaced, auto-advances. Lives at
13096
+ Three thumbnails per row, evenly spaced, auto-advances. Lives at
13097
13097
  the bottom of the right panel as decoration / entertainment. */
13098
13098
  .ps-tryon-photo-strip {
13099
13099
  margin-top: 0.65vw;
@@ -13112,12 +13112,16 @@ const STYLES = `
13112
13112
  }
13113
13113
  .ps-tryon-photo-strip-row {
13114
13114
  display: grid;
13115
- grid-template-columns: repeat(2, minmax(0, 1fr));
13115
+ grid-template-columns: repeat(3, minmax(0, 1fr));
13116
13116
  gap: 0.45vw;
13117
13117
  animation: ps-tryon-photo-strip-fade 0.5s ease;
13118
13118
  }
13119
13119
  .ps-tryon-photo-strip-row.ps-count-1 {
13120
- grid-template-columns: minmax(0, calc((100% - 0.45vw) / 2));
13120
+ grid-template-columns: minmax(0, calc((100% - 0.9vw) / 3));
13121
+ justify-content: center;
13122
+ }
13123
+ .ps-tryon-photo-strip-row.ps-count-2 {
13124
+ grid-template-columns: repeat(2, minmax(0, calc((100% - 0.9vw) / 3)));
13121
13125
  justify-content: center;
13122
13126
  }
13123
13127
  .ps-tryon-photo-strip-cell {
@@ -13178,8 +13182,14 @@ const STYLES = `
13178
13182
  .ps-tryon-photo-strip-row {
13179
13183
  gap: 8px;
13180
13184
  }
13185
+ .ps-tryon-photo-strip-row {
13186
+ grid-template-columns: repeat(3, minmax(0, 1fr));
13187
+ }
13181
13188
  .ps-tryon-photo-strip-row.ps-count-1 {
13182
- grid-template-columns: minmax(0, calc((100% - 8px) / 2));
13189
+ grid-template-columns: minmax(0, calc((100% - 16px) / 3));
13190
+ }
13191
+ .ps-tryon-photo-strip-row.ps-count-2 {
13192
+ grid-template-columns: repeat(2, minmax(0, calc((100% - 16px) / 3)));
13183
13193
  }
13184
13194
  .ps-tryon-photo-strip-cell {
13185
13195
  aspect-ratio: 1 / 1; border-radius: 12px;
@@ -21841,6 +21851,999 @@ const STYLES = `
21841
21851
  .ps-photo-zone-rejection-cta { font-size: 13px; padding: 10px 16px; border-radius: 8px; }
21842
21852
  .ps-photo-zone-error { font-size: 11px; padding: 8px 10px; border-radius: 8px; }
21843
21853
  }
21854
+
21855
+ /* ════════════════════════════════════════════════════════════════
21856
+ Mobile stability pass.
21857
+ Keep this block last: older mobile patches above mix vw/px/svh and
21858
+ compete with each other. These rules define the final phone layout
21859
+ contract for every SDK modal screen.
21860
+ ════════════════════════════════════════════════════════════════ */
21861
+ @media (max-width: 768px) {
21862
+ .ps-tryon-overlay {
21863
+ --ps-mobile-x: clamp(14px, 4vw, 18px);
21864
+ --ps-mobile-y: clamp(10px, 3vw, 14px);
21865
+ --ps-mobile-footer-gap: 72px;
21866
+ padding: 0 !important;
21867
+ overflow: hidden !important;
21868
+ align-items: stretch !important;
21869
+ justify-content: stretch !important;
21870
+ }
21871
+
21872
+ .ps-tryon-modal,
21873
+ .ps-tryon-modal-wide {
21874
+ width: 100dvw !important;
21875
+ max-width: 100dvw !important;
21876
+ height: 100svh !important;
21877
+ min-height: 100svh !important;
21878
+ max-height: 100svh !important;
21879
+ border-radius: 0 !important;
21880
+ display: flex !important;
21881
+ flex-direction: column !important;
21882
+ overflow: hidden !important;
21883
+ box-shadow: none !important;
21884
+ padding: env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left) !important;
21885
+ background: var(--ps-bg-primary) !important;
21886
+ }
21887
+
21888
+ .ps-tryon-header {
21889
+ min-height: 48px !important;
21890
+ padding: 8px var(--ps-mobile-x) !important;
21891
+ border-radius: 0 !important;
21892
+ flex: 0 0 auto !important;
21893
+ gap: 8px !important;
21894
+ }
21895
+ .ps-tryon-powered-by {
21896
+ min-width: 0 !important;
21897
+ overflow: hidden !important;
21898
+ text-overflow: ellipsis !important;
21899
+ }
21900
+ .ps-tryon-close,
21901
+ .ps-tryon-header-mobile-menu-btn,
21902
+ .ps-tryon-header-icon {
21903
+ width: 36px !important;
21904
+ height: 36px !important;
21905
+ min-width: 36px !important;
21906
+ min-height: 36px !important;
21907
+ }
21908
+ .ps-tryon-close svg,
21909
+ .ps-tryon-header-mobile-menu-btn svg,
21910
+ .ps-tryon-header-icon svg {
21911
+ width: 18px !important;
21912
+ height: 18px !important;
21913
+ }
21914
+
21915
+ .ps-tryon-body {
21916
+ flex: 1 1 auto !important;
21917
+ min-height: 0 !important;
21918
+ height: auto !important;
21919
+ padding: var(--ps-mobile-y) var(--ps-mobile-x) 0 !important;
21920
+ overflow: hidden !important;
21921
+ display: flex !important;
21922
+ flex-direction: column !important;
21923
+ background: var(--ps-bg-primary) !important;
21924
+ }
21925
+ .ps-tryon-body > .ps-tryon-back-btn {
21926
+ flex: 0 0 auto !important;
21927
+ margin: 0 0 8px !important;
21928
+ min-height: 34px !important;
21929
+ font-size: 13px !important;
21930
+ }
21931
+ .ps-tryon-view-enter {
21932
+ flex: 1 1 auto !important;
21933
+ min-height: 0 !important;
21934
+ width: 100% !important;
21935
+ overflow: hidden !important;
21936
+ display: flex !important;
21937
+ flex-direction: column !important;
21938
+ }
21939
+ .ps-tryon-view-enter > * {
21940
+ min-width: 0 !important;
21941
+ }
21942
+
21943
+ /* Shared mobile screen primitives */
21944
+ .ps-bp-wrapper,
21945
+ .ps-bp-root,
21946
+ .ps-bp-layout,
21947
+ .ps-bpm-root,
21948
+ .ps-pm-root,
21949
+ .ps-tryon-sr,
21950
+ .ps-msr-root,
21951
+ .ps-msd-root,
21952
+ .ps-msp-root,
21953
+ .ps-cpw-root,
21954
+ .ps-pmv-root,
21955
+ .ps-profile-auth,
21956
+ .ps-acc-mobile-wrap,
21957
+ .ps-acc-mobile-photo,
21958
+ .ps-acc-mobile-details {
21959
+ flex: 1 1 auto !important;
21960
+ min-height: 0 !important;
21961
+ width: 100% !important;
21962
+ max-width: 100% !important;
21963
+ }
21964
+ .ps-bp-wrapper,
21965
+ .ps-bp-root,
21966
+ .ps-bpm-root,
21967
+ .ps-pm-root,
21968
+ .ps-tryon-sr,
21969
+ .ps-msr-root,
21970
+ .ps-msd-root,
21971
+ .ps-msp-root,
21972
+ .ps-cpw-root,
21973
+ .ps-profile-auth {
21974
+ display: flex !important;
21975
+ flex-direction: column !important;
21976
+ overflow: hidden !important;
21977
+ }
21978
+
21979
+ /* Body details / manual flow */
21980
+ .ps-bp-layout {
21981
+ height: 100% !important;
21982
+ overflow: hidden !important;
21983
+ gap: 0 !important;
21984
+ }
21985
+ .ps-bp-root {
21986
+ padding: 0 !important;
21987
+ gap: 10px !important;
21988
+ justify-content: stretch !important;
21989
+ max-height: none !important;
21990
+ }
21991
+ .ps-bpm-root {
21992
+ padding: 0 !important;
21993
+ gap: 10px !important;
21994
+ }
21995
+ .ps-bpm-header {
21996
+ flex: 0 0 auto !important;
21997
+ margin: 0 !important;
21998
+ text-align: center !important;
21999
+ }
22000
+ .ps-bpm-title,
22001
+ .ps-bp-scan-details-title {
22002
+ font-size: 20px !important;
22003
+ line-height: 1.18 !important;
22004
+ letter-spacing: 0 !important;
22005
+ }
22006
+ .ps-bpm-subtitle,
22007
+ .ps-bp-scan-details-sub {
22008
+ display: block !important;
22009
+ margin-top: 6px !important;
22010
+ font-size: 12px !important;
22011
+ line-height: 1.4 !important;
22012
+ color: var(--ps-text-muted) !important;
22013
+ }
22014
+ .ps-bpm-toggle,
22015
+ .ps-bp-system-toggle,
22016
+ .ps-accm-toggle {
22017
+ flex: 0 0 auto !important;
22018
+ margin: 8px auto 10px !important;
22019
+ gap: 26px !important;
22020
+ }
22021
+ .ps-bpm-toggle-btn,
22022
+ .ps-bp-system-btn {
22023
+ font-size: 13px !important;
22024
+ min-height: 30px !important;
22025
+ padding: 4px 0 !important;
22026
+ }
22027
+ .ps-bpm-fields,
22028
+ .ps-accm-fields,
22029
+ .ps-bp-inline-fields {
22030
+ flex: 1 1 auto !important;
22031
+ min-height: 0 !important;
22032
+ overflow-y: auto !important;
22033
+ -webkit-overflow-scrolling: touch !important;
22034
+ padding-bottom: 8px !important;
22035
+ }
22036
+ .ps-bpm-row,
22037
+ .ps-bp-inline-row,
22038
+ .ps-accm-row {
22039
+ padding: 12px 0 !important;
22040
+ gap: 12px !important;
22041
+ }
22042
+ .ps-bpm-label,
22043
+ .ps-bp-inline-label,
22044
+ .ps-accm-label {
22045
+ font-size: 11px !important;
22046
+ letter-spacing: 0.12em !important;
22047
+ line-height: 1.25 !important;
22048
+ }
22049
+ .ps-bpm-value-display,
22050
+ .ps-bp-inline-input,
22051
+ .ps-accm-input {
22052
+ font-size: 19px !important;
22053
+ line-height: 1.2 !important;
22054
+ }
22055
+ .ps-bp-profile-card {
22056
+ flex: 0 0 auto !important;
22057
+ padding: 10px 12px !important;
22058
+ min-height: 0 !important;
22059
+ border-radius: 12px !important;
22060
+ gap: 10px !important;
22061
+ align-items: center !important;
22062
+ }
22063
+ .ps-bp-profile-card-copy {
22064
+ gap: 2px !important;
22065
+ min-width: 0 !important;
22066
+ }
22067
+ .ps-bp-profile-card-eyebrow {
22068
+ font-size: 10px !important;
22069
+ letter-spacing: 0.12em !important;
22070
+ }
22071
+ .ps-bp-profile-card-copy strong {
22072
+ font-size: 15px !important;
22073
+ line-height: 1.15 !important;
22074
+ }
22075
+ .ps-bp-profile-card-copy span:last-child {
22076
+ font-size: 11.5px !important;
22077
+ line-height: 1.3 !important;
22078
+ }
22079
+ .ps-bp-profile-card-action {
22080
+ min-height: 34px !important;
22081
+ padding: 0 12px !important;
22082
+ border-radius: 999px !important;
22083
+ font-size: 11px !important;
22084
+ white-space: nowrap !important;
22085
+ }
22086
+
22087
+ .ps-bpm-spacer {
22088
+ flex: 1 1 auto !important;
22089
+ min-height: 6px !important;
22090
+ }
22091
+ .ps-bpm-bottom,
22092
+ .ps-msr-bottom,
22093
+ .ps-msd-actions,
22094
+ .ps-cpw-footer,
22095
+ .ps-pmv-actions {
22096
+ flex: 0 0 auto !important;
22097
+ margin-left: calc(-1 * var(--ps-mobile-x)) !important;
22098
+ margin-right: calc(-1 * var(--ps-mobile-x)) !important;
22099
+ padding: 10px var(--ps-mobile-x) calc(10px + env(safe-area-inset-bottom)) !important;
22100
+ border-top: 1px solid var(--ps-border-subtle) !important;
22101
+ background: rgba(255,255,255,0.98) !important;
22102
+ box-shadow: 0 -14px 30px -28px rgba(17,24,39,0.35) !important;
22103
+ backdrop-filter: blur(10px) !important;
22104
+ -webkit-backdrop-filter: blur(10px) !important;
22105
+ z-index: 8 !important;
22106
+ }
22107
+ .ps-bpm-next-btn,
22108
+ .ps-pm-primary-btn,
22109
+ .ps-msr-tryon-cta,
22110
+ .ps-msd-primary-cta,
22111
+ .ps-cpw-next-btn,
22112
+ .ps-pmv-btn-primary,
22113
+ .ps-tryon-v2-cta {
22114
+ min-height: 42px !important;
22115
+ border-radius: 10px !important;
22116
+ font-size: 12px !important;
22117
+ line-height: 1.1 !important;
22118
+ letter-spacing: 0.08em !important;
22119
+ padding: 0 14px !important;
22120
+ white-space: nowrap !important;
22121
+ }
22122
+ .ps-bpm-bottom-tabs {
22123
+ min-height: 38px !important;
22124
+ margin-left: calc(-1 * var(--ps-mobile-x)) !important;
22125
+ margin-right: calc(-1 * var(--ps-mobile-x)) !important;
22126
+ }
22127
+ .ps-bpm-bottom-tab {
22128
+ min-height: 38px !important;
22129
+ font-size: 10px !important;
22130
+ letter-spacing: 0.12em !important;
22131
+ }
22132
+
22133
+ /* AI scan / photo flow */
22134
+ .ps-bp-scan-progress {
22135
+ flex: 0 0 auto !important;
22136
+ padding: 6px 4px 0 !important;
22137
+ margin: 0 0 10px !important;
22138
+ gap: 6px !important;
22139
+ }
22140
+ .ps-bp-scan-progress-track {
22141
+ gap: 9px !important;
22142
+ max-width: calc(100% - 48px) !important;
22143
+ }
22144
+ .ps-bp-scan-progress-label {
22145
+ font-size: 10.5px !important;
22146
+ letter-spacing: 0.08em !important;
22147
+ }
22148
+ .ps-bp-scan-progress-line {
22149
+ flex-basis: 28px !important;
22150
+ }
22151
+ .ps-bp-scan-details-center {
22152
+ flex: 1 1 auto !important;
22153
+ min-height: 0 !important;
22154
+ justify-content: flex-start !important;
22155
+ overflow-y: auto !important;
22156
+ padding: 6px 0 10px !important;
22157
+ gap: 10px !important;
22158
+ }
22159
+ .ps-bp-scan-details-center:not(.ps-shoe-scan-details) .ps-bp-system-toggle {
22160
+ margin-top: 14px !important;
22161
+ margin-bottom: 8px !important;
22162
+ }
22163
+ .ps-pm-root {
22164
+ padding: 0 !important;
22165
+ gap: 10px !important;
22166
+ }
22167
+ .ps-pm-header {
22168
+ flex: 0 0 auto !important;
22169
+ margin: 0 !important;
22170
+ }
22171
+ .ps-pm-title {
22172
+ font-size: 18px !important;
22173
+ line-height: 1.2 !important;
22174
+ margin: 0 0 4px !important;
22175
+ }
22176
+ .ps-pm-subtitle {
22177
+ font-size: 12px !important;
22178
+ line-height: 1.4 !important;
22179
+ margin: 0 !important;
22180
+ }
22181
+ .ps-pm-preview {
22182
+ flex: 1 1 auto !important;
22183
+ min-height: 240px !important;
22184
+ max-height: none !important;
22185
+ height: auto !important;
22186
+ border-radius: 14px !important;
22187
+ }
22188
+ .ps-bp-scan-progress ~ .ps-pm-root .ps-pm-preview.ps-pm-preview-tall {
22189
+ flex: 1 1 auto !important;
22190
+ min-height: min(54svh, 330px) !important;
22191
+ height: auto !important;
22192
+ }
22193
+ .ps-pm-preview-img,
22194
+ .ps-photo-zone-img,
22195
+ .ps-cpw-photo-preview-img,
22196
+ .ps-cpw-photo-frame-img {
22197
+ object-fit: contain !important;
22198
+ object-position: center center !important;
22199
+ }
22200
+ .ps-pm-age-chip {
22201
+ flex: 0 0 auto !important;
22202
+ margin: 8px 0 0 !important;
22203
+ padding: 9px 11px !important;
22204
+ }
22205
+ .ps-pm-age-chip-q {
22206
+ font-size: 12px !important;
22207
+ }
22208
+ .ps-pm-age-chip-btn {
22209
+ min-height: 30px !important;
22210
+ padding: 0 13px !important;
22211
+ }
22212
+ .ps-pm-checklist,
22213
+ .ps-pm-legal-notice,
22214
+ .ps-pm-dodonts-grid,
22215
+ .ps-pm-dodonts-tip {
22216
+ flex: 0 0 auto !important;
22217
+ }
22218
+ .ps-bp-photo-help {
22219
+ max-height: 82svh !important;
22220
+ overflow-y: auto !important;
22221
+ }
22222
+
22223
+ /* Size result / try-on result mobile */
22224
+ .ps-tryon-sr {
22225
+ min-height: 0 !important;
22226
+ }
22227
+ .ps-msr-root,
22228
+ .ps-msd-root {
22229
+ margin: 0 calc(-1 * var(--ps-mobile-x)) !important;
22230
+ }
22231
+ .ps-msr-scroll,
22232
+ .ps-msd-scroll,
22233
+ .ps-msp-scroll,
22234
+ .ps-cpw-body,
22235
+ .ps-pmv-root {
22236
+ flex: 1 1 auto !important;
22237
+ min-height: 0 !important;
22238
+ overflow-y: auto !important;
22239
+ overflow-x: hidden !important;
22240
+ -webkit-overflow-scrolling: touch !important;
22241
+ }
22242
+ .ps-msr-scroll,
22243
+ .ps-msd-scroll {
22244
+ padding: 8px var(--ps-mobile-x) calc(92px + env(safe-area-inset-bottom)) !important;
22245
+ gap: 12px !important;
22246
+ }
22247
+ .ps-msr-eyebrow {
22248
+ font-size: 10px !important;
22249
+ margin: 0 !important;
22250
+ }
22251
+ .ps-msr-product {
22252
+ gap: 10px !important;
22253
+ }
22254
+ .ps-msr-product-img-wrap,
22255
+ .ps-msd-image {
22256
+ width: 100% !important;
22257
+ height: auto !important;
22258
+ min-height: 260px !important;
22259
+ max-height: 52svh !important;
22260
+ aspect-ratio: 3 / 4 !important;
22261
+ border-radius: 14px !important;
22262
+ }
22263
+ .ps-msr-product-img,
22264
+ .ps-msd-image-img {
22265
+ width: 100% !important;
22266
+ height: 100% !important;
22267
+ object-fit: contain !important;
22268
+ object-position: center center !important;
22269
+ }
22270
+ .ps-msr-product-name {
22271
+ font-size: 14px !important;
22272
+ line-height: 1.25 !important;
22273
+ }
22274
+ .ps-msr-sections {
22275
+ margin-top: 2px !important;
22276
+ }
22277
+ .ps-msr-section-card {
22278
+ min-height: 92px !important;
22279
+ padding: 13px 14px !important;
22280
+ gap: 6px !important;
22281
+ }
22282
+ .ps-msr-section-icon-lg {
22283
+ width: 42px !important;
22284
+ height: 42px !important;
22285
+ margin-bottom: 2px !important;
22286
+ }
22287
+ .ps-msr-section-size {
22288
+ font-size: 28px !important;
22289
+ }
22290
+ .ps-msr-bottom-row,
22291
+ .ps-tryon-v2-action-group,
22292
+ .ps-msd-result-action-group {
22293
+ display: grid !important;
22294
+ grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
22295
+ gap: 8px !important;
22296
+ width: 100% !important;
22297
+ align-items: stretch !important;
22298
+ }
22299
+ .ps-tryon-v2-action-group-history {
22300
+ grid-template-columns: minmax(0, auto) !important;
22301
+ justify-content: end !important;
22302
+ }
22303
+ .ps-tryon-v2-action-group > .ps-tryon-v2-cta,
22304
+ .ps-msr-commerce-row .ps-tryon-v2-cta,
22305
+ .ps-msd-result-action-group .ps-tryon-v2-cta {
22306
+ width: 100% !important;
22307
+ min-width: 0 !important;
22308
+ flex: 1 1 auto !important;
22309
+ gap: 6px !important;
22310
+ letter-spacing: 0.07em !important;
22311
+ }
22312
+ .ps-tryon-v2-history-product-cta {
22313
+ width: auto !important;
22314
+ min-width: 0 !important;
22315
+ padding: 0 13px !important;
22316
+ }
22317
+ .ps-tryon-v2-add-bag-cta svg,
22318
+ .ps-tryon-v2-history-product-cta svg {
22319
+ width: 17px !important;
22320
+ height: 17px !important;
22321
+ }
22322
+ .ps-msr-media-actions {
22323
+ right: 8px !important;
22324
+ bottom: 8px !important;
22325
+ gap: 6px !important;
22326
+ }
22327
+ .ps-msr-feedback-slot {
22328
+ left: 8px !important;
22329
+ bottom: 8px !important;
22330
+ max-width: calc(100% - 16px) !important;
22331
+ }
22332
+
22333
+ /* Single-section detail */
22334
+ .ps-msd-topbar {
22335
+ flex: 0 0 auto !important;
22336
+ padding: 2px 0 4px !important;
22337
+ margin: 0 !important;
22338
+ }
22339
+ .ps-msd-card {
22340
+ padding: 16px !important;
22341
+ border-radius: 14px !important;
22342
+ gap: 9px !important;
22343
+ }
22344
+ .ps-msd-card-size-row {
22345
+ align-items: center !important;
22346
+ gap: 9px !important;
22347
+ flex-wrap: wrap !important;
22348
+ }
22349
+ .ps-msd-card-size {
22350
+ font-size: clamp(28px, 9vw, 38px) !important;
22351
+ line-height: 1 !important;
22352
+ overflow-wrap: anywhere !important;
22353
+ }
22354
+ .ps-msd-row {
22355
+ padding: 13px 0 !important;
22356
+ gap: 8px !important;
22357
+ }
22358
+ .ps-msd-row-cells {
22359
+ gap: 10px !important;
22360
+ }
22361
+ .ps-msd-cell-value {
22362
+ font-size: 17px !important;
22363
+ overflow-wrap: anywhere !important;
22364
+ }
22365
+ .ps-msd-sizes-pills {
22366
+ gap: 8px !important;
22367
+ }
22368
+ .ps-msd-size-pill {
22369
+ min-height: 36px !important;
22370
+ padding: 0 12px !important;
22371
+ border-radius: 999px !important;
22372
+ }
22373
+ .ps-msd-actions {
22374
+ position: static !important;
22375
+ margin: 12px 0 0 !important;
22376
+ padding: 10px 0 0 !important;
22377
+ border-top: 1px solid var(--ps-border-subtle) !important;
22378
+ box-shadow: none !important;
22379
+ background: transparent !important;
22380
+ backdrop-filter: none !important;
22381
+ -webkit-backdrop-filter: none !important;
22382
+ }
22383
+
22384
+ /* Product carousel: always compact, always square, never footer-sized. */
22385
+ .ps-tryon-photo-strip {
22386
+ flex: 0 0 auto !important;
22387
+ margin-top: 10px !important;
22388
+ gap: 7px !important;
22389
+ }
22390
+ .ps-tryon-photo-strip-head {
22391
+ min-height: 14px !important;
22392
+ }
22393
+ .ps-tryon-photo-strip-badge {
22394
+ font-size: 10px !important;
22395
+ letter-spacing: 0.12em !important;
22396
+ }
22397
+ .ps-tryon-photo-strip-row {
22398
+ display: grid !important;
22399
+ grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
22400
+ gap: 8px !important;
22401
+ }
22402
+ .ps-tryon-photo-strip-row.ps-count-1 {
22403
+ grid-template-columns: minmax(0, calc((100% - 16px) / 3)) !important;
22404
+ justify-content: center !important;
22405
+ }
22406
+ .ps-tryon-photo-strip-row.ps-count-2 {
22407
+ grid-template-columns: repeat(2, minmax(0, calc((100% - 16px) / 3))) !important;
22408
+ justify-content: center !important;
22409
+ }
22410
+ .ps-tryon-photo-strip-cell {
22411
+ aspect-ratio: 1 / 1 !important;
22412
+ max-height: 31vw !important;
22413
+ border-radius: 11px !important;
22414
+ }
22415
+ .ps-tryon-photo-strip-cell > img {
22416
+ object-fit: cover !important;
22417
+ object-position: center center !important;
22418
+ width: 100% !important;
22419
+ height: 100% !important;
22420
+ }
22421
+
22422
+ /* Profile management and auth */
22423
+ .ps-msp-scroll {
22424
+ padding: 0 !important;
22425
+ }
22426
+ .ps-msp-home {
22427
+ height: auto !important;
22428
+ min-height: 100% !important;
22429
+ gap: 12px !important;
22430
+ }
22431
+ .ps-msp-welcome-panel {
22432
+ flex: 0 0 auto !important;
22433
+ flex-direction: column !important;
22434
+ gap: 10px !important;
22435
+ padding: 4px 0 12px !important;
22436
+ }
22437
+ .ps-msp-kicker {
22438
+ font-size: 10px !important;
22439
+ letter-spacing: 0.12em !important;
22440
+ }
22441
+ .ps-msp-title {
22442
+ font-size: 22px !important;
22443
+ line-height: 1.15 !important;
22444
+ }
22445
+ .ps-msp-subtitle {
22446
+ font-size: 12.5px !important;
22447
+ line-height: 1.45 !important;
22448
+ }
22449
+ .ps-msp-header-actions {
22450
+ width: 100% !important;
22451
+ display: grid !important;
22452
+ grid-template-columns: 1fr auto !important;
22453
+ gap: 8px !important;
22454
+ }
22455
+ .ps-msp-primary-create,
22456
+ .ps-msp-logout {
22457
+ min-height: 38px !important;
22458
+ font-size: 12px !important;
22459
+ padding: 0 13px !important;
22460
+ border-radius: 999px !important;
22461
+ }
22462
+ .ps-msp-cards-panel,
22463
+ .ps-msp-cards-scroll {
22464
+ flex: 1 1 auto !important;
22465
+ min-height: 0 !important;
22466
+ max-height: none !important;
22467
+ overflow-y: auto !important;
22468
+ }
22469
+ .ps-msp-grid {
22470
+ grid-template-columns: 1fr !important;
22471
+ gap: 12px !important;
22472
+ margin: 0 0 14px !important;
22473
+ }
22474
+ .ps-msp-card {
22475
+ padding: 14px !important;
22476
+ border-radius: 14px !important;
22477
+ }
22478
+ .ps-msp-card-circle {
22479
+ width: 72px !important;
22480
+ height: 72px !important;
22481
+ margin: 8px auto 12px !important;
22482
+ }
22483
+ .ps-msp-card-name {
22484
+ font-size: 16px !important;
22485
+ line-height: 1.25 !important;
22486
+ }
22487
+ .ps-msp-meta-label {
22488
+ font-size: 10px !important;
22489
+ }
22490
+ .ps-msp-meta-value {
22491
+ font-size: 13px !important;
22492
+ }
22493
+ .ps-msp-card-actions {
22494
+ gap: 8px !important;
22495
+ }
22496
+ .ps-msp-card-select {
22497
+ min-height: 38px !important;
22498
+ padding: 0 12px !important;
22499
+ font-size: 11px !important;
22500
+ border-radius: 9px !important;
22501
+ }
22502
+ .ps-msp-card-edit,
22503
+ .ps-msp-card-delete {
22504
+ width: 38px !important;
22505
+ height: 38px !important;
22506
+ border-radius: 9px !important;
22507
+ }
22508
+ .ps-profile-auth {
22509
+ padding: 0 !important;
22510
+ overflow-y: auto !important;
22511
+ }
22512
+ .ps-profile-auth-shell {
22513
+ display: flex !important;
22514
+ flex-direction: column !important;
22515
+ height: auto !important;
22516
+ min-height: 100% !important;
22517
+ overflow: visible !important;
22518
+ }
22519
+ .ps-profile-auth-story,
22520
+ .ps-profile-auth-card {
22521
+ padding: 14px 0 !important;
22522
+ border: 0 !important;
22523
+ }
22524
+ .ps-profile-auth-story {
22525
+ border-bottom: 1px solid var(--ps-border-subtle) !important;
22526
+ }
22527
+ .ps-profile-auth-visual {
22528
+ min-height: 110px !important;
22529
+ margin: 0 !important;
22530
+ }
22531
+ .ps-profile-auth-title {
22532
+ font-size: 22px !important;
22533
+ line-height: 1.12 !important;
22534
+ }
22535
+ .ps-profile-auth-copy,
22536
+ .ps-profile-auth-card-copy {
22537
+ font-size: 12.5px !important;
22538
+ line-height: 1.45 !important;
22539
+ }
22540
+ .ps-profile-auth-icon-row {
22541
+ grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
22542
+ gap: 9px !important;
22543
+ }
22544
+ .ps-profile-auth-button {
22545
+ min-height: 58px !important;
22546
+ font-size: 12px !important;
22547
+ border-radius: 12px !important;
22548
+ }
22549
+
22550
+ /* Profile creation wizard and profile detail */
22551
+ .ps-cpw-body {
22552
+ padding: 0 !important;
22553
+ }
22554
+ .ps-cpw-step-head {
22555
+ flex: 0 0 auto !important;
22556
+ margin: 0 0 10px !important;
22557
+ }
22558
+ .ps-cpw-step-title,
22559
+ .ps-cpw-section-title {
22560
+ font-size: 20px !important;
22561
+ line-height: 1.2 !important;
22562
+ }
22563
+ .ps-cpw-section-sub {
22564
+ font-size: 12px !important;
22565
+ line-height: 1.4 !important;
22566
+ }
22567
+ .ps-cpw-image-split,
22568
+ .ps-cpw-photo-step {
22569
+ flex-direction: column !important;
22570
+ height: auto !important;
22571
+ min-height: 0 !important;
22572
+ gap: 12px !important;
22573
+ padding: 0 !important;
22574
+ overflow-y: auto !important;
22575
+ }
22576
+ .ps-cpw-image-left,
22577
+ .ps-cpw-image-right {
22578
+ width: 100% !important;
22579
+ min-width: 0 !important;
22580
+ min-height: 0 !important;
22581
+ }
22582
+ .ps-cpw-dropzone,
22583
+ .ps-cpw-photo-preview-frame,
22584
+ .ps-cpw-photo-preview {
22585
+ min-height: 250px !important;
22586
+ height: min(48svh, 360px) !important;
22587
+ border-radius: 14px !important;
22588
+ }
22589
+ .ps-cpw-inline-fields .ps-bp-inline-row {
22590
+ padding: 11px 0 !important;
22591
+ }
22592
+ .ps-cpw-pill-row {
22593
+ gap: 10px !important;
22594
+ flex-wrap: wrap !important;
22595
+ }
22596
+ .ps-cpw-pill {
22597
+ min-height: 34px !important;
22598
+ padding: 0 13px !important;
22599
+ font-size: 12px !important;
22600
+ border-radius: 999px !important;
22601
+ }
22602
+ .ps-pmv-root {
22603
+ padding: 0 !important;
22604
+ }
22605
+ .ps-pmv-data {
22606
+ padding-bottom: 12px !important;
22607
+ }
22608
+ .ps-pmv-hero {
22609
+ padding: 4px 0 12px !important;
22610
+ }
22611
+ .ps-pmv-hero-name {
22612
+ font-size: 22px !important;
22613
+ line-height: 1.15 !important;
22614
+ }
22615
+ .ps-pmv-measure-row,
22616
+ .ps-pmv-basic-row {
22617
+ padding: 12px 0 !important;
22618
+ gap: 10px !important;
22619
+ }
22620
+ .ps-pmv-measure-icon,
22621
+ .ps-pmv-basic-icon {
22622
+ width: 28px !important;
22623
+ height: 28px !important;
22624
+ }
22625
+ .ps-pmv-measure-label,
22626
+ .ps-pmv-basic-label {
22627
+ font-size: 11px !important;
22628
+ }
22629
+ .ps-pmv-measure-value,
22630
+ .ps-pmv-basic-value,
22631
+ .ps-pmv-inline-input,
22632
+ .ps-pmv-inline-select {
22633
+ font-size: 15px !important;
22634
+ }
22635
+ .ps-pmv-inline-input {
22636
+ width: 54px !important;
22637
+ }
22638
+ .ps-pmv-actions {
22639
+ position: sticky !important;
22640
+ bottom: 0 !important;
22641
+ justify-content: space-between !important;
22642
+ gap: 8px !important;
22643
+ flex-wrap: nowrap !important;
22644
+ }
22645
+ .ps-pmv-actions-right {
22646
+ gap: 8px !important;
22647
+ flex-wrap: nowrap !important;
22648
+ }
22649
+ .ps-pmv-btn-primary,
22650
+ .ps-pmv-btn-secondary,
22651
+ .ps-pmv-btn-edit,
22652
+ .ps-pmv-btn-delete {
22653
+ min-height: 40px !important;
22654
+ padding: 0 12px !important;
22655
+ border-radius: 10px !important;
22656
+ font-size: 11px !important;
22657
+ white-space: nowrap !important;
22658
+ }
22659
+
22660
+ /* History drawer = real mobile gallery sheet */
22661
+ .ps-tryon-drawer,
22662
+ .ps-tryon-history-drawer {
22663
+ position: absolute !important;
22664
+ inset: 0 !important;
22665
+ width: auto !important;
22666
+ max-width: none !important;
22667
+ height: auto !important;
22668
+ max-height: none !important;
22669
+ border-radius: 0 !important;
22670
+ transform: translateY(100%) !important;
22671
+ display: flex !important;
22672
+ flex-direction: column !important;
22673
+ padding: 0 !important;
22674
+ background: var(--ps-bg-primary) !important;
22675
+ z-index: 40 !important;
22676
+ }
22677
+ .ps-tryon-drawer-open {
22678
+ transform: translateY(0) !important;
22679
+ }
22680
+ .ps-tryon-drawer-header {
22681
+ flex: 0 0 auto !important;
22682
+ min-height: 52px !important;
22683
+ padding: 10px var(--ps-mobile-x) !important;
22684
+ margin: 0 !important;
22685
+ gap: 10px !important;
22686
+ border-bottom: 1px solid var(--ps-border-subtle) !important;
22687
+ }
22688
+ .ps-tryon-drawer-title {
22689
+ font-size: 17px !important;
22690
+ line-height: 1.25 !important;
22691
+ font-weight: 700 !important;
22692
+ }
22693
+ .ps-tryon-drawer-back,
22694
+ .ps-tryon-drawer-close,
22695
+ .ps-tryon-drawer-add-btn {
22696
+ width: 36px !important;
22697
+ height: 36px !important;
22698
+ min-width: 36px !important;
22699
+ border-radius: 10px !important;
22700
+ }
22701
+ .ps-tryon-drawer-list {
22702
+ flex: 1 1 auto !important;
22703
+ min-height: 0 !important;
22704
+ overflow-y: auto !important;
22705
+ -webkit-overflow-scrolling: touch !important;
22706
+ padding: 14px var(--ps-mobile-x) calc(14px + env(safe-area-inset-bottom)) !important;
22707
+ gap: 12px !important;
22708
+ }
22709
+ .ps-tryon-history-gallery {
22710
+ display: grid !important;
22711
+ grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
22712
+ gap: 12px !important;
22713
+ align-items: start !important;
22714
+ }
22715
+ .ps-tryon-history-card {
22716
+ border-radius: 14px !important;
22717
+ overflow: hidden !important;
22718
+ background: #FFFFFF !important;
22719
+ }
22720
+ .ps-tryon-history-card-main {
22721
+ padding: 0 !important;
22722
+ gap: 8px !important;
22723
+ text-align: left !important;
22724
+ }
22725
+ .ps-tryon-history-card-media {
22726
+ width: 100% !important;
22727
+ height: auto !important;
22728
+ aspect-ratio: 3 / 4 !important;
22729
+ border-radius: 13px !important;
22730
+ background: #f3f5f9 !important;
22731
+ }
22732
+ .ps-tryon-history-card-img,
22733
+ .ps-tryon-history-card-placeholder {
22734
+ width: 100% !important;
22735
+ height: 100% !important;
22736
+ object-fit: cover !important;
22737
+ object-position: center center !important;
22738
+ }
22739
+ .ps-tryon-history-card-product {
22740
+ width: 38px !important;
22741
+ height: 38px !important;
22742
+ right: 8px !important;
22743
+ bottom: 8px !important;
22744
+ object-fit: cover !important;
22745
+ }
22746
+ .ps-tryon-history-card-title {
22747
+ font-size: 12px !important;
22748
+ line-height: 1.25 !important;
22749
+ padding: 0 2px !important;
22750
+ }
22751
+ .ps-tryon-history-card-meta,
22752
+ .ps-tryon-history-card-sections {
22753
+ font-size: 10.5px !important;
22754
+ padding: 0 2px !important;
22755
+ }
22756
+ .ps-tryon-history-card-size {
22757
+ margin: 0 2px 2px !important;
22758
+ font-size: 16px !important;
22759
+ }
22760
+ .ps-tryon-history-delete.ps-card-delete {
22761
+ top: 8px !important;
22762
+ right: 8px !important;
22763
+ width: 32px !important;
22764
+ height: 32px !important;
22765
+ border-radius: 10px !important;
22766
+ }
22767
+ .ps-tryon-drawer-clear {
22768
+ min-height: 40px !important;
22769
+ font-size: 12px !important;
22770
+ margin-top: 2px !important;
22771
+ }
22772
+
22773
+ /* Generic safety: never let long words/labels force horizontal scroll. */
22774
+ .ps-tryon-overlay button,
22775
+ .ps-tryon-overlay span,
22776
+ .ps-tryon-overlay p,
22777
+ .ps-tryon-overlay h1,
22778
+ .ps-tryon-overlay h2,
22779
+ .ps-tryon-overlay h3,
22780
+ .ps-tryon-overlay div {
22781
+ min-width: 0;
22782
+ }
22783
+ }
22784
+
22785
+ @media (max-width: 768px) and (max-height: 720px) {
22786
+ .ps-tryon-overlay {
22787
+ --ps-mobile-y: 8px;
22788
+ }
22789
+ .ps-bpm-title,
22790
+ .ps-bp-scan-details-title {
22791
+ font-size: 18px !important;
22792
+ }
22793
+ .ps-bpm-subtitle,
22794
+ .ps-bp-scan-details-sub {
22795
+ display: none !important;
22796
+ }
22797
+ .ps-bpm-toggle,
22798
+ .ps-bp-system-toggle,
22799
+ .ps-accm-toggle {
22800
+ margin: 5px auto 7px !important;
22801
+ }
22802
+ .ps-bpm-row,
22803
+ .ps-bp-inline-row,
22804
+ .ps-accm-row {
22805
+ padding: 9px 0 !important;
22806
+ gap: 8px !important;
22807
+ }
22808
+ .ps-bpm-value-display {
22809
+ font-size: 17px !important;
22810
+ }
22811
+ .ps-bpm-step-btn {
22812
+ width: 30px !important;
22813
+ height: 30px !important;
22814
+ }
22815
+ .ps-bpm-or {
22816
+ margin: 6px 0 !important;
22817
+ }
22818
+ .ps-bpm-upload-link {
22819
+ min-height: 76px !important;
22820
+ padding: 12px !important;
22821
+ }
22822
+ .ps-bpm-bottom,
22823
+ .ps-msr-bottom,
22824
+ .ps-msd-actions,
22825
+ .ps-cpw-footer,
22826
+ .ps-pmv-actions {
22827
+ padding-top: 8px !important;
22828
+ padding-bottom: calc(8px + env(safe-area-inset-bottom)) !important;
22829
+ }
22830
+ .ps-bpm-next-btn,
22831
+ .ps-pm-primary-btn,
22832
+ .ps-msr-tryon-cta,
22833
+ .ps-msd-primary-cta,
22834
+ .ps-cpw-next-btn,
22835
+ .ps-pmv-btn-primary,
22836
+ .ps-tryon-v2-cta {
22837
+ min-height: 40px !important;
22838
+ }
22839
+ .ps-bpm-bottom-tabs {
22840
+ min-height: 34px !important;
22841
+ }
22842
+ .ps-bpm-bottom-tab {
22843
+ min-height: 34px !important;
22844
+ padding: 6px !important;
22845
+ }
22846
+ }
21844
22847
  `;
21845
22848
  function CameraIcon$1({ size = 18 }) {
21846
22849
  return /* @__PURE__ */ jsxRuntimeExports.jsxs("svg", { width: size, height: size, viewBox: "0 0 24 24", fill: "none", stroke: "currentColor", strokeWidth: 2, strokeLinecap: "round", strokeLinejoin: "round", children: [
@@ -23028,7 +24031,7 @@ function MultiSectionMobile({
23028
24031
  sizeGuide ? null : null
23029
24032
  ] });
23030
24033
  }
23031
- const PER_SLIDE = 2;
24034
+ const PER_SLIDE = 3;
23032
24035
  const CYCLE_MS = 4e3;
23033
24036
  function ProductPhotoCarouselCard({
23034
24037
  photos,