@mitumba/ui 0.1.3 → 0.1.5

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.
package/dist/index.js CHANGED
@@ -1176,6 +1176,60 @@ function MitumbaAvatar({
1176
1176
  var import_Box6 = __toESM(require("@mui/material/Box"));
1177
1177
  var import_tokens6 = require("@mitumba/tokens");
1178
1178
  var import_jsx_runtime6 = require("react/jsx-runtime");
1179
+ function MitumbaGlass({
1180
+ children,
1181
+ blur = 24,
1182
+ opacity = 0.5,
1183
+ rounding = "large",
1184
+ border = true,
1185
+ role,
1186
+ sx
1187
+ }) {
1188
+ const radiusMap = {
1189
+ rounded: import_tokens6.tokens.radius.md,
1190
+ // 8px
1191
+ large: import_tokens6.tokens.radius.lg,
1192
+ // 16px
1193
+ huge: import_tokens6.tokens.radius.xl,
1194
+ // 24px
1195
+ full: import_tokens6.tokens.radius.full
1196
+ };
1197
+ return /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(
1198
+ import_Box6.default,
1199
+ {
1200
+ role,
1201
+ sx: [
1202
+ {
1203
+ position: "relative",
1204
+ overflow: "hidden",
1205
+ backgroundColor: `rgba(255, 255, 255, ${opacity})`,
1206
+ backdropFilter: `blur(${blur}px) saturate(180%)`,
1207
+ WebkitBackdropFilter: `blur(${blur}px) saturate(180%)`,
1208
+ borderRadius: `${radiusMap[rounding]}px`,
1209
+ // High-end glass border: Ultra-thin, white, low-opacity
1210
+ border: border ? "1px solid rgba(255, 255, 255, 0.4)" : "none",
1211
+ // Multi-layered shadow for realistic floating depth
1212
+ boxShadow: `
1213
+ 0 4px 12px 0 rgba(0, 0, 0, 0.05),
1214
+ 0 12px 32px 0 rgba(31, 38, 135, 0.1)
1215
+ `,
1216
+ transition: "all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)",
1217
+ // Subtle light leak / shine effect
1218
+ "&::before": {
1219
+ content: '""',
1220
+ position: "absolute",
1221
+ inset: 0,
1222
+ zIndex: 0,
1223
+ background: "linear-gradient(135deg, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0) 40%, rgba(255,255,255,0) 60%, rgba(255,255,255,0.1) 100%)",
1224
+ pointerEvents: "none"
1225
+ }
1226
+ },
1227
+ ...Array.isArray(sx) ? sx : [sx]
1228
+ ],
1229
+ children: /* @__PURE__ */ (0, import_jsx_runtime6.jsx)(import_Box6.default, { sx: { position: "relative", zIndex: 1 }, children })
1230
+ }
1231
+ );
1232
+ }
1179
1233
 
1180
1234
  // src/components/selection/MitumbaCheckbox/MitumbaCheckbox.tsx
1181
1235
  var import_react5 = require("react");
@@ -2399,12 +2453,12 @@ function MobileBottomNav({
2399
2453
  "&::after": {
2400
2454
  content: '""',
2401
2455
  position: "absolute",
2402
- bottom: -12,
2456
+ top: 0,
2403
2457
  left: "25%",
2404
2458
  width: isActive ? "50%" : 0,
2405
2459
  height: 3,
2406
2460
  backgroundColor: import_tokens24.tokens.colors.green,
2407
- borderRadius: "3px 3px 0 0",
2461
+ borderRadius: "0 0 3px 3px",
2408
2462
  transition: "all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1)"
2409
2463
  }
2410
2464
  };
@@ -2935,24 +2989,66 @@ function STIScoreChip({
2935
2989
 
2936
2990
  // src/components/seller/SellerCard/SellerCard.tsx
2937
2991
  var import_Box24 = __toESM(require("@mui/material/Box"));
2938
- var import_Typography16 = __toESM(require("@mui/material/Typography"));
2992
+ var import_Typography17 = __toESM(require("@mui/material/Typography"));
2939
2993
  var import_Inventory2Outlined = __toESM(require("@mui/icons-material/Inventory2Outlined"));
2940
2994
  var import_LocationOnOutlined = __toESM(require("@mui/icons-material/LocationOnOutlined"));
2941
- var import_tokens31 = require("@mitumba/tokens");
2995
+ var import_tokens32 = require("@mitumba/tokens");
2942
2996
 
2943
2997
  // src/components/vazi/VAZIBadge/VAZIBadge.tsx
2998
+ var import_Typography16 = __toESM(require("@mui/material/Typography"));
2944
2999
  var import_AutoAwesome2 = __toESM(require("@mui/icons-material/AutoAwesome"));
3000
+ var import_tokens31 = require("@mitumba/tokens");
2945
3001
  var import_jsx_runtime31 = require("react/jsx-runtime");
2946
3002
  function VAZIBadge({ size = "small" }) {
2947
- return /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
2948
- MitumbaChip,
3003
+ const isLarge = size === "medium";
3004
+ return /* @__PURE__ */ (0, import_jsx_runtime31.jsxs)(
3005
+ MitumbaGlass,
2949
3006
  {
2950
- label: "VAZI Curation",
2951
- status: "special",
2952
- variant: "solid",
2953
- size,
2954
- icon: /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(import_AutoAwesome2.default, {}),
2955
- color: "purple"
3007
+ rounding: "full",
3008
+ blur: 8,
3009
+ opacity: 0.9,
3010
+ sx: {
3011
+ display: "inline-flex",
3012
+ alignItems: "center",
3013
+ gap: 0.8,
3014
+ px: isLarge ? 2 : 1.5,
3015
+ py: 0.6,
3016
+ backgroundColor: "rgba(255, 255, 255, 0.95)",
3017
+ boxShadow: "0 2px 8px rgba(160, 98, 53, 0.15)",
3018
+ border: `1px solid rgba(160, 98, 53, 0.2)`
3019
+ },
3020
+ role: "status",
3021
+ children: [
3022
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3023
+ import_AutoAwesome2.default,
3024
+ {
3025
+ sx: {
3026
+ fontSize: isLarge ? 18 : 14,
3027
+ color: import_tokens31.tokens.colors.earth,
3028
+ animation: "vazi-pulse 3s infinite ease-in-out",
3029
+ "@keyframes vazi-pulse": {
3030
+ "0%, 100%": { transform: "scale(1) rotate(0deg)", opacity: 1 },
3031
+ "50%": { transform: "scale(1.2) rotate(10deg)", opacity: 0.8 }
3032
+ }
3033
+ }
3034
+ }
3035
+ ),
3036
+ /* @__PURE__ */ (0, import_jsx_runtime31.jsx)(
3037
+ import_Typography16.default,
3038
+ {
3039
+ sx: {
3040
+ fontSize: isLarge ? 12 : 10,
3041
+ fontWeight: 900,
3042
+ color: import_tokens31.tokens.colors.earth,
3043
+ fontFamily: import_tokens31.tokens.typography.fontFamily,
3044
+ textTransform: "uppercase",
3045
+ letterSpacing: "0.08em",
3046
+ lineHeight: 1
3047
+ },
3048
+ children: "VAZI"
3049
+ }
3050
+ )
3051
+ ]
2956
3052
  }
2957
3053
  );
2958
3054
  }
@@ -2984,75 +3080,75 @@ function SellerCard({
2984
3080
  sx: {
2985
3081
  display: "flex",
2986
3082
  alignItems: "center",
2987
- gap: import_tokens31.tokens.spacing.base,
2988
- p: import_tokens31.tokens.spacing.base,
2989
- borderRadius: import_tokens31.tokens.radius.lg,
2990
- bgcolor: import_tokens31.tokens.colors.surface,
2991
- boxShadow: import_tokens31.tokens.shadows.card,
2992
- border: `1px solid ${import_tokens31.tokens.colors.divider}`,
3083
+ gap: import_tokens32.tokens.spacing.base,
3084
+ p: import_tokens32.tokens.spacing.base,
3085
+ borderRadius: import_tokens32.tokens.radius.lg,
3086
+ bgcolor: import_tokens32.tokens.colors.surface,
3087
+ boxShadow: import_tokens32.tokens.shadows.card,
3088
+ border: `1px solid ${import_tokens32.tokens.colors.divider}`,
2993
3089
  cursor: onTap ? "pointer" : "default",
2994
3090
  transition: "all 250ms cubic-bezier(0.4, 0, 0.2, 1)",
2995
3091
  "&:hover": onTap ? {
2996
- boxShadow: import_tokens31.tokens.shadows.elevated,
3092
+ boxShadow: import_tokens32.tokens.shadows.elevated,
2997
3093
  transform: "translateY(-2px)",
2998
- borderColor: import_tokens31.tokens.colors.border
3094
+ borderColor: import_tokens32.tokens.colors.border
2999
3095
  } : void 0,
3000
3096
  "&:focus-visible": {
3001
- outline: `2px solid ${import_tokens31.tokens.colors.greenLight}`,
3002
- boxShadow: import_tokens31.tokens.shadows.focus
3097
+ outline: `2px solid ${import_tokens32.tokens.colors.greenLight}`,
3098
+ boxShadow: import_tokens32.tokens.shadows.focus
3003
3099
  }
3004
3100
  },
3005
3101
  children: [
3006
3102
  /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(MitumbaAvatar, { name, imageUrl: avatarUrl, size: "md" }),
3007
3103
  /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_Box24.default, { sx: { flex: 1, minWidth: 0 }, children: [
3008
- /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_Box24.default, { sx: { display: "flex", alignItems: "center", gap: import_tokens31.tokens.spacing.sm }, children: [
3104
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_Box24.default, { sx: { display: "flex", alignItems: "center", gap: import_tokens32.tokens.spacing.sm }, children: [
3009
3105
  /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
3010
- import_Typography16.default,
3106
+ import_Typography17.default,
3011
3107
  {
3012
3108
  sx: {
3013
- fontWeight: import_tokens31.tokens.typography.fontWeights.bold,
3014
- fontSize: import_tokens31.tokens.typography.fontSizes.base,
3015
- color: import_tokens31.tokens.colors.textPrimary,
3109
+ fontWeight: import_tokens32.tokens.typography.fontWeights.bold,
3110
+ fontSize: import_tokens32.tokens.typography.fontSizes.base,
3111
+ color: import_tokens32.tokens.colors.textPrimary,
3016
3112
  lineHeight: 1.2,
3017
3113
  overflow: "hidden",
3018
3114
  textOverflow: "ellipsis",
3019
3115
  whiteSpace: "nowrap",
3020
- fontFamily: import_tokens31.tokens.typography.fontFamily
3116
+ fontFamily: import_tokens32.tokens.typography.fontFamily
3021
3117
  },
3022
3118
  children: name
3023
3119
  }
3024
3120
  ),
3025
3121
  isVaziFeatured && /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(VAZIBadge, { size: "small" })
3026
3122
  ] }),
3027
- /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_Box24.default, { sx: { display: "flex", alignItems: "center", gap: import_tokens31.tokens.spacing.sm, mt: import_tokens31.tokens.spacing.xs }, children: [
3123
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_Box24.default, { sx: { display: "flex", alignItems: "center", gap: import_tokens32.tokens.spacing.sm, mt: import_tokens32.tokens.spacing.xs }, children: [
3028
3124
  /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(STIScoreChip, { score: stiScore, compact: true }),
3029
3125
  /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_Box24.default, { sx: { display: "flex", alignItems: "center", gap: "4px", opacity: 0.7 }, children: [
3030
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_Inventory2Outlined.default, { sx: { fontSize: 14, color: import_tokens31.tokens.colors.textSecondary } }),
3126
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_Inventory2Outlined.default, { sx: { fontSize: 14, color: import_tokens32.tokens.colors.textSecondary } }),
3031
3127
  /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
3032
- import_Typography16.default,
3128
+ import_Typography17.default,
3033
3129
  {
3034
3130
  sx: {
3035
- color: import_tokens31.tokens.colors.textSecondary,
3131
+ color: import_tokens32.tokens.colors.textSecondary,
3036
3132
  fontSize: 10,
3037
- fontWeight: import_tokens31.tokens.typography.fontWeights.semibold,
3133
+ fontWeight: import_tokens32.tokens.typography.fontWeights.semibold,
3038
3134
  textTransform: "uppercase",
3039
- letterSpacing: import_tokens31.tokens.typography.letterSpacings.wide
3135
+ letterSpacing: import_tokens32.tokens.typography.letterSpacings.wide
3040
3136
  },
3041
3137
  children: totalListings
3042
3138
  }
3043
3139
  )
3044
3140
  ] }),
3045
3141
  /* @__PURE__ */ (0, import_jsx_runtime32.jsxs)(import_Box24.default, { sx: { display: "flex", alignItems: "center", gap: "4px", opacity: 0.7 }, children: [
3046
- /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_LocationOnOutlined.default, { sx: { fontSize: 14, color: import_tokens31.tokens.colors.textSecondary } }),
3142
+ /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(import_LocationOnOutlined.default, { sx: { fontSize: 14, color: import_tokens32.tokens.colors.textSecondary } }),
3047
3143
  /* @__PURE__ */ (0, import_jsx_runtime32.jsx)(
3048
- import_Typography16.default,
3144
+ import_Typography17.default,
3049
3145
  {
3050
3146
  sx: {
3051
- color: import_tokens31.tokens.colors.textSecondary,
3147
+ color: import_tokens32.tokens.colors.textSecondary,
3052
3148
  fontSize: 10,
3053
- fontWeight: import_tokens31.tokens.typography.fontWeights.semibold,
3149
+ fontWeight: import_tokens32.tokens.typography.fontWeights.semibold,
3054
3150
  textTransform: "uppercase",
3055
- letterSpacing: import_tokens31.tokens.typography.letterSpacings.wide
3151
+ letterSpacing: import_tokens32.tokens.typography.letterSpacings.wide
3056
3152
  },
3057
3153
  children: city
3058
3154
  }
@@ -3067,11 +3163,11 @@ function SellerCard({
3067
3163
 
3068
3164
  // src/components/seller/STIBreakdownPanel/STIBreakdownPanel.tsx
3069
3165
  var import_Box25 = __toESM(require("@mui/material/Box"));
3070
- var import_Typography17 = __toESM(require("@mui/material/Typography"));
3166
+ var import_Typography18 = __toESM(require("@mui/material/Typography"));
3071
3167
  var import_LinearProgress2 = __toESM(require("@mui/material/LinearProgress"));
3072
3168
  var import_AddOutlined = __toESM(require("@mui/icons-material/AddOutlined"));
3073
3169
  var import_RemoveOutlined = __toESM(require("@mui/icons-material/RemoveOutlined"));
3074
- var import_tokens32 = require("@mitumba/tokens");
3170
+ var import_tokens33 = require("@mitumba/tokens");
3075
3171
  var import_jsx_runtime33 = require("react/jsx-runtime");
3076
3172
  function formatPercent(value) {
3077
3173
  return `${Math.round(value * 100)}%`;
@@ -3094,29 +3190,29 @@ function STIBreakdownPanel({
3094
3190
  import_Box25.default,
3095
3191
  {
3096
3192
  sx: {
3097
- p: import_tokens32.tokens.spacing.base,
3098
- borderRadius: import_tokens32.tokens.radius.lg,
3099
- bgcolor: import_tokens32.tokens.colors.surface,
3100
- boxShadow: import_tokens32.tokens.shadows.card,
3101
- border: `1px solid ${import_tokens32.tokens.colors.divider}`
3193
+ p: import_tokens33.tokens.spacing.base,
3194
+ borderRadius: import_tokens33.tokens.radius.lg,
3195
+ bgcolor: import_tokens33.tokens.colors.surface,
3196
+ boxShadow: import_tokens33.tokens.shadows.card,
3197
+ border: `1px solid ${import_tokens33.tokens.colors.divider}`
3102
3198
  },
3103
3199
  children: [
3104
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_Box25.default, { sx: { display: "flex", alignItems: "center", gap: import_tokens32.tokens.spacing.base, mb: import_tokens32.tokens.spacing.lg }, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(STIScoreChip, { score }) }),
3105
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_Box25.default, { component: "section", "aria-label": "Score factors", sx: { mb: import_tokens32.tokens.spacing.lg }, children: factors.map((factor) => /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_Box25.default, { sx: { mb: import_tokens32.tokens.spacing.md }, children: [
3106
- /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_Box25.default, { sx: { display: "flex", justifyContent: "space-between", mb: import_tokens32.tokens.spacing.xs }, children: [
3200
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_Box25.default, { sx: { display: "flex", alignItems: "center", gap: import_tokens33.tokens.spacing.base, mb: import_tokens33.tokens.spacing.lg }, children: /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(STIScoreChip, { score }) }),
3201
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_Box25.default, { component: "section", "aria-label": "Score factors", sx: { mb: import_tokens33.tokens.spacing.lg }, children: factors.map((factor) => /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_Box25.default, { sx: { mb: import_tokens33.tokens.spacing.md }, children: [
3202
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_Box25.default, { sx: { display: "flex", justifyContent: "space-between", mb: import_tokens33.tokens.spacing.xs }, children: [
3107
3203
  /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3108
- import_Typography17.default,
3204
+ import_Typography18.default,
3109
3205
  {
3110
3206
  variant: "body2",
3111
- sx: { color: import_tokens32.tokens.colors.textSecondary, fontSize: import_tokens32.tokens.typography.fontSizes.sm },
3207
+ sx: { color: import_tokens33.tokens.colors.textSecondary, fontSize: import_tokens33.tokens.typography.fontSizes.sm },
3112
3208
  children: factor.label
3113
3209
  }
3114
3210
  ),
3115
3211
  /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3116
- import_Typography17.default,
3212
+ import_Typography18.default,
3117
3213
  {
3118
3214
  variant: "body2",
3119
- sx: { fontWeight: import_tokens32.tokens.typography.fontWeights.semibold, fontSize: import_tokens32.tokens.typography.fontSizes.sm },
3215
+ sx: { fontWeight: import_tokens33.tokens.typography.fontWeights.semibold, fontSize: import_tokens33.tokens.typography.fontSizes.sm },
3120
3216
  children: factor.display
3121
3217
  }
3122
3218
  )
@@ -3127,12 +3223,12 @@ function STIBreakdownPanel({
3127
3223
  variant: "determinate",
3128
3224
  value: factor.value * 100,
3129
3225
  sx: {
3130
- height: import_tokens32.tokens.spacing.sm,
3131
- borderRadius: import_tokens32.tokens.radius.full,
3132
- bgcolor: import_tokens32.tokens.colors.background,
3226
+ height: import_tokens33.tokens.spacing.sm,
3227
+ borderRadius: import_tokens33.tokens.radius.full,
3228
+ bgcolor: import_tokens33.tokens.colors.background,
3133
3229
  "& .MuiLinearProgress-bar": {
3134
- bgcolor: import_tokens32.tokens.colors.green,
3135
- borderRadius: import_tokens32.tokens.radius.full
3230
+ bgcolor: import_tokens33.tokens.colors.green,
3231
+ borderRadius: import_tokens33.tokens.radius.full
3136
3232
  }
3137
3233
  },
3138
3234
  "aria-label": `${factor.label} progress`
@@ -3141,14 +3237,14 @@ function STIBreakdownPanel({
3141
3237
  ] }, factor.label)) }),
3142
3238
  recentEvents.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_Box25.default, { component: "section", "aria-label": "Recent STI events", children: [
3143
3239
  /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3144
- import_Typography17.default,
3240
+ import_Typography18.default,
3145
3241
  {
3146
3242
  variant: "body2",
3147
3243
  sx: {
3148
- fontWeight: import_tokens32.tokens.typography.fontWeights.semibold,
3149
- fontSize: import_tokens32.tokens.typography.fontSizes.sm,
3150
- color: import_tokens32.tokens.colors.textPrimary,
3151
- mb: import_tokens32.tokens.spacing.sm
3244
+ fontWeight: import_tokens33.tokens.typography.fontWeights.semibold,
3245
+ fontSize: import_tokens33.tokens.typography.fontSizes.sm,
3246
+ color: import_tokens33.tokens.colors.textPrimary,
3247
+ mb: import_tokens33.tokens.spacing.sm
3152
3248
  },
3153
3249
  children: "Recent Events"
3154
3250
  }
@@ -3159,34 +3255,34 @@ function STIBreakdownPanel({
3159
3255
  sx: {
3160
3256
  display: "flex",
3161
3257
  alignItems: "flex-start",
3162
- gap: import_tokens32.tokens.spacing.sm,
3163
- py: import_tokens32.tokens.spacing.sm,
3164
- borderBottom: `1px solid ${import_tokens32.tokens.colors.divider}`
3258
+ gap: import_tokens33.tokens.spacing.sm,
3259
+ py: import_tokens33.tokens.spacing.sm,
3260
+ borderBottom: `1px solid ${import_tokens33.tokens.colors.divider}`
3165
3261
  },
3166
3262
  children: [
3167
- event.type === "positive" ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_AddOutlined.default, { sx: { fontSize: 16, color: import_tokens32.tokens.colors.success, mt: import_tokens32.tokens.spacing.xs } }) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_RemoveOutlined.default, { sx: { fontSize: 16, color: import_tokens32.tokens.colors.error, mt: import_tokens32.tokens.spacing.xs } }),
3263
+ event.type === "positive" ? /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_AddOutlined.default, { sx: { fontSize: 16, color: import_tokens33.tokens.colors.success, mt: import_tokens33.tokens.spacing.xs } }) : /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_RemoveOutlined.default, { sx: { fontSize: 16, color: import_tokens33.tokens.colors.error, mt: import_tokens33.tokens.spacing.xs } }),
3168
3264
  /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_Box25.default, { sx: { flex: 1 }, children: [
3169
3265
  /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(import_Box25.default, { sx: { display: "flex", justifyContent: "space-between" }, children: [
3170
3266
  /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(
3171
- import_Typography17.default,
3267
+ import_Typography18.default,
3172
3268
  {
3173
3269
  variant: "body2",
3174
3270
  sx: {
3175
- fontSize: import_tokens32.tokens.typography.fontSizes.sm,
3176
- color: import_tokens32.tokens.colors.textPrimary,
3177
- fontWeight: import_tokens32.tokens.typography.fontWeights.medium
3271
+ fontSize: import_tokens33.tokens.typography.fontSizes.sm,
3272
+ color: import_tokens33.tokens.colors.textPrimary,
3273
+ fontWeight: import_tokens33.tokens.typography.fontWeights.medium
3178
3274
  },
3179
3275
  children: event.reason
3180
3276
  }
3181
3277
  ),
3182
3278
  /* @__PURE__ */ (0, import_jsx_runtime33.jsxs)(
3183
- import_Typography17.default,
3279
+ import_Typography18.default,
3184
3280
  {
3185
3281
  variant: "caption",
3186
3282
  sx: {
3187
- fontSize: import_tokens32.tokens.typography.fontSizes.xs,
3188
- fontWeight: import_tokens32.tokens.typography.fontWeights.bold,
3189
- color: event.type === "positive" ? import_tokens32.tokens.colors.success : import_tokens32.tokens.colors.error
3283
+ fontSize: import_tokens33.tokens.typography.fontSizes.xs,
3284
+ fontWeight: import_tokens33.tokens.typography.fontWeights.bold,
3285
+ color: event.type === "positive" ? import_tokens33.tokens.colors.success : import_tokens33.tokens.colors.error
3190
3286
  },
3191
3287
  children: [
3192
3288
  event.type === "positive" ? "+" : "",
@@ -3195,7 +3291,7 @@ function STIBreakdownPanel({
3195
3291
  }
3196
3292
  )
3197
3293
  ] }),
3198
- /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_Typography17.default, { variant: "caption", sx: { fontSize: import_tokens32.tokens.typography.fontSizes.xs, color: import_tokens32.tokens.colors.textSecondary }, children: event.timestamp })
3294
+ /* @__PURE__ */ (0, import_jsx_runtime33.jsx)(import_Typography18.default, { variant: "caption", sx: { fontSize: import_tokens33.tokens.typography.fontSizes.xs, color: import_tokens33.tokens.colors.textSecondary }, children: event.timestamp })
3199
3295
  ] })
3200
3296
  ]
3201
3297
  },
@@ -3210,13 +3306,13 @@ function STIBreakdownPanel({
3210
3306
  // src/components/listing/ListingCard/ListingCard.tsx
3211
3307
  var import_react12 = require("react");
3212
3308
  var import_Box26 = __toESM(require("@mui/material/Box"));
3213
- var import_Typography18 = __toESM(require("@mui/material/Typography"));
3309
+ var import_Typography19 = __toESM(require("@mui/material/Typography"));
3214
3310
  var import_Stack4 = __toESM(require("@mui/material/Stack"));
3215
3311
  var import_IconButton6 = __toESM(require("@mui/material/IconButton"));
3216
3312
  var import_Favorite = __toESM(require("@mui/icons-material/Favorite"));
3217
3313
  var import_FavoriteBorder = __toESM(require("@mui/icons-material/FavoriteBorder"));
3218
3314
  var import_ArrowOutward = __toESM(require("@mui/icons-material/ArrowOutward"));
3219
- var import_tokens33 = require("@mitumba/tokens");
3315
+ var import_tokens34 = require("@mitumba/tokens");
3220
3316
  var import_jsx_runtime34 = require("react/jsx-runtime");
3221
3317
  function ListingCard({
3222
3318
  images,
@@ -3249,8 +3345,8 @@ function ListingCard({
3249
3345
  sx: [
3250
3346
  {
3251
3347
  width: "100%",
3252
- backgroundColor: import_tokens33.tokens.colors.surface,
3253
- borderRadius: `${import_tokens33.tokens.radius.lg}px`,
3348
+ backgroundColor: import_tokens34.tokens.colors.surface,
3349
+ borderRadius: `${import_tokens34.tokens.radius.lg}px`,
3254
3350
  // Standardized to 16px (Serious)
3255
3351
  overflow: "hidden",
3256
3352
  // High-end layered shadow, no clunky borders
@@ -3263,13 +3359,13 @@ function ListingCard({
3263
3359
  position: "relative",
3264
3360
  "&:hover": {
3265
3361
  transform: "translateY(-6px)",
3266
- boxShadow: import_tokens33.tokens.shadows.deep
3362
+ boxShadow: import_tokens34.tokens.shadows.deep
3267
3363
  }
3268
3364
  },
3269
3365
  ...Array.isArray(sx) ? sx : [sx]
3270
3366
  ],
3271
3367
  children: [
3272
- /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_Box26.default, { sx: { position: "relative", width: "100%", pt: "100%", backgroundColor: import_tokens33.tokens.colors.background }, children: [
3368
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_Box26.default, { sx: { position: "relative", width: "100%", pt: "100%", backgroundColor: import_tokens34.tokens.colors.background }, children: [
3273
3369
  /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3274
3370
  import_Box26.default,
3275
3371
  {
@@ -3298,13 +3394,13 @@ function ListingCard({
3298
3394
  backdropFilter: "blur(4px)",
3299
3395
  px: 1.5,
3300
3396
  py: 0.5,
3301
- borderRadius: import_tokens33.tokens.radius.full,
3397
+ borderRadius: import_tokens34.tokens.radius.full,
3302
3398
  fontSize: 10,
3303
3399
  fontWeight: 800,
3304
- color: import_tokens33.tokens.colors.textPrimary,
3305
- fontFamily: import_tokens33.tokens.typography.fontFamily,
3400
+ color: import_tokens34.tokens.colors.textPrimary,
3401
+ fontFamily: import_tokens34.tokens.typography.fontFamily,
3306
3402
  textTransform: "uppercase",
3307
- boxShadow: import_tokens33.tokens.shadows.card,
3403
+ boxShadow: import_tokens34.tokens.shadows.card,
3308
3404
  zIndex: 2
3309
3405
  },
3310
3406
  children: badge
@@ -3319,12 +3415,12 @@ function ListingCard({
3319
3415
  right: 12,
3320
3416
  width: 32,
3321
3417
  height: 32,
3322
- backgroundColor: import_tokens33.tokens.colors.white,
3418
+ backgroundColor: import_tokens34.tokens.colors.white,
3323
3419
  borderRadius: "50%",
3324
3420
  display: "flex",
3325
3421
  alignItems: "center",
3326
3422
  justifyContent: "center",
3327
- boxShadow: import_tokens33.tokens.shadows.card,
3423
+ boxShadow: import_tokens34.tokens.shadows.card,
3328
3424
  p: 0.5,
3329
3425
  zIndex: 2,
3330
3426
  "& img": { width: "100%", height: "100%", objectFit: "contain" }
@@ -3342,10 +3438,10 @@ function ListingCard({
3342
3438
  right: 12,
3343
3439
  backgroundColor: "rgba(255, 255, 255, 0.9)",
3344
3440
  backdropFilter: "blur(4px)",
3345
- boxShadow: import_tokens33.tokens.shadows.card,
3346
- color: isLiked ? import_tokens33.tokens.colors.error : import_tokens33.tokens.colors.textSecondary,
3441
+ boxShadow: import_tokens34.tokens.shadows.card,
3442
+ color: isLiked ? import_tokens34.tokens.colors.error : import_tokens34.tokens.colors.textSecondary,
3347
3443
  zIndex: 2,
3348
- "&:hover": { backgroundColor: import_tokens33.tokens.colors.white, transform: "scale(1.1)" }
3444
+ "&:hover": { backgroundColor: import_tokens34.tokens.colors.white, transform: "scale(1.1)" }
3349
3445
  },
3350
3446
  children: isLiked ? /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_Favorite.default, { sx: { fontSize: 18 } }) : /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_FavoriteBorder.default, { sx: { fontSize: 18 } })
3351
3447
  }
@@ -3372,8 +3468,8 @@ function ListingCard({
3372
3468
  sx: {
3373
3469
  width: activeImage === i ? 12 : 6,
3374
3470
  height: 6,
3375
- borderRadius: import_tokens33.tokens.radius.full,
3376
- backgroundColor: import_tokens33.tokens.colors.white,
3471
+ borderRadius: import_tokens34.tokens.radius.full,
3472
+ backgroundColor: import_tokens34.tokens.colors.white,
3377
3473
  opacity: activeImage === i ? 1 : 0.5,
3378
3474
  transition: "all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1)",
3379
3475
  cursor: "pointer",
@@ -3388,13 +3484,13 @@ function ListingCard({
3388
3484
  /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(import_Box26.default, { sx: { p: 2.5 }, children: [
3389
3485
  " ",
3390
3486
  /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3391
- import_Typography18.default,
3487
+ import_Typography19.default,
3392
3488
  {
3393
3489
  sx: {
3394
- fontSize: import_tokens33.tokens.typography.fontSizes.base,
3490
+ fontSize: import_tokens34.tokens.typography.fontSizes.base,
3395
3491
  fontWeight: 800,
3396
- color: import_tokens33.tokens.colors.textPrimary,
3397
- fontFamily: import_tokens33.tokens.typography.fontFamily,
3492
+ color: import_tokens34.tokens.colors.textPrimary,
3493
+ fontFamily: import_tokens34.tokens.typography.fontFamily,
3398
3494
  lineHeight: 1.2,
3399
3495
  mb: 0.5,
3400
3496
  whiteSpace: "nowrap",
@@ -3405,12 +3501,12 @@ function ListingCard({
3405
3501
  }
3406
3502
  ),
3407
3503
  (brand || size) && /* @__PURE__ */ (0, import_jsx_runtime34.jsxs)(
3408
- import_Typography18.default,
3504
+ import_Typography19.default,
3409
3505
  {
3410
3506
  sx: {
3411
- fontSize: import_tokens33.tokens.typography.fontSizes.xs,
3412
- color: import_tokens33.tokens.colors.textSecondary,
3413
- fontFamily: import_tokens33.tokens.typography.fontFamily,
3507
+ fontSize: import_tokens34.tokens.typography.fontSizes.xs,
3508
+ color: import_tokens34.tokens.colors.textSecondary,
3509
+ fontFamily: import_tokens34.tokens.typography.fontFamily,
3414
3510
  fontWeight: 600,
3415
3511
  mb: 2
3416
3512
  },
@@ -3426,29 +3522,29 @@ function ListingCard({
3426
3522
  import_Box26.default,
3427
3523
  {
3428
3524
  sx: {
3429
- backgroundColor: import_tokens33.tokens.colors.background,
3525
+ backgroundColor: import_tokens34.tokens.colors.background,
3430
3526
  px: 1.5,
3431
3527
  py: 0.8,
3432
- borderRadius: import_tokens33.tokens.radius.full,
3433
- fontSize: import_tokens33.tokens.typography.fontSizes.base,
3528
+ borderRadius: import_tokens34.tokens.radius.full,
3529
+ fontSize: import_tokens34.tokens.typography.fontSizes.base,
3434
3530
  fontWeight: 800,
3435
- color: import_tokens33.tokens.colors.textPrimary,
3436
- fontFamily: import_tokens33.tokens.typography.fontFamily,
3531
+ color: import_tokens34.tokens.colors.textPrimary,
3532
+ fontFamily: import_tokens34.tokens.typography.fontFamily,
3437
3533
  display: "flex",
3438
3534
  alignItems: "baseline",
3439
3535
  gap: 0.5
3440
3536
  },
3441
3537
  children: [
3442
- /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_Typography18.default, { component: "span", sx: { fontSize: 10, fontWeight: 900 }, children: "KES" }),
3538
+ /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_Typography19.default, { component: "span", sx: { fontSize: 10, fontWeight: 900 }, children: "KES" }),
3443
3539
  price.toLocaleString(),
3444
3540
  originalPrice && /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(
3445
- import_Typography18.default,
3541
+ import_Typography19.default,
3446
3542
  {
3447
3543
  component: "span",
3448
3544
  sx: {
3449
3545
  ml: 0.5,
3450
3546
  fontSize: 10,
3451
- color: import_tokens33.tokens.colors.textDisabled,
3547
+ color: import_tokens34.tokens.colors.textDisabled,
3452
3548
  textDecoration: "line-through",
3453
3549
  fontWeight: 600
3454
3550
  },
@@ -3468,7 +3564,7 @@ function ListingCard({
3468
3564
  icon: /* @__PURE__ */ (0, import_jsx_runtime34.jsx)(import_ArrowOutward.default, { sx: { fontSize: 16 } }),
3469
3565
  iconPosition: "right",
3470
3566
  sx: {
3471
- borderRadius: import_tokens33.tokens.radius.full,
3567
+ borderRadius: import_tokens34.tokens.radius.full,
3472
3568
  px: 2.5,
3473
3569
  height: 32,
3474
3570
  // Forced small height for density
@@ -3486,7 +3582,7 @@ function ListingCard({
3486
3582
 
3487
3583
  // src/components/listing/ListingCardSkeleton/ListingCardSkeleton.tsx
3488
3584
  var import_Box27 = __toESM(require("@mui/material/Box"));
3489
- var import_tokens34 = require("@mitumba/tokens");
3585
+ var import_tokens35 = require("@mitumba/tokens");
3490
3586
  var import_jsx_runtime35 = require("react/jsx-runtime");
3491
3587
  function ListingCardSkeleton() {
3492
3588
  return /* @__PURE__ */ (0, import_jsx_runtime35.jsxs)(
@@ -3494,8 +3590,8 @@ function ListingCardSkeleton() {
3494
3590
  {
3495
3591
  sx: {
3496
3592
  width: "100%",
3497
- backgroundColor: import_tokens34.tokens.colors.surface,
3498
- borderRadius: `${import_tokens34.tokens.radius.lg}px`,
3593
+ backgroundColor: import_tokens35.tokens.colors.surface,
3594
+ borderRadius: `${import_tokens35.tokens.radius.lg}px`,
3499
3595
  // 16px (Serious Standard)
3500
3596
  overflow: "hidden",
3501
3597
  boxShadow: `
@@ -3589,7 +3685,7 @@ function ListingGrid({
3589
3685
  // src/components/listing/ListingImageGallery/ListingImageGallery.tsx
3590
3686
  var import_react13 = require("react");
3591
3687
  var import_Box29 = __toESM(require("@mui/material/Box"));
3592
- var import_tokens35 = require("@mitumba/tokens");
3688
+ var import_tokens36 = require("@mitumba/tokens");
3593
3689
  var import_jsx_runtime37 = require("react/jsx-runtime");
3594
3690
  function ListingImageGallery({ images, title }) {
3595
3691
  const [activeIndex, setActiveIndex] = (0, import_react13.useState)(0);
@@ -3623,14 +3719,14 @@ function ListingImageGallery({ images, title }) {
3623
3719
  sx: {
3624
3720
  alignItems: "center",
3625
3721
  aspectRatio: "1 / 1",
3626
- backgroundColor: import_tokens35.tokens.colors.background,
3627
- borderRadius: `${import_tokens35.tokens.radius.lg}px`,
3628
- color: import_tokens35.tokens.colors.textSecondary,
3722
+ backgroundColor: import_tokens36.tokens.colors.background,
3723
+ borderRadius: `${import_tokens36.tokens.radius.lg}px`,
3724
+ color: import_tokens36.tokens.colors.textSecondary,
3629
3725
  display: "flex",
3630
- fontSize: import_tokens35.tokens.typography.fontSizes.base,
3726
+ fontSize: import_tokens36.tokens.typography.fontSizes.base,
3631
3727
  justifyContent: "center",
3632
3728
  width: "100%",
3633
- border: `1px dashed ${import_tokens35.tokens.colors.divider}`
3729
+ border: `1px dashed ${import_tokens36.tokens.colors.divider}`
3634
3730
  },
3635
3731
  children: "No images available"
3636
3732
  }
@@ -3642,7 +3738,7 @@ function ListingImageGallery({ images, title }) {
3642
3738
  sx: {
3643
3739
  display: "flex",
3644
3740
  flexDirection: "column",
3645
- gap: import_tokens35.tokens.spacing.base,
3741
+ gap: import_tokens36.tokens.spacing.base,
3646
3742
  width: "100%"
3647
3743
  },
3648
3744
  children: [
@@ -3651,11 +3747,11 @@ function ListingImageGallery({ images, title }) {
3651
3747
  {
3652
3748
  sx: {
3653
3749
  aspectRatio: "1 / 1",
3654
- borderRadius: `${import_tokens35.tokens.radius.lg}px`,
3750
+ borderRadius: `${import_tokens36.tokens.radius.lg}px`,
3655
3751
  overflow: "hidden",
3656
3752
  position: "relative",
3657
3753
  width: "100%",
3658
- backgroundColor: import_tokens35.tokens.colors.background,
3754
+ backgroundColor: import_tokens36.tokens.colors.background,
3659
3755
  boxShadow: `
3660
3756
  0 2px 4px 0 rgba(0, 0, 0, 0.05),
3661
3757
  0 8px 16px -4px rgba(0, 0, 0, 0.1)
@@ -3703,8 +3799,8 @@ function ListingImageGallery({ images, title }) {
3703
3799
  role: "button",
3704
3800
  tabIndex: 0,
3705
3801
  sx: {
3706
- border: index === activeIndex ? `2px solid ${import_tokens35.tokens.colors.green}` : `2px solid transparent`,
3707
- borderRadius: `${import_tokens35.tokens.radius.md}px`,
3802
+ border: index === activeIndex ? `2px solid ${import_tokens36.tokens.colors.green}` : `2px solid transparent`,
3803
+ borderRadius: `${import_tokens36.tokens.radius.md}px`,
3708
3804
  cursor: "pointer",
3709
3805
  flexShrink: 0,
3710
3806
  height: 56,
@@ -3719,7 +3815,7 @@ function ListingImageGallery({ images, title }) {
3719
3815
  },
3720
3816
  "&:focus-visible": {
3721
3817
  outline: "none",
3722
- boxShadow: import_tokens35.tokens.shadows.focus
3818
+ boxShadow: import_tokens36.tokens.shadows.focus
3723
3819
  }
3724
3820
  },
3725
3821
  "aria-label": `View image ${index + 1} of ${images.length}`,
@@ -3770,33 +3866,33 @@ function ConditionBadge({ grade, showLabel = false }) {
3770
3866
  }
3771
3867
 
3772
3868
  // src/components/commerce/PriceTag/PriceTag.tsx
3773
- var import_Typography19 = __toESM(require("@mui/material/Typography"));
3774
- var import_tokens36 = require("@mitumba/tokens");
3869
+ var import_Typography20 = __toESM(require("@mui/material/Typography"));
3870
+ var import_tokens37 = require("@mitumba/tokens");
3775
3871
  var import_jsx_runtime39 = require("react/jsx-runtime");
3776
3872
  function PriceTag({ priceKes, size = "medium", color = "default", strikethrough = false }) {
3777
3873
  const formattedNumber = new Intl.NumberFormat("en-KE").format(priceKes);
3778
3874
  const formatted = `KES ${formattedNumber}`;
3779
3875
  const sizeStyles = {
3780
3876
  small: {
3781
- fontSize: import_tokens36.tokens.typography.fontSizes.sm,
3782
- fontWeight: import_tokens36.tokens.typography.fontWeights.semibold
3877
+ fontSize: import_tokens37.tokens.typography.fontSizes.sm,
3878
+ fontWeight: import_tokens37.tokens.typography.fontWeights.semibold
3783
3879
  },
3784
3880
  medium: {
3785
- fontSize: import_tokens36.tokens.typography.fontSizes.base,
3786
- fontWeight: import_tokens36.tokens.typography.fontWeights.bold
3881
+ fontSize: import_tokens37.tokens.typography.fontSizes.base,
3882
+ fontWeight: import_tokens37.tokens.typography.fontWeights.bold
3787
3883
  },
3788
3884
  large: {
3789
- fontSize: import_tokens36.tokens.typography.fontSizes.xl,
3790
- fontWeight: import_tokens36.tokens.typography.fontWeights.extrabold
3885
+ fontSize: import_tokens37.tokens.typography.fontSizes.xl,
3886
+ fontWeight: import_tokens37.tokens.typography.fontWeights.extrabold
3791
3887
  }
3792
3888
  };
3793
3889
  const colorMap = {
3794
- green: import_tokens36.tokens.colors.green,
3795
- earth: import_tokens36.tokens.colors.earth,
3796
- default: import_tokens36.tokens.colors.textPrimary
3890
+ green: import_tokens37.tokens.colors.green,
3891
+ earth: import_tokens37.tokens.colors.earth,
3892
+ default: import_tokens37.tokens.colors.textPrimary
3797
3893
  };
3798
3894
  return /* @__PURE__ */ (0, import_jsx_runtime39.jsx)(
3799
- import_Typography19.default,
3895
+ import_Typography20.default,
3800
3896
  {
3801
3897
  component: "span",
3802
3898
  sx: {
@@ -3834,11 +3930,11 @@ function DeliveryBadge({ type, estimatedDays }) {
3834
3930
 
3835
3931
  // src/components/commerce/CartItem/CartItem.tsx
3836
3932
  var import_Box30 = __toESM(require("@mui/material/Box"));
3837
- var import_Typography20 = __toESM(require("@mui/material/Typography"));
3933
+ var import_Typography21 = __toESM(require("@mui/material/Typography"));
3838
3934
  var import_IconButton7 = __toESM(require("@mui/material/IconButton"));
3839
3935
  var import_Close4 = __toESM(require("@mui/icons-material/Close"));
3840
3936
  var import_Stack5 = __toESM(require("@mui/material/Stack"));
3841
- var import_tokens37 = require("@mitumba/tokens");
3937
+ var import_tokens38 = require("@mitumba/tokens");
3842
3938
  var import_jsx_runtime41 = require("react/jsx-runtime");
3843
3939
  function CartItem({
3844
3940
  imageUrl,
@@ -3860,8 +3956,8 @@ function CartItem({
3860
3956
  {
3861
3957
  display: "flex",
3862
3958
  width: "100%",
3863
- backgroundColor: import_tokens37.tokens.colors.surface,
3864
- borderRadius: `${import_tokens37.tokens.radius.lg}px`,
3959
+ backgroundColor: import_tokens38.tokens.colors.surface,
3960
+ borderRadius: `${import_tokens38.tokens.radius.lg}px`,
3865
3961
  // 16px (Serious Standard)
3866
3962
  p: { xs: 2, md: 3 },
3867
3963
  boxShadow: `
@@ -3870,10 +3966,10 @@ function CartItem({
3870
3966
  `,
3871
3967
  transition: "all 0.3s cubic-bezier(0.34, 1.56, 0.64, 1)",
3872
3968
  position: "relative",
3873
- border: `1px solid ${import_tokens37.tokens.colors.divider}`,
3969
+ border: `1px solid ${import_tokens38.tokens.colors.divider}`,
3874
3970
  "&:hover": {
3875
3971
  transform: "translateY(-4px)",
3876
- boxShadow: import_tokens37.tokens.shadows.deep
3972
+ boxShadow: import_tokens38.tokens.shadows.deep
3877
3973
  }
3878
3974
  },
3879
3975
  ...Array.isArray(sx) ? sx : [sx]
@@ -3885,9 +3981,9 @@ function CartItem({
3885
3981
  sx: {
3886
3982
  width: { xs: 80, sm: 120, md: 140 },
3887
3983
  height: { xs: 80, sm: 120, md: 140 },
3888
- borderRadius: `${import_tokens37.tokens.radius.md}px`,
3984
+ borderRadius: `${import_tokens38.tokens.radius.md}px`,
3889
3985
  overflow: "hidden",
3890
- backgroundColor: import_tokens37.tokens.colors.background,
3986
+ backgroundColor: import_tokens38.tokens.colors.background,
3891
3987
  flexShrink: 0
3892
3988
  },
3893
3989
  children: /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
@@ -3916,13 +4012,13 @@ function CartItem({
3916
4012
  children: [
3917
4013
  /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_Box30.default, { sx: { flex: 1.5 }, children: [
3918
4014
  /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3919
- import_Typography20.default,
4015
+ import_Typography21.default,
3920
4016
  {
3921
4017
  sx: {
3922
- fontSize: import_tokens37.tokens.typography.fontSizes.lg,
4018
+ fontSize: import_tokens38.tokens.typography.fontSizes.lg,
3923
4019
  fontWeight: 900,
3924
- color: import_tokens37.tokens.colors.textPrimary,
3925
- fontFamily: import_tokens37.tokens.typography.fontFamily,
4020
+ color: import_tokens38.tokens.colors.textPrimary,
4021
+ fontFamily: import_tokens38.tokens.typography.fontFamily,
3926
4022
  textTransform: "uppercase",
3927
4023
  lineHeight: 1.1,
3928
4024
  mb: 0.5
@@ -3931,12 +4027,12 @@ function CartItem({
3931
4027
  }
3932
4028
  ),
3933
4029
  subtitle && /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3934
- import_Typography20.default,
4030
+ import_Typography21.default,
3935
4031
  {
3936
4032
  variant: "caption",
3937
4033
  sx: {
3938
4034
  display: "block",
3939
- color: import_tokens37.tokens.colors.textSecondary,
4035
+ color: import_tokens38.tokens.colors.textSecondary,
3940
4036
  fontWeight: 700,
3941
4037
  textTransform: "uppercase",
3942
4038
  fontSize: 10
@@ -3945,12 +4041,12 @@ function CartItem({
3945
4041
  }
3946
4042
  ),
3947
4043
  /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3948
- import_Typography20.default,
4044
+ import_Typography21.default,
3949
4045
  {
3950
4046
  variant: "caption",
3951
4047
  sx: {
3952
4048
  display: "block",
3953
- color: import_tokens37.tokens.colors.green,
4049
+ color: import_tokens38.tokens.colors.green,
3954
4050
  fontWeight: 800,
3955
4051
  fontSize: 9,
3956
4052
  mt: 1,
@@ -3963,7 +4059,7 @@ function CartItem({
3963
4059
  ] }),
3964
4060
  /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_Stack5.default, { direction: "row", spacing: { xs: 2, sm: 4, md: 6 }, alignItems: "center", sx: { width: { xs: "100%", lg: "auto" } }, children: [
3965
4061
  /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_Box30.default, { sx: { width: 80 }, children: [
3966
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_Typography20.default, { variant: "caption", sx: { display: "block", mb: 1.5, fontWeight: 700, color: import_tokens37.tokens.colors.textDisabled, fontSize: 10 }, children: "SIZE" }),
4062
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_Typography21.default, { variant: "caption", sx: { display: "block", mb: 1.5, fontWeight: 700, color: import_tokens38.tokens.colors.textDisabled, fontSize: 10 }, children: "SIZE" }),
3967
4063
  /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3968
4064
  MitumbaSelect,
3969
4065
  {
@@ -3977,7 +4073,7 @@ function CartItem({
3977
4073
  )
3978
4074
  ] }),
3979
4075
  /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_Box30.default, { sx: { width: 80 }, children: [
3980
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_Typography20.default, { variant: "caption", sx: { display: "block", mb: 1.5, fontWeight: 700, color: import_tokens37.tokens.colors.textDisabled, fontSize: 10 }, children: "QUANTITY" }),
4076
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_Typography21.default, { variant: "caption", sx: { display: "block", mb: 1.5, fontWeight: 700, color: import_tokens38.tokens.colors.textDisabled, fontSize: 10 }, children: "QUANTITY" }),
3981
4077
  /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(
3982
4078
  MitumbaSelect,
3983
4079
  {
@@ -3991,8 +4087,8 @@ function CartItem({
3991
4087
  )
3992
4088
  ] }),
3993
4089
  /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_Box30.default, { sx: { textAlign: "right", minWidth: 100 }, children: [
3994
- /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_Typography20.default, { variant: "caption", sx: { display: "block", mb: 1.5, fontWeight: 700, color: import_tokens37.tokens.colors.textDisabled, fontSize: 10 }, children: "PRICE" }),
3995
- /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_Typography20.default, { sx: { fontWeight: 900, color: import_tokens37.tokens.colors.textPrimary, fontSize: import_tokens37.tokens.typography.fontSizes.base, fontFamily: import_tokens37.tokens.typography.fontFamily }, children: [
4090
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsx)(import_Typography21.default, { variant: "caption", sx: { display: "block", mb: 1.5, fontWeight: 700, color: import_tokens38.tokens.colors.textDisabled, fontSize: 10 }, children: "PRICE" }),
4091
+ /* @__PURE__ */ (0, import_jsx_runtime41.jsxs)(import_Typography21.default, { sx: { fontWeight: 900, color: import_tokens38.tokens.colors.textPrimary, fontSize: import_tokens38.tokens.typography.fontSizes.base, fontFamily: import_tokens38.tokens.typography.fontFamily }, children: [
3996
4092
  "KES ",
3997
4093
  priceKes.toLocaleString()
3998
4094
  ] })
@@ -4009,10 +4105,10 @@ function CartItem({
4009
4105
  position: "absolute",
4010
4106
  top: 8,
4011
4107
  right: 8,
4012
- color: import_tokens37.tokens.colors.textDisabled,
4108
+ color: import_tokens38.tokens.colors.textDisabled,
4013
4109
  "&:hover": {
4014
- color: import_tokens37.tokens.colors.error,
4015
- backgroundColor: import_tokens37.tokens.colors.errorLight,
4110
+ color: import_tokens38.tokens.colors.error,
4111
+ backgroundColor: import_tokens38.tokens.colors.errorLight,
4016
4112
  transform: "rotate(90deg)"
4017
4113
  },
4018
4114
  transition: "all 0.3s ease"
@@ -4028,10 +4124,10 @@ function CartItem({
4028
4124
 
4029
4125
  // src/components/commerce/OrderStatusTimeline/OrderStatusTimeline.tsx
4030
4126
  var import_Box31 = __toESM(require("@mui/material/Box"));
4031
- var import_Typography21 = __toESM(require("@mui/material/Typography"));
4127
+ var import_Typography22 = __toESM(require("@mui/material/Typography"));
4032
4128
  var import_CheckCircleOutlined = __toESM(require("@mui/icons-material/CheckCircleOutlined"));
4033
4129
  var import_RadioButtonUncheckedOutlined = __toESM(require("@mui/icons-material/RadioButtonUncheckedOutlined"));
4034
- var import_tokens38 = require("@mitumba/tokens");
4130
+ var import_tokens39 = require("@mitumba/tokens");
4035
4131
  var import_jsx_runtime42 = require("react/jsx-runtime");
4036
4132
  var ORDER_STATUS_ORDER = [
4037
4133
  "CREATED",
@@ -4061,22 +4157,22 @@ function OrderStatusTimeline({ currentStatus, events }) {
4061
4157
  import_Box31.default,
4062
4158
  {
4063
4159
  sx: {
4064
- p: import_tokens38.tokens.spacing.base,
4065
- borderRadius: import_tokens38.tokens.radius.lg,
4066
- bgcolor: import_tokens38.tokens.colors.surface,
4067
- boxShadow: import_tokens38.tokens.shadows.card,
4068
- border: `1px solid ${import_tokens38.tokens.colors.divider}`
4160
+ p: import_tokens39.tokens.spacing.base,
4161
+ borderRadius: import_tokens39.tokens.radius.lg,
4162
+ bgcolor: import_tokens39.tokens.colors.surface,
4163
+ boxShadow: import_tokens39.tokens.shadows.card,
4164
+ border: `1px solid ${import_tokens39.tokens.colors.divider}`
4069
4165
  },
4070
4166
  children: [
4071
- /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_Box31.default, { sx: { display: "flex", alignItems: "center", gap: import_tokens38.tokens.spacing.sm, mb: import_tokens38.tokens.spacing.base }, children: [
4167
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_Box31.default, { sx: { display: "flex", alignItems: "center", gap: import_tokens39.tokens.spacing.sm, mb: import_tokens39.tokens.spacing.base }, children: [
4072
4168
  /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
4073
- import_Typography21.default,
4169
+ import_Typography22.default,
4074
4170
  {
4075
4171
  sx: {
4076
- fontWeight: import_tokens38.tokens.typography.fontWeights.bold,
4077
- fontSize: import_tokens38.tokens.typography.fontSizes.md,
4078
- color: import_tokens38.tokens.colors.textPrimary,
4079
- fontFamily: import_tokens38.tokens.typography.fontFamily
4172
+ fontWeight: import_tokens39.tokens.typography.fontWeights.bold,
4173
+ fontSize: import_tokens39.tokens.typography.fontSizes.md,
4174
+ color: import_tokens39.tokens.colors.textPrimary,
4175
+ fontFamily: import_tokens39.tokens.typography.fontFamily
4080
4176
  },
4081
4177
  children: "Order Tracking"
4082
4178
  }
@@ -4085,15 +4181,15 @@ function OrderStatusTimeline({ currentStatus, events }) {
4085
4181
  import_Box31.default,
4086
4182
  {
4087
4183
  sx: {
4088
- px: import_tokens38.tokens.spacing.sm,
4184
+ px: import_tokens39.tokens.spacing.sm,
4089
4185
  py: "2px",
4090
- borderRadius: import_tokens38.tokens.radius.sm,
4091
- bgcolor: import_tokens38.tokens.colors.greenLight,
4092
- color: import_tokens38.tokens.colors.greenDark,
4186
+ borderRadius: import_tokens39.tokens.radius.sm,
4187
+ bgcolor: import_tokens39.tokens.colors.greenLight,
4188
+ color: import_tokens39.tokens.colors.greenDark,
4093
4189
  fontSize: 10,
4094
- fontWeight: import_tokens38.tokens.typography.fontWeights.extrabold,
4190
+ fontWeight: import_tokens39.tokens.typography.fontWeights.extrabold,
4095
4191
  textTransform: "uppercase",
4096
- letterSpacing: import_tokens38.tokens.typography.letterSpacings.wide
4192
+ letterSpacing: import_tokens39.tokens.typography.letterSpacings.wide
4097
4193
  },
4098
4194
  children: ORDER_STATUS_LABELS[currentStatus]
4099
4195
  }
@@ -4103,19 +4199,19 @@ function OrderStatusTimeline({ currentStatus, events }) {
4103
4199
  import_Box31.default,
4104
4200
  {
4105
4201
  sx: {
4106
- p: import_tokens38.tokens.spacing.sm,
4107
- borderRadius: import_tokens38.tokens.radius.sm,
4108
- bgcolor: import_tokens38.tokens.colors.background,
4109
- borderLeft: `3px solid ${import_tokens38.tokens.colors.info}`,
4110
- mb: import_tokens38.tokens.spacing.lg
4202
+ p: import_tokens39.tokens.spacing.sm,
4203
+ borderRadius: import_tokens39.tokens.radius.sm,
4204
+ bgcolor: import_tokens39.tokens.colors.background,
4205
+ borderLeft: `3px solid ${import_tokens39.tokens.colors.info}`,
4206
+ mb: import_tokens39.tokens.spacing.lg
4111
4207
  },
4112
4208
  children: /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(
4113
- import_Typography21.default,
4209
+ import_Typography22.default,
4114
4210
  {
4115
4211
  sx: {
4116
- color: import_tokens38.tokens.colors.textPrimary,
4117
- fontSize: import_tokens38.tokens.typography.fontSizes.sm,
4118
- fontFamily: import_tokens38.tokens.typography.fontFamily,
4212
+ color: import_tokens39.tokens.colors.textPrimary,
4213
+ fontSize: import_tokens39.tokens.typography.fontSizes.sm,
4214
+ fontFamily: import_tokens39.tokens.typography.fontFamily,
4119
4215
  fontStyle: "italic"
4120
4216
  },
4121
4217
  children: [
@@ -4139,7 +4235,7 @@ function OrderStatusTimeline({ currentStatus, events }) {
4139
4235
  sx: {
4140
4236
  display: "flex",
4141
4237
  alignItems: "flex-start",
4142
- gap: import_tokens38.tokens.spacing.base,
4238
+ gap: import_tokens39.tokens.spacing.base,
4143
4239
  position: "relative"
4144
4240
  },
4145
4241
  children: [
@@ -4163,14 +4259,14 @@ function OrderStatusTimeline({ currentStatus, events }) {
4163
4259
  width: "24px",
4164
4260
  height: "24px",
4165
4261
  zIndex: 1,
4166
- backgroundColor: import_tokens38.tokens.colors.surface
4262
+ backgroundColor: import_tokens39.tokens.colors.surface
4167
4263
  },
4168
4264
  children: isCompleted ? /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
4169
4265
  import_CheckCircleOutlined.default,
4170
4266
  {
4171
4267
  sx: {
4172
4268
  fontSize: 20,
4173
- color: isCurrent ? import_tokens38.tokens.colors.green : import_tokens38.tokens.colors.textDisabled
4269
+ color: isCurrent ? import_tokens39.tokens.colors.green : import_tokens39.tokens.colors.textDisabled
4174
4270
  }
4175
4271
  }
4176
4272
  ) : /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
@@ -4178,7 +4274,7 @@ function OrderStatusTimeline({ currentStatus, events }) {
4178
4274
  {
4179
4275
  sx: {
4180
4276
  fontSize: 18,
4181
- color: import_tokens38.tokens.colors.divider
4277
+ color: import_tokens39.tokens.colors.divider
4182
4278
  }
4183
4279
  }
4184
4280
  )
@@ -4190,8 +4286,8 @@ function OrderStatusTimeline({ currentStatus, events }) {
4190
4286
  sx: {
4191
4287
  width: "2px",
4192
4288
  flex: 1,
4193
- minHeight: import_tokens38.tokens.spacing.lg,
4194
- bgcolor: index < currentIndex ? import_tokens38.tokens.colors.green : import_tokens38.tokens.colors.divider,
4289
+ minHeight: import_tokens39.tokens.spacing.lg,
4290
+ bgcolor: index < currentIndex ? import_tokens39.tokens.colors.green : import_tokens39.tokens.colors.divider,
4195
4291
  marginBlock: "2px"
4196
4292
  }
4197
4293
  }
@@ -4199,27 +4295,27 @@ function OrderStatusTimeline({ currentStatus, events }) {
4199
4295
  ]
4200
4296
  }
4201
4297
  ),
4202
- /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_Box31.default, { sx: { pt: "2px", pb: import_tokens38.tokens.spacing.lg }, children: [
4298
+ /* @__PURE__ */ (0, import_jsx_runtime42.jsxs)(import_Box31.default, { sx: { pt: "2px", pb: import_tokens39.tokens.spacing.lg }, children: [
4203
4299
  /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
4204
- import_Typography21.default,
4300
+ import_Typography22.default,
4205
4301
  {
4206
4302
  sx: {
4207
- fontWeight: isCurrent ? import_tokens38.tokens.typography.fontWeights.bold : import_tokens38.tokens.typography.fontWeights.medium,
4208
- fontSize: import_tokens38.tokens.typography.fontSizes.sm,
4209
- fontFamily: import_tokens38.tokens.typography.fontFamily,
4210
- color: isCompleted ? import_tokens38.tokens.colors.textPrimary : import_tokens38.tokens.colors.textDisabled,
4303
+ fontWeight: isCurrent ? import_tokens39.tokens.typography.fontWeights.bold : import_tokens39.tokens.typography.fontWeights.medium,
4304
+ fontSize: import_tokens39.tokens.typography.fontSizes.sm,
4305
+ fontFamily: import_tokens39.tokens.typography.fontFamily,
4306
+ color: isCompleted ? import_tokens39.tokens.colors.textPrimary : import_tokens39.tokens.colors.textDisabled,
4211
4307
  lineHeight: 1
4212
4308
  },
4213
4309
  children: ORDER_STATUS_LABELS[status]
4214
4310
  }
4215
4311
  ),
4216
4312
  latestEvent && /* @__PURE__ */ (0, import_jsx_runtime42.jsx)(
4217
- import_Typography21.default,
4313
+ import_Typography22.default,
4218
4314
  {
4219
4315
  sx: {
4220
- color: import_tokens38.tokens.colors.textSecondary,
4316
+ color: import_tokens39.tokens.colors.textSecondary,
4221
4317
  fontSize: 10,
4222
- fontFamily: import_tokens38.tokens.typography.fontFamily,
4318
+ fontFamily: import_tokens39.tokens.typography.fontFamily,
4223
4319
  mt: "4px"
4224
4320
  },
4225
4321
  children: latestEvent.timestamp
@@ -4291,12 +4387,13 @@ function EscrowStatusBanner({ status, amountKes = 0, hoursRemaining, sx }) {
4291
4387
  }
4292
4388
 
4293
4389
  // src/components/vazi/VAZIOutfitCard/VAZIOutfitCard.tsx
4294
- var import_Box32 = __toESM(require("@mui/material/Box"));
4295
- var import_Card = __toESM(require("@mui/material/Card"));
4296
- var import_CardContent = __toESM(require("@mui/material/CardContent"));
4297
- var import_Typography22 = __toESM(require("@mui/material/Typography"));
4298
- var import_tokens39 = require("@mitumba/tokens");
4299
4390
  var import_react14 = require("react");
4391
+ var import_Box32 = __toESM(require("@mui/material/Box"));
4392
+ var import_Typography23 = __toESM(require("@mui/material/Typography"));
4393
+ var import_Stack6 = __toESM(require("@mui/material/Stack"));
4394
+ var import_AutoAwesome3 = __toESM(require("@mui/icons-material/AutoAwesome"));
4395
+ var import_LocalShipping3 = __toESM(require("@mui/icons-material/LocalShipping"));
4396
+ var import_tokens40 = require("@mitumba/tokens");
4300
4397
  var import_jsx_runtime44 = require("react/jsx-runtime");
4301
4398
  function VAZIOutfitCard({
4302
4399
  outfitName,
@@ -4317,239 +4414,211 @@ function VAZIOutfitCard({
4317
4414
  [onTap]
4318
4415
  );
4319
4416
  return /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
4320
- import_Card.default,
4417
+ import_Box32.default,
4321
4418
  {
4322
4419
  onClick: onTap,
4323
4420
  onKeyDown: handleKeyDown,
4324
4421
  role: "button",
4325
4422
  tabIndex: onTap ? 0 : -1,
4326
4423
  sx: {
4327
- borderRadius: import_tokens39.tokens.radius.lg,
4328
- boxShadow: import_tokens39.tokens.shadows.card,
4424
+ width: "100%",
4425
+ position: "relative",
4329
4426
  cursor: onTap ? "pointer" : "default",
4330
- display: "flex",
4331
- flexDirection: "column",
4427
+ borderRadius: `${import_tokens40.tokens.radius.lg}px`,
4332
4428
  overflow: "hidden",
4333
- transition: "all 250ms cubic-bezier(0.4, 0, 0.2, 1)",
4334
- width: "100%",
4335
- backgroundColor: import_tokens39.tokens.colors.surface,
4336
- border: `1px solid ${import_tokens39.tokens.colors.divider}`,
4337
- "&:hover": onTap ? {
4338
- transform: "translateY(-4px)",
4339
- boxShadow: import_tokens39.tokens.shadows.elevated,
4340
- borderColor: import_tokens39.tokens.colors.earthLight
4341
- } : void 0,
4342
- "&:focus-visible": {
4343
- outline: `2px solid ${import_tokens39.tokens.colors.earthLight}`,
4344
- boxShadow: import_tokens39.tokens.shadows.focus
4429
+ backgroundColor: import_tokens40.tokens.colors.surface,
4430
+ boxShadow: `
4431
+ 0 4px 12px 0 rgba(0, 0, 0, 0.05),
4432
+ 0 12px 32px 0 rgba(31, 38, 135, 0.1)
4433
+ `,
4434
+ transition: "all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)",
4435
+ "&:hover": {
4436
+ transform: "translateY(-8px) scale(1.01)",
4437
+ boxShadow: import_tokens40.tokens.shadows.deep,
4438
+ "& .collage-image-2": { transform: "rotate(4deg) translate(8px, -4px)" },
4439
+ "& .collage-image-3": { transform: "rotate(-4deg) translate(-8px, -4px)" }
4345
4440
  }
4346
4441
  },
4347
4442
  children: [
4348
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
4349
- import_Box32.default,
4350
- {
4351
- sx: {
4352
- alignItems: "center",
4353
- display: "flex",
4354
- gap: import_tokens39.tokens.spacing.sm,
4355
- paddingInline: import_tokens39.tokens.spacing.base,
4356
- paddingBlock: import_tokens39.tokens.spacing.base,
4357
- borderBottom: `1px solid ${import_tokens39.tokens.colors.background}`
4358
- },
4359
- children: [
4360
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(VAZIBadge, { size: "small" }),
4361
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4362
- import_Typography22.default,
4363
- {
4364
- sx: {
4365
- color: import_tokens39.tokens.colors.textPrimary,
4366
- flex: 1,
4367
- fontSize: import_tokens39.tokens.typography.fontSizes.base,
4368
- fontWeight: import_tokens39.tokens.typography.fontWeights.bold,
4369
- lineHeight: import_tokens39.tokens.typography.lineHeights.snug,
4370
- overflow: "hidden",
4371
- textOverflow: "ellipsis",
4372
- whiteSpace: "nowrap"
4373
- },
4374
- children: outfitName
4375
- }
4376
- )
4377
- ]
4378
- }
4379
- ),
4380
4443
  /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4381
4444
  import_Box32.default,
4382
4445
  {
4383
4446
  sx: {
4384
- display: "flex",
4385
- gap: import_tokens39.tokens.spacing.sm,
4386
- overflowX: "auto",
4387
- padding: import_tokens39.tokens.spacing.base,
4388
- backgroundColor: import_tokens39.tokens.colors.background,
4389
- scrollbarWidth: "none",
4390
- msOverflowStyle: "none",
4391
- "&::-webkit-scrollbar": {
4392
- display: "none"
4393
- }
4447
+ position: "absolute",
4448
+ top: 12,
4449
+ left: 12,
4450
+ zIndex: 10
4394
4451
  },
4395
- children: items.map((item) => /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
4396
- import_Box32.default,
4397
- {
4398
- sx: {
4399
- flexShrink: 0,
4400
- width: "88px"
4401
- },
4402
- children: [
4403
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4404
- import_Box32.default,
4405
- {
4406
- sx: {
4407
- aspectRatio: "3 / 4",
4408
- borderRadius: import_tokens39.tokens.radius.sm,
4409
- overflow: "hidden",
4410
- width: "100%",
4411
- backgroundColor: import_tokens39.tokens.colors.surface,
4412
- border: `1px solid ${import_tokens39.tokens.colors.divider}`
4413
- },
4414
- children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4415
- import_Box32.default,
4416
- {
4417
- component: "img",
4418
- src: item.imageUrl,
4419
- alt: `${item.garmentType} \u2014 ${item.sellerName}`,
4420
- loading: "lazy",
4421
- sx: {
4422
- display: "block",
4423
- height: "100%",
4424
- objectFit: "cover",
4425
- width: "100%"
4426
- }
4427
- }
4428
- )
4429
- }
4430
- ),
4431
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4432
- import_Typography22.default,
4433
- {
4434
- sx: {
4435
- color: import_tokens39.tokens.colors.textSecondary,
4436
- fontSize: 10,
4437
- fontWeight: import_tokens39.tokens.typography.fontWeights.semibold,
4438
- textTransform: "uppercase",
4439
- letterSpacing: import_tokens39.tokens.typography.letterSpacings.wide,
4440
- marginTop: import_tokens39.tokens.spacing.xs,
4441
- overflow: "hidden",
4442
- textOverflow: "ellipsis",
4443
- whiteSpace: "nowrap",
4444
- textAlign: "center"
4445
- },
4446
- children: item.sellerName
4447
- }
4448
- )
4449
- ]
4450
- },
4451
- item.listingId
4452
- ))
4452
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(VAZIBadge, { size: "small" })
4453
4453
  }
4454
4454
  ),
4455
4455
  /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
4456
- import_CardContent.default,
4456
+ import_Box32.default,
4457
4457
  {
4458
4458
  sx: {
4459
+ position: "relative",
4460
+ width: "100%",
4461
+ height: 280,
4462
+ backgroundColor: import_tokens40.tokens.colors.background,
4459
4463
  display: "flex",
4460
- flexDirection: "column",
4461
- gap: import_tokens39.tokens.spacing.sm,
4462
- padding: import_tokens39.tokens.spacing.base,
4463
- "&:last-child": {
4464
- paddingBottom: import_tokens39.tokens.spacing.base
4465
- }
4464
+ alignItems: "center",
4465
+ justifyContent: "center",
4466
+ overflow: "hidden",
4467
+ p: 3
4466
4468
  },
4467
4469
  children: [
4468
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
4470
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4469
4471
  import_Box32.default,
4470
4472
  {
4471
4473
  sx: {
4472
- alignItems: "center",
4473
- display: "flex",
4474
- gap: import_tokens39.tokens.spacing.sm,
4475
- justifyContent: "space-between"
4476
- },
4477
- children: [
4478
- /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(PriceTag, { priceKes: totalPriceKes, size: "large", color: "earth" }),
4479
- onBuyAll && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Box32.default, { sx: { flexShrink: 0 }, children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4480
- MitumbaPrimaryButton,
4481
- {
4482
- label: "Buy all",
4483
- variant: "earth",
4484
- size: "small",
4485
- fullWidth: false,
4486
- onClick: (e) => {
4487
- if (e && e.stopPropagation) {
4488
- e.stopPropagation();
4489
- }
4490
- onBuyAll();
4491
- }
4492
- }
4493
- ) })
4494
- ]
4474
+ position: "absolute",
4475
+ inset: 0,
4476
+ background: "radial-gradient(circle at center, rgba(160, 98, 53, 0.05) 0%, rgba(255,255,255,0) 70%)",
4477
+ pointerEvents: "none"
4478
+ }
4495
4479
  }
4496
4480
  ),
4497
- sellersCount > 1 && /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
4498
- import_Box32.default,
4499
- {
4500
- sx: {
4501
- display: "flex",
4502
- alignItems: "center",
4503
- gap: import_tokens39.tokens.spacing.xs,
4504
- mt: import_tokens39.tokens.spacing.xs
4505
- },
4506
- children: [
4507
- /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
4508
- import_Typography22.default,
4509
- {
4510
- sx: {
4511
- color: import_tokens39.tokens.colors.textSecondary,
4512
- fontSize: import_tokens39.tokens.typography.fontSizes.sm,
4513
- lineHeight: 1
4514
- },
4515
- children: [
4516
- "Ships from ",
4517
- sellersCount,
4518
- " sellers"
4519
- ]
4520
- }
4521
- ),
4522
- isMultiCity && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4481
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Box32.default, { sx: { position: "relative", width: 140, height: 180 }, children: items.slice(0, 3).map((item, index) => {
4482
+ const isMain = index === 0;
4483
+ let rotation = 0;
4484
+ if (index === 1) rotation = -4;
4485
+ if (index === 2) rotation = 4;
4486
+ let leftOffset = 0;
4487
+ if (index === 1) leftOffset = -12;
4488
+ if (index === 2) leftOffset = 12;
4489
+ return /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4490
+ import_Box32.default,
4491
+ {
4492
+ className: `collage-image-${index + 1}`,
4493
+ sx: {
4494
+ position: "absolute",
4495
+ top: isMain ? 0 : 4,
4496
+ left: isMain ? 0 : leftOffset,
4497
+ width: "100%",
4498
+ height: "100%",
4499
+ borderRadius: `${import_tokens40.tokens.radius.md}px`,
4500
+ overflow: "hidden",
4501
+ zIndex: 3 - index,
4502
+ boxShadow: import_tokens40.tokens.shadows.card,
4503
+ border: `2px solid ${import_tokens40.tokens.colors.white}`,
4504
+ transform: `rotate(${rotation}deg)`,
4505
+ transition: "all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1)",
4506
+ backgroundColor: import_tokens40.tokens.colors.surface
4507
+ },
4508
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4523
4509
  import_Box32.default,
4524
4510
  {
4525
- component: "span",
4526
- sx: {
4527
- fontSize: import_tokens39.tokens.typography.fontSizes.xs,
4528
- color: import_tokens39.tokens.colors.textDisabled
4529
- },
4530
- children: "\u2022"
4531
- }
4532
- ),
4533
- isMultiCity && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4534
- import_Typography22.default,
4535
- {
4536
- sx: {
4537
- color: import_tokens39.tokens.colors.earth,
4538
- fontSize: import_tokens39.tokens.typography.fontSizes.xs,
4539
- fontWeight: import_tokens39.tokens.typography.fontWeights.bold,
4540
- textTransform: "uppercase",
4541
- letterSpacing: import_tokens39.tokens.typography.letterSpacings.wide,
4542
- lineHeight: 1
4543
- },
4544
- children: "Multi-city"
4511
+ component: "img",
4512
+ src: item.imageUrl,
4513
+ alt: item.garmentType,
4514
+ sx: { width: "100%", height: "100%", objectFit: "cover" }
4545
4515
  }
4546
4516
  )
4547
- ]
4517
+ },
4518
+ item.listingId
4519
+ );
4520
+ }) }),
4521
+ items.length > 3 && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4522
+ MitumbaGlass,
4523
+ {
4524
+ rounding: "full",
4525
+ opacity: 0.8,
4526
+ blur: 12,
4527
+ sx: {
4528
+ position: "absolute",
4529
+ bottom: 20,
4530
+ right: 20,
4531
+ px: 1.5,
4532
+ py: 0.5,
4533
+ zIndex: 5
4534
+ },
4535
+ children: /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_Typography23.default, { sx: { fontSize: 10, fontWeight: 900, color: import_tokens40.tokens.colors.earth }, children: [
4536
+ "+",
4537
+ items.length - 3,
4538
+ " MORE"
4539
+ ] })
4548
4540
  }
4549
4541
  )
4550
4542
  ]
4551
4543
  }
4552
- )
4544
+ ),
4545
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_Box32.default, { sx: { p: 2.5 }, children: [
4546
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4547
+ import_Typography23.default,
4548
+ {
4549
+ sx: {
4550
+ fontSize: import_tokens40.tokens.typography.fontSizes.lg,
4551
+ fontWeight: 900,
4552
+ color: import_tokens40.tokens.colors.textPrimary,
4553
+ fontFamily: import_tokens40.tokens.typography.fontFamily,
4554
+ lineHeight: 1.1,
4555
+ mb: 1,
4556
+ letterSpacing: "-0.01em"
4557
+ },
4558
+ children: outfitName
4559
+ }
4560
+ ),
4561
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_Stack6.default, { direction: "row", spacing: 1, alignItems: "center", sx: { mb: 2.5 }, children: [
4562
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(
4563
+ import_Typography23.default,
4564
+ {
4565
+ sx: {
4566
+ fontSize: 11,
4567
+ fontWeight: 700,
4568
+ color: import_tokens40.tokens.colors.textSecondary,
4569
+ textTransform: "uppercase",
4570
+ letterSpacing: "0.05em"
4571
+ },
4572
+ children: [
4573
+ sellersCount,
4574
+ " Sellers"
4575
+ ]
4576
+ }
4577
+ ),
4578
+ isMultiCity && /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_jsx_runtime44.Fragment, { children: [
4579
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Box32.default, { sx: { width: 4, height: 4, borderRadius: "50%", bgcolor: import_tokens40.tokens.colors.divider } }),
4580
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_Stack6.default, { direction: "row", spacing: 0.5, alignItems: "center", children: [
4581
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_LocalShipping3.default, { sx: { fontSize: 14, color: import_tokens40.tokens.colors.earth } }),
4582
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4583
+ import_Typography23.default,
4584
+ {
4585
+ sx: {
4586
+ fontSize: 10,
4587
+ fontWeight: 800,
4588
+ color: import_tokens40.tokens.colors.earth,
4589
+ textTransform: "uppercase"
4590
+ },
4591
+ children: "Multi-City"
4592
+ }
4593
+ )
4594
+ ] })
4595
+ ] })
4596
+ ] }),
4597
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_Stack6.default, { direction: "row", justifyContent: "space-between", alignItems: "center", children: [
4598
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_Box32.default, { children: [
4599
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_Typography23.default, { sx: { fontSize: 10, fontWeight: 800, color: import_tokens40.tokens.colors.textDisabled, textTransform: "uppercase", mb: 0.2 }, children: "Total Look" }),
4600
+ /* @__PURE__ */ (0, import_jsx_runtime44.jsxs)(import_Typography23.default, { sx: { fontSize: import_tokens40.tokens.typography.fontSizes.xl, fontWeight: 900, color: import_tokens40.tokens.colors.textPrimary, fontFamily: import_tokens40.tokens.typography.fontFamily }, children: [
4601
+ "KES ",
4602
+ totalPriceKes.toLocaleString()
4603
+ ] })
4604
+ ] }),
4605
+ onBuyAll && /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(
4606
+ MitumbaPrimaryButton,
4607
+ {
4608
+ label: "Buy entire look",
4609
+ variant: "earth",
4610
+ size: "small",
4611
+ icon: /* @__PURE__ */ (0, import_jsx_runtime44.jsx)(import_AutoAwesome3.default, { sx: { fontSize: 16 } }),
4612
+ iconPosition: "right",
4613
+ onClick: (e) => {
4614
+ e.stopPropagation();
4615
+ onBuyAll();
4616
+ },
4617
+ sx: { borderRadius: import_tokens40.tokens.radius.full, height: 36, px: 3 }
4618
+ }
4619
+ )
4620
+ ] })
4621
+ ] })
4553
4622
  ]
4554
4623
  }
4555
4624
  );
@@ -4557,175 +4626,99 @@ function VAZIOutfitCard({
4557
4626
 
4558
4627
  // src/components/vazi/VAZIOutfitCardSkeleton/VAZIOutfitCardSkeleton.tsx
4559
4628
  var import_Box33 = __toESM(require("@mui/material/Box"));
4560
- var import_Skeleton = __toESM(require("@mui/material/Skeleton"));
4561
- var import_tokens40 = require("@mitumba/tokens");
4629
+ var import_tokens41 = require("@mitumba/tokens");
4562
4630
  var import_jsx_runtime45 = require("react/jsx-runtime");
4563
- var SKELETON_IMAGE_KEYS = ["image-1", "image-2", "image-3", "image-4"];
4564
4631
  function VAZIOutfitCardSkeleton() {
4565
4632
  return /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
4566
4633
  import_Box33.default,
4567
4634
  {
4568
4635
  sx: {
4569
- borderRadius: import_tokens40.tokens.radius.lg,
4570
- boxShadow: import_tokens40.tokens.shadows.card,
4571
- display: "flex",
4572
- flexDirection: "column",
4636
+ borderRadius: `${import_tokens41.tokens.radius.lg}px`,
4573
4637
  overflow: "hidden",
4638
+ backgroundColor: import_tokens41.tokens.colors.surface,
4639
+ boxShadow: import_tokens41.tokens.shadows.card,
4574
4640
  width: "100%"
4575
4641
  },
4576
4642
  children: [
4577
- /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
4643
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4578
4644
  import_Box33.default,
4579
4645
  {
4580
4646
  sx: {
4581
- alignItems: "center",
4647
+ height: 280,
4648
+ backgroundColor: import_tokens41.tokens.colors.background,
4582
4649
  display: "flex",
4583
- gap: import_tokens40.tokens.spacing.sm,
4584
- paddingInline: import_tokens40.tokens.spacing.base,
4585
- paddingBlock: import_tokens40.tokens.spacing.base
4650
+ alignItems: "center",
4651
+ justifyContent: "center",
4652
+ position: "relative"
4586
4653
  },
4587
- children: [
4654
+ children: /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_Box33.default, { sx: { position: "relative", width: 140, height: 180 }, children: [
4588
4655
  /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4589
- import_Skeleton.default,
4656
+ MitumbaSkeleton,
4590
4657
  {
4591
- "aria-label": "Loading VAZI label",
4592
- variant: "rounded",
4658
+ variant: "rectangular",
4593
4659
  sx: {
4594
- borderRadius: import_tokens40.tokens.radius.sm,
4595
- height: import_tokens40.tokens.spacing.lg,
4596
- width: 48
4660
+ position: "absolute",
4661
+ inset: 0,
4662
+ borderRadius: 2,
4663
+ border: `2px solid ${import_tokens41.tokens.colors.white}`
4597
4664
  }
4598
4665
  }
4599
4666
  ),
4600
4667
  /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4601
- import_Skeleton.default,
4668
+ MitumbaSkeleton,
4602
4669
  {
4603
- "aria-label": "Loading outfit name",
4604
- variant: "text",
4670
+ variant: "rectangular",
4605
4671
  sx: {
4606
- flex: 1,
4607
- fontSize: import_tokens40.tokens.typography.fontSizes.base
4672
+ position: "absolute",
4673
+ top: 4,
4674
+ left: -12,
4675
+ width: "100%",
4676
+ height: "100%",
4677
+ borderRadius: 2,
4678
+ zIndex: -1,
4679
+ transform: "rotate(-4deg)",
4680
+ opacity: 0.5
4608
4681
  }
4609
4682
  }
4610
4683
  )
4611
- ]
4684
+ ] })
4612
4685
  }
4613
4686
  ),
4614
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4615
- import_Box33.default,
4616
- {
4617
- sx: {
4618
- display: "flex",
4619
- gap: import_tokens40.tokens.spacing.sm,
4620
- overflowX: "auto",
4621
- paddingInline: import_tokens40.tokens.spacing.base,
4622
- paddingBottom: import_tokens40.tokens.spacing.base,
4623
- scrollbarWidth: "none",
4624
- msOverflowStyle: "none",
4625
- "&::-webkit-scrollbar": {
4626
- display: "none"
4627
- }
4628
- },
4629
- children: SKELETON_IMAGE_KEYS.map((imgKey) => /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
4630
- import_Box33.default,
4687
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_Box33.default, { sx: { p: 2.5 }, children: [
4688
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4689
+ MitumbaSkeleton,
4690
+ {
4691
+ variant: "rectangular",
4692
+ width: "70%",
4693
+ height: 24,
4694
+ sx: { mb: 1, borderRadius: 1 }
4695
+ }
4696
+ ),
4697
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4698
+ MitumbaSkeleton,
4699
+ {
4700
+ variant: "rectangular",
4701
+ width: "40%",
4702
+ height: 12,
4703
+ sx: { mb: 3, borderRadius: 1 }
4704
+ }
4705
+ ),
4706
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_Box33.default, { sx: { display: "flex", alignItems: "center", justifyContent: "space-between" }, children: [
4707
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(import_Box33.default, { children: [
4708
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(MitumbaSkeleton, { variant: "rectangular", width: 60, height: 10, sx: { mb: 0.5, borderRadius: 0.5 } }),
4709
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(MitumbaSkeleton, { variant: "rectangular", width: 100, height: 28, sx: { borderRadius: 0.5 } })
4710
+ ] }),
4711
+ /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4712
+ MitumbaSkeleton,
4631
4713
  {
4632
- sx: {
4633
- flexShrink: 0,
4634
- width: `${3 / 4 * 100}px`,
4635
- minWidth: "88px"
4636
- },
4637
- children: [
4638
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4639
- import_Skeleton.default,
4640
- {
4641
- "aria-label": `Loading item image ${imgKey.split("-")[1]}`,
4642
- variant: "rounded",
4643
- sx: {
4644
- aspectRatio: "3 / 4",
4645
- borderRadius: import_tokens40.tokens.radius.md,
4646
- width: "100%"
4647
- }
4648
- }
4649
- ),
4650
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4651
- import_Skeleton.default,
4652
- {
4653
- "aria-label": `Loading seller name ${imgKey.split("-")[1]}`,
4654
- variant: "text",
4655
- sx: {
4656
- fontSize: import_tokens40.tokens.typography.fontSizes.xs,
4657
- marginTop: import_tokens40.tokens.spacing.xs,
4658
- width: "80%"
4659
- }
4660
- }
4661
- )
4662
- ]
4663
- },
4664
- imgKey
4665
- ))
4666
- }
4667
- ),
4668
- /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
4669
- import_Box33.default,
4670
- {
4671
- sx: {
4672
- display: "flex",
4673
- flexDirection: "column",
4674
- gap: import_tokens40.tokens.spacing.sm,
4675
- paddingInline: import_tokens40.tokens.spacing.base,
4676
- paddingBlock: import_tokens40.tokens.spacing.base
4677
- },
4678
- children: [
4679
- /* @__PURE__ */ (0, import_jsx_runtime45.jsxs)(
4680
- import_Box33.default,
4681
- {
4682
- sx: {
4683
- alignItems: "center",
4684
- display: "flex",
4685
- gap: import_tokens40.tokens.spacing.sm,
4686
- justifyContent: "space-between"
4687
- },
4688
- children: [
4689
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4690
- import_Skeleton.default,
4691
- {
4692
- "aria-label": "Loading total price",
4693
- variant: "text",
4694
- sx: {
4695
- fontSize: import_tokens40.tokens.typography.fontSizes.lg,
4696
- width: "40%"
4697
- }
4698
- }
4699
- ),
4700
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4701
- import_Skeleton.default,
4702
- {
4703
- "aria-label": "Loading buy button",
4704
- variant: "rounded",
4705
- sx: {
4706
- borderRadius: import_tokens40.tokens.radius.md,
4707
- height: "36px",
4708
- width: 100
4709
- }
4710
- }
4711
- )
4712
- ]
4713
- }
4714
- ),
4715
- /* @__PURE__ */ (0, import_jsx_runtime45.jsx)(
4716
- import_Skeleton.default,
4717
- {
4718
- "aria-label": "Loading seller info",
4719
- variant: "text",
4720
- sx: {
4721
- fontSize: import_tokens40.tokens.typography.fontSizes.sm,
4722
- width: "60%"
4723
- }
4724
- }
4725
- )
4726
- ]
4727
- }
4728
- )
4714
+ variant: "rounded",
4715
+ width: 120,
4716
+ height: 36,
4717
+ sx: { borderRadius: 100 }
4718
+ }
4719
+ )
4720
+ ] })
4721
+ ] })
4729
4722
  ]
4730
4723
  }
4731
4724
  );
@@ -4733,43 +4726,12 @@ function VAZIOutfitCardSkeleton() {
4733
4726
 
4734
4727
  // src/components/vazi/VAZIFeedSection/VAZIFeedSection.tsx
4735
4728
  var import_Box34 = __toESM(require("@mui/material/Box"));
4736
- var import_tokens41 = require("@mitumba/tokens");
4729
+ var import_Typography24 = __toESM(require("@mui/material/Typography"));
4730
+ var import_Stack7 = __toESM(require("@mui/material/Stack"));
4731
+ var import_AutoAwesome4 = __toESM(require("@mui/icons-material/AutoAwesome"));
4732
+ var import_ArrowForward = __toESM(require("@mui/icons-material/ArrowForward"));
4733
+ var import_tokens42 = require("@mitumba/tokens");
4737
4734
  var import_jsx_runtime46 = require("react/jsx-runtime");
4738
- var renderOutfitCards = (outfits) => outfits.map((outfit) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4739
- import_Box34.default,
4740
- {
4741
- sx: {
4742
- flexShrink: 0,
4743
- width: { xs: "82%", md: "100%" },
4744
- maxWidth: { xs: "340px", md: "none" }
4745
- },
4746
- children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4747
- VAZIOutfitCard,
4748
- {
4749
- outfitName: outfit.outfitName,
4750
- items: outfit.items,
4751
- totalPriceKes: outfit.totalPriceKes,
4752
- sellersCount: outfit.sellersCount,
4753
- isMultiCity: outfit.isMultiCity,
4754
- onTap: outfit.onTap,
4755
- onBuyAll: outfit.onBuyAll
4756
- }
4757
- )
4758
- },
4759
- outfit.outfitName
4760
- ));
4761
- var renderSkeletons = () => Array.from({ length: 3 }, (_, skeletonIdx) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4762
- import_Box34.default,
4763
- {
4764
- sx: {
4765
- flexShrink: 0,
4766
- width: { xs: "82%", md: "100%" },
4767
- maxWidth: { xs: "340px", md: "none" }
4768
- },
4769
- children: /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(VAZIOutfitCardSkeleton, {})
4770
- },
4771
- `skeleton-${skeletonIdx}`
4772
- ));
4773
4735
  function VAZIFeedSection({ outfits, loading = false, onSeeAll }) {
4774
4736
  return /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
4775
4737
  import_Box34.default,
@@ -4777,7 +4739,7 @@ function VAZIFeedSection({ outfits, loading = false, onSeeAll }) {
4777
4739
  sx: {
4778
4740
  display: "flex",
4779
4741
  flexDirection: "column",
4780
- gap: import_tokens41.tokens.spacing.base,
4742
+ gap: 4,
4781
4743
  width: "100%"
4782
4744
  },
4783
4745
  children: [
@@ -4785,80 +4747,94 @@ function VAZIFeedSection({ outfits, loading = false, onSeeAll }) {
4785
4747
  import_Box34.default,
4786
4748
  {
4787
4749
  sx: {
4788
- alignItems: "center",
4789
4750
  display: "flex",
4790
4751
  justifyContent: "space-between",
4791
- paddingInline: { xs: import_tokens41.tokens.spacing.base, md: 0 }
4752
+ alignItems: "flex-end",
4753
+ paddingInline: { xs: 2, md: 0 }
4792
4754
  },
4793
4755
  children: [
4794
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4795
- import_Box34.default,
4796
- {
4797
- component: "h2",
4798
- sx: {
4799
- color: import_tokens41.tokens.colors.textPrimary,
4800
- fontFamily: import_tokens41.tokens.typography.fontFamily,
4801
- fontSize: import_tokens41.tokens.typography.fontSizes.xl,
4802
- fontWeight: import_tokens41.tokens.typography.fontWeights.bold,
4803
- lineHeight: import_tokens41.tokens.typography.lineHeights.snug,
4804
- margin: 0
4805
- },
4806
- children: "VAZI Picks"
4807
- }
4808
- ),
4809
- onSeeAll && /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4756
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(import_Stack7.default, { spacing: 1, children: [
4757
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(import_Stack7.default, { direction: "row", spacing: 1, alignItems: "center", children: [
4758
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_AutoAwesome4.default, { sx: { fontSize: 18, color: import_tokens42.tokens.colors.earth } }),
4759
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4760
+ import_Typography24.default,
4761
+ {
4762
+ sx: {
4763
+ fontSize: 12,
4764
+ fontWeight: 900,
4765
+ color: import_tokens42.tokens.colors.earth,
4766
+ textTransform: "uppercase",
4767
+ letterSpacing: "0.1em"
4768
+ },
4769
+ children: "AI Curation"
4770
+ }
4771
+ )
4772
+ ] }),
4773
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4774
+ import_Typography24.default,
4775
+ {
4776
+ component: "h2",
4777
+ sx: {
4778
+ color: import_tokens42.tokens.colors.textPrimary,
4779
+ fontFamily: import_tokens42.tokens.typography.fontFamily,
4780
+ fontSize: import_tokens42.tokens.typography.fontSizes.xxl,
4781
+ fontWeight: 900,
4782
+ lineHeight: 1,
4783
+ margin: 0
4784
+ },
4785
+ children: "VAZI Picks for You"
4786
+ }
4787
+ )
4788
+ ] }),
4789
+ onSeeAll && /* @__PURE__ */ (0, import_jsx_runtime46.jsxs)(
4810
4790
  import_Box34.default,
4811
4791
  {
4812
- component: "button",
4813
4792
  onClick: onSeeAll,
4814
4793
  sx: {
4815
- backgroundColor: "transparent",
4816
- border: "none",
4817
- color: import_tokens41.tokens.colors.earth,
4794
+ display: "flex",
4795
+ alignItems: "center",
4796
+ gap: 1,
4797
+ color: import_tokens42.tokens.colors.earth,
4818
4798
  cursor: "pointer",
4819
- fontFamily: import_tokens41.tokens.typography.fontFamily,
4820
- fontSize: import_tokens41.tokens.typography.fontSizes.base,
4821
- fontWeight: import_tokens41.tokens.typography.fontWeights.semibold,
4822
- lineHeight: import_tokens41.tokens.typography.lineHeights.normal,
4823
- padding: 0,
4824
- textDecoration: "none",
4825
- transition: "color 200ms ease",
4826
- whiteSpace: "nowrap",
4799
+ transition: "all 0.3s ease",
4827
4800
  "&:hover": {
4828
- color: import_tokens41.tokens.colors.earthDark,
4829
- textDecoration: "underline"
4830
- },
4831
- "&:focus-visible": {
4832
- outline: `${import_tokens41.tokens.spacing.xs}px solid transparent`,
4833
- boxShadow: import_tokens41.tokens.shadows.focus,
4834
- borderRadius: import_tokens41.tokens.radius.sm
4801
+ gap: 1.5,
4802
+ color: import_tokens42.tokens.colors.earthDark
4835
4803
  }
4836
4804
  },
4837
- children: "See all"
4805
+ children: [
4806
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4807
+ import_Typography24.default,
4808
+ {
4809
+ sx: {
4810
+ fontSize: 12,
4811
+ fontWeight: 900,
4812
+ textTransform: "uppercase",
4813
+ letterSpacing: "0.05em"
4814
+ },
4815
+ children: "Explore All"
4816
+ }
4817
+ ),
4818
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(import_ArrowForward.default, { sx: { fontSize: 16 } })
4819
+ ]
4838
4820
  }
4839
4821
  )
4840
4822
  ]
4841
4823
  }
4842
4824
  ),
4843
- /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4844
- import_Box34.default,
4825
+ /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(MitumbaGrid, { columns: { xs: 1, sm: 2, md: 3, lg: 3 }, gap: 3, children: loading ? Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(VAZIOutfitCardSkeleton, {}, `vazi-skeleton-${i + 1}`)) : outfits.map((outfit) => /* @__PURE__ */ (0, import_jsx_runtime46.jsx)(
4826
+ VAZIOutfitCard,
4845
4827
  {
4846
- sx: {
4847
- display: { xs: "flex", md: "grid" },
4848
- gridTemplateColumns: { md: "repeat(3, 1fr)" },
4849
- gap: import_tokens41.tokens.spacing.base,
4850
- overflowX: { xs: "auto", md: "visible" },
4851
- paddingInline: { xs: import_tokens41.tokens.spacing.base, md: 0 },
4852
- paddingBottom: { xs: import_tokens41.tokens.spacing.sm, md: 0 },
4853
- scrollbarWidth: "none",
4854
- msOverflowStyle: "none",
4855
- "&::-webkit-scrollbar": {
4856
- display: "none"
4857
- }
4858
- },
4859
- children: loading ? renderSkeletons() : renderOutfitCards(outfits)
4860
- }
4861
- )
4828
+ outfitName: outfit.outfitName,
4829
+ items: outfit.items,
4830
+ totalPriceKes: outfit.totalPriceKes,
4831
+ sellersCount: outfit.sellersCount,
4832
+ isMultiCity: outfit.isMultiCity,
4833
+ onTap: outfit.onTap,
4834
+ onBuyAll: outfit.onBuyAll
4835
+ },
4836
+ outfit.outfitName
4837
+ )) })
4862
4838
  ]
4863
4839
  }
4864
4840
  );
@@ -4866,90 +4842,71 @@ function VAZIFeedSection({ outfits, loading = false, onSeeAll }) {
4866
4842
 
4867
4843
  // src/components/vazi/CompleteThisLookPanel/CompleteThisLookPanel.tsx
4868
4844
  var import_Box35 = __toESM(require("@mui/material/Box"));
4869
- var import_Typography23 = __toESM(require("@mui/material/Typography"));
4870
- var import_tokens42 = require("@mitumba/tokens");
4845
+ var import_Typography25 = __toESM(require("@mui/material/Typography"));
4846
+ var import_Stack8 = __toESM(require("@mui/material/Stack"));
4847
+ var import_AutoAwesome5 = __toESM(require("@mui/icons-material/AutoAwesome"));
4848
+ var import_tokens43 = require("@mitumba/tokens");
4871
4849
  var import_jsx_runtime47 = require("react/jsx-runtime");
4872
4850
  function CompleteThisLookPanel({ outfits, loading = false }) {
4873
4851
  if (!loading && outfits.length === 0) {
4874
4852
  return null;
4875
4853
  }
4876
- const renderOutfitCards2 = () => outfits.map((outfit) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4877
- import_Box35.default,
4878
- {
4879
- sx: {
4880
- flexShrink: 0,
4881
- width: { xs: "82%", md: "100%" },
4882
- maxWidth: { xs: "340px", md: "none" }
4883
- },
4884
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4885
- VAZIOutfitCard,
4886
- {
4887
- outfitName: outfit.outfitName,
4888
- items: outfit.items,
4889
- totalPriceKes: outfit.totalPriceKes,
4890
- sellersCount: outfit.sellersCount,
4891
- isMultiCity: outfit.isMultiCity,
4892
- onTap: outfit.onTap,
4893
- onBuyAll: outfit.onBuyAll
4894
- }
4895
- )
4896
- },
4897
- outfit.outfitName
4898
- ));
4899
- const renderSkeletons2 = () => ["skel-0", "skel-1", "skel-2"].map((skelKey) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4900
- import_Box35.default,
4901
- {
4902
- sx: {
4903
- flexShrink: 0,
4904
- width: { xs: "82%", md: "100%" },
4905
- maxWidth: { xs: "340px", md: "none" }
4906
- },
4907
- children: /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(VAZIOutfitCardSkeleton, {})
4908
- },
4909
- skelKey
4910
- ));
4911
4854
  return /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(
4912
4855
  import_Box35.default,
4913
4856
  {
4914
4857
  sx: {
4915
4858
  display: "flex",
4916
4859
  flexDirection: "column",
4917
- gap: import_tokens42.tokens.spacing.base,
4860
+ gap: 3,
4918
4861
  width: "100%"
4919
4862
  },
4920
4863
  children: [
4921
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4922
- import_Typography23.default,
4923
- {
4924
- component: "h2",
4925
- sx: {
4926
- color: import_tokens42.tokens.colors.textPrimary,
4927
- fontSize: import_tokens42.tokens.typography.fontSizes.xl,
4928
- fontWeight: import_tokens42.tokens.typography.fontWeights.bold,
4929
- lineHeight: import_tokens42.tokens.typography.lineHeights.snug,
4930
- margin: 0
4931
- },
4932
- children: "Complete this look"
4933
- }
4934
- ),
4935
- /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4936
- import_Box35.default,
4937
- {
4938
- sx: {
4939
- display: { xs: "flex", md: "grid" },
4940
- gridTemplateColumns: { md: "repeat(3, 1fr)" },
4941
- gap: import_tokens42.tokens.spacing.base,
4942
- overflowX: { xs: "auto", md: "visible" },
4943
- paddingBottom: { xs: import_tokens42.tokens.spacing.sm, md: 0 },
4944
- scrollbarWidth: "none",
4945
- msOverflowStyle: "none",
4946
- "&::-webkit-scrollbar": {
4947
- display: "none"
4864
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(import_Stack8.default, { spacing: 1, sx: { paddingInline: { xs: 2, md: 0 } }, children: [
4865
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsxs)(import_Stack8.default, { direction: "row", spacing: 1, alignItems: "center", children: [
4866
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(import_AutoAwesome5.default, { sx: { fontSize: 16, color: import_tokens43.tokens.colors.earth } }),
4867
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4868
+ import_Typography25.default,
4869
+ {
4870
+ sx: {
4871
+ fontSize: 11,
4872
+ fontWeight: 900,
4873
+ color: import_tokens43.tokens.colors.earth,
4874
+ textTransform: "uppercase",
4875
+ letterSpacing: "0.08em"
4876
+ },
4877
+ children: "AI Recommendations"
4948
4878
  }
4949
- },
4950
- children: loading ? renderSkeletons2() : renderOutfitCards2()
4951
- }
4952
- )
4879
+ )
4880
+ ] }),
4881
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4882
+ import_Typography25.default,
4883
+ {
4884
+ component: "h2",
4885
+ sx: {
4886
+ color: import_tokens43.tokens.colors.textPrimary,
4887
+ fontFamily: import_tokens43.tokens.typography.fontFamily,
4888
+ fontSize: import_tokens43.tokens.typography.fontSizes.xl,
4889
+ fontWeight: 900,
4890
+ lineHeight: 1,
4891
+ margin: 0
4892
+ },
4893
+ children: "Complete this look"
4894
+ }
4895
+ )
4896
+ ] }),
4897
+ /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(MitumbaGrid, { columns: { xs: 1, sm: 2, md: 3, lg: 3 }, gap: 3, children: loading ? Array.from({ length: 3 }).map((_, i) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(VAZIOutfitCardSkeleton, {}, `vazi-skel-${i + 1}`)) : outfits.map((outfit) => /* @__PURE__ */ (0, import_jsx_runtime47.jsx)(
4898
+ VAZIOutfitCard,
4899
+ {
4900
+ outfitName: outfit.outfitName,
4901
+ items: outfit.items,
4902
+ totalPriceKes: outfit.totalPriceKes,
4903
+ sellersCount: outfit.sellersCount,
4904
+ isMultiCity: outfit.isMultiCity,
4905
+ onTap: outfit.onTap,
4906
+ onBuyAll: outfit.onBuyAll
4907
+ },
4908
+ outfit.outfitName
4909
+ )) })
4953
4910
  ]
4954
4911
  }
4955
4912
  );
@@ -4961,7 +4918,7 @@ var import_styles3 = require("@mui/material/styles");
4961
4918
 
4962
4919
  // src/theme/theme.ts
4963
4920
  var import_styles2 = require("@mui/material/styles");
4964
- var import_tokens43 = require("@mitumba/tokens");
4921
+ var import_tokens44 = require("@mitumba/tokens");
4965
4922
  var transitions = {
4966
4923
  standard: "all 0.3s cubic-bezier(0.4, 0, 0.2, 1)",
4967
4924
  spring: "all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1)"
@@ -4970,86 +4927,86 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
4970
4927
  // Spacing factor 4px (Mandate)
4971
4928
  spacing: (factor) => `${factor * 4}px`,
4972
4929
  breakpoints: {
4973
- values: import_tokens43.tokens.breakpoints
4930
+ values: import_tokens44.tokens.breakpoints
4974
4931
  },
4975
4932
  palette: {
4976
4933
  mode: "light",
4977
4934
  primary: {
4978
- main: import_tokens43.tokens.colors.green,
4979
- light: import_tokens43.tokens.colors.greenLight,
4980
- dark: import_tokens43.tokens.colors.greenDark,
4981
- contrastText: import_tokens43.tokens.colors.textOnGreen
4935
+ main: import_tokens44.tokens.colors.green,
4936
+ light: import_tokens44.tokens.colors.greenLight,
4937
+ dark: import_tokens44.tokens.colors.greenDark,
4938
+ contrastText: import_tokens44.tokens.colors.textOnGreen
4982
4939
  },
4983
4940
  secondary: {
4984
- main: import_tokens43.tokens.colors.earth,
4985
- light: import_tokens43.tokens.colors.earthLight,
4986
- dark: import_tokens43.tokens.colors.earthDark,
4987
- contrastText: import_tokens43.tokens.colors.textOnEarth
4941
+ main: import_tokens44.tokens.colors.earth,
4942
+ light: import_tokens44.tokens.colors.earthLight,
4943
+ dark: import_tokens44.tokens.colors.earthDark,
4944
+ contrastText: import_tokens44.tokens.colors.textOnEarth
4988
4945
  },
4989
4946
  earth: {
4990
- main: import_tokens43.tokens.colors.earth,
4991
- light: import_tokens43.tokens.colors.earthLight,
4992
- dark: import_tokens43.tokens.colors.earthDark,
4993
- contrastText: import_tokens43.tokens.colors.textOnEarth
4947
+ main: import_tokens44.tokens.colors.earth,
4948
+ light: import_tokens44.tokens.colors.earthLight,
4949
+ dark: import_tokens44.tokens.colors.earthDark,
4950
+ contrastText: import_tokens44.tokens.colors.textOnEarth
4994
4951
  },
4995
4952
  success: {
4996
- main: import_tokens43.tokens.colors.success,
4997
- light: import_tokens43.tokens.colors.successLight,
4998
- dark: import_tokens43.tokens.colors.successDark,
4999
- contrastText: import_tokens43.tokens.colors.textOnGreen
4953
+ main: import_tokens44.tokens.colors.success,
4954
+ light: import_tokens44.tokens.colors.successLight,
4955
+ dark: import_tokens44.tokens.colors.successDark,
4956
+ contrastText: import_tokens44.tokens.colors.textOnGreen
5000
4957
  },
5001
4958
  error: {
5002
- main: import_tokens43.tokens.colors.error,
5003
- light: import_tokens43.tokens.colors.errorLight,
5004
- dark: import_tokens43.tokens.colors.errorDark,
5005
- contrastText: import_tokens43.tokens.colors.white
4959
+ main: import_tokens44.tokens.colors.error,
4960
+ light: import_tokens44.tokens.colors.errorLight,
4961
+ dark: import_tokens44.tokens.colors.errorDark,
4962
+ contrastText: import_tokens44.tokens.colors.white
5006
4963
  },
5007
4964
  warning: {
5008
- main: import_tokens43.tokens.colors.warning,
5009
- light: import_tokens43.tokens.colors.warningLight,
5010
- dark: import_tokens43.tokens.colors.warningDark,
5011
- contrastText: import_tokens43.tokens.colors.textPrimary
4965
+ main: import_tokens44.tokens.colors.warning,
4966
+ light: import_tokens44.tokens.colors.warningLight,
4967
+ dark: import_tokens44.tokens.colors.warningDark,
4968
+ contrastText: import_tokens44.tokens.colors.textPrimary
5012
4969
  },
5013
4970
  info: {
5014
- main: import_tokens43.tokens.colors.info,
5015
- light: import_tokens43.tokens.colors.infoLight,
5016
- dark: import_tokens43.tokens.colors.infoDark,
5017
- contrastText: import_tokens43.tokens.colors.white
4971
+ main: import_tokens44.tokens.colors.info,
4972
+ light: import_tokens44.tokens.colors.infoLight,
4973
+ dark: import_tokens44.tokens.colors.infoDark,
4974
+ contrastText: import_tokens44.tokens.colors.white
5018
4975
  },
5019
4976
  background: {
5020
- default: import_tokens43.tokens.colors.background,
5021
- paper: import_tokens43.tokens.colors.surface
4977
+ default: import_tokens44.tokens.colors.background,
4978
+ paper: import_tokens44.tokens.colors.surface
5022
4979
  },
5023
- divider: import_tokens43.tokens.colors.divider,
4980
+ divider: import_tokens44.tokens.colors.divider,
5024
4981
  text: {
5025
- primary: import_tokens43.tokens.colors.textPrimary,
5026
- secondary: import_tokens43.tokens.colors.textSecondary,
5027
- disabled: import_tokens43.tokens.colors.textDisabled
4982
+ primary: import_tokens44.tokens.colors.textPrimary,
4983
+ secondary: import_tokens44.tokens.colors.textSecondary,
4984
+ disabled: import_tokens44.tokens.colors.textDisabled
5028
4985
  },
5029
4986
  common: {
5030
- black: import_tokens43.tokens.colors.textPrimary,
5031
- white: import_tokens43.tokens.colors.white
4987
+ black: import_tokens44.tokens.colors.textPrimary,
4988
+ white: import_tokens44.tokens.colors.white
5032
4989
  }
5033
4990
  },
5034
4991
  shape: {
5035
- borderRadius: import_tokens43.tokens.radius.md
4992
+ borderRadius: import_tokens44.tokens.radius.md
5036
4993
  // 8px default
5037
4994
  },
5038
4995
  shadows: [
5039
4996
  "none",
5040
- import_tokens43.tokens.shadows.card,
4997
+ import_tokens44.tokens.shadows.card,
5041
4998
  // 1
5042
- import_tokens43.tokens.shadows.elevated,
4999
+ import_tokens44.tokens.shadows.elevated,
5043
5000
  // 2
5044
- import_tokens43.tokens.shadows.deep,
5001
+ import_tokens44.tokens.shadows.deep,
5045
5002
  // 3
5046
- import_tokens43.tokens.shadows.bottomSheet,
5003
+ import_tokens44.tokens.shadows.bottomSheet,
5047
5004
  // 4
5048
- import_tokens43.tokens.shadows.focus,
5005
+ import_tokens44.tokens.shadows.focus,
5049
5006
  // 5
5050
- import_tokens43.tokens.shadows.green,
5007
+ import_tokens44.tokens.shadows.green,
5051
5008
  // 6
5052
- import_tokens43.tokens.shadows.earth,
5009
+ import_tokens44.tokens.shadows.earth,
5053
5010
  // 7
5054
5011
  "none",
5055
5012
  "none",
@@ -5070,45 +5027,45 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5070
5027
  "none"
5071
5028
  ],
5072
5029
  typography: {
5073
- fontFamily: import_tokens43.tokens.typography.fontFamily,
5074
- fontWeightRegular: import_tokens43.tokens.typography.fontWeights.regular,
5075
- fontWeightMedium: import_tokens43.tokens.typography.fontWeights.medium,
5076
- fontWeightBold: import_tokens43.tokens.typography.fontWeights.bold,
5030
+ fontFamily: import_tokens44.tokens.typography.fontFamily,
5031
+ fontWeightRegular: import_tokens44.tokens.typography.fontWeights.regular,
5032
+ fontWeightMedium: import_tokens44.tokens.typography.fontWeights.medium,
5033
+ fontWeightBold: import_tokens44.tokens.typography.fontWeights.bold,
5077
5034
  h1: {
5078
- fontSize: `${import_tokens43.tokens.typography.fontSizes.display}px`,
5079
- fontWeight: import_tokens43.tokens.typography.fontWeights.extrabold,
5035
+ fontSize: `${import_tokens44.tokens.typography.fontSizes.display}px`,
5036
+ fontWeight: import_tokens44.tokens.typography.fontWeights.extrabold,
5080
5037
  lineHeight: 1.1
5081
5038
  },
5082
5039
  h2: {
5083
- fontSize: `${import_tokens43.tokens.typography.fontSizes.xxxl}px`,
5084
- fontWeight: import_tokens43.tokens.typography.fontWeights.bold,
5040
+ fontSize: `${import_tokens44.tokens.typography.fontSizes.xxxl}px`,
5041
+ fontWeight: import_tokens44.tokens.typography.fontWeights.bold,
5085
5042
  lineHeight: 1.2
5086
5043
  },
5087
5044
  h3: {
5088
- fontSize: `${import_tokens43.tokens.typography.fontSizes.xxl}px`,
5089
- fontWeight: import_tokens43.tokens.typography.fontWeights.bold,
5045
+ fontSize: `${import_tokens44.tokens.typography.fontSizes.xxl}px`,
5046
+ fontWeight: import_tokens44.tokens.typography.fontWeights.bold,
5090
5047
  lineHeight: 1.2
5091
5048
  },
5092
5049
  h4: {
5093
- fontSize: `${import_tokens43.tokens.typography.fontSizes.xl}px`,
5094
- fontWeight: import_tokens43.tokens.typography.fontWeights.bold,
5050
+ fontSize: `${import_tokens44.tokens.typography.fontSizes.xl}px`,
5051
+ fontWeight: import_tokens44.tokens.typography.fontWeights.bold,
5095
5052
  lineHeight: 1.2
5096
5053
  },
5097
5054
  body1: {
5098
- fontSize: `${import_tokens43.tokens.typography.fontSizes.md}px`,
5055
+ fontSize: `${import_tokens44.tokens.typography.fontSizes.md}px`,
5099
5056
  lineHeight: 1.5
5100
5057
  },
5101
5058
  body2: {
5102
- fontSize: `${import_tokens43.tokens.typography.fontSizes.base}px`,
5059
+ fontSize: `${import_tokens44.tokens.typography.fontSizes.base}px`,
5103
5060
  lineHeight: 1.5
5104
5061
  },
5105
5062
  button: {
5106
- fontSize: `${import_tokens43.tokens.typography.fontSizes.base}px`,
5063
+ fontSize: `${import_tokens44.tokens.typography.fontSizes.base}px`,
5107
5064
  fontWeight: 600,
5108
5065
  textTransform: "none"
5109
5066
  },
5110
5067
  caption: {
5111
- fontSize: `${import_tokens43.tokens.typography.fontSizes.sm}px`,
5068
+ fontSize: `${import_tokens44.tokens.typography.fontSizes.sm}px`,
5112
5069
  lineHeight: 1.5
5113
5070
  }
5114
5071
  },
@@ -5116,9 +5073,9 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5116
5073
  MuiCssBaseline: {
5117
5074
  styleOverrides: {
5118
5075
  body: {
5119
- backgroundColor: import_tokens43.tokens.colors.background,
5120
- color: import_tokens43.tokens.colors.textPrimary,
5121
- fontFamily: import_tokens43.tokens.typography.fontFamily,
5076
+ backgroundColor: import_tokens44.tokens.colors.background,
5077
+ color: import_tokens44.tokens.colors.textPrimary,
5078
+ fontFamily: import_tokens44.tokens.typography.fontFamily,
5122
5079
  WebkitFontSmoothing: "antialiased",
5123
5080
  MozOsxFontSmoothing: "grayscale"
5124
5081
  },
@@ -5133,7 +5090,7 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5133
5090
  },
5134
5091
  styleOverrides: {
5135
5092
  root: {
5136
- borderRadius: `${import_tokens43.tokens.radius.md}px`,
5093
+ borderRadius: `${import_tokens44.tokens.radius.md}px`,
5137
5094
  transition: transitions.standard,
5138
5095
  fontWeight: 600,
5139
5096
  "&:hover": {
@@ -5143,40 +5100,40 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5143
5100
  transform: "translateY(0) scale(0.98)"
5144
5101
  },
5145
5102
  "&.Mui-disabled": {
5146
- backgroundColor: import_tokens43.tokens.colors.divider,
5147
- color: import_tokens43.tokens.colors.textDisabled,
5148
- borderColor: import_tokens43.tokens.colors.divider
5103
+ backgroundColor: import_tokens44.tokens.colors.divider,
5104
+ color: import_tokens44.tokens.colors.textDisabled,
5105
+ borderColor: import_tokens44.tokens.colors.divider
5149
5106
  }
5150
5107
  },
5151
5108
  containedPrimary: {
5152
- backgroundColor: import_tokens43.tokens.colors.green,
5109
+ backgroundColor: import_tokens44.tokens.colors.green,
5153
5110
  "&:hover": {
5154
- backgroundColor: import_tokens43.tokens.colors.greenDark,
5155
- boxShadow: import_tokens43.tokens.shadows.green
5111
+ backgroundColor: import_tokens44.tokens.colors.greenDark,
5112
+ boxShadow: import_tokens44.tokens.shadows.green
5156
5113
  }
5157
5114
  },
5158
5115
  containedSecondary: {
5159
- backgroundColor: import_tokens43.tokens.colors.earth,
5116
+ backgroundColor: import_tokens44.tokens.colors.earth,
5160
5117
  "&:hover": {
5161
- backgroundColor: import_tokens43.tokens.colors.earthDark,
5162
- boxShadow: import_tokens43.tokens.shadows.earth
5118
+ backgroundColor: import_tokens44.tokens.colors.earthDark,
5119
+ boxShadow: import_tokens44.tokens.shadows.earth
5163
5120
  }
5164
5121
  },
5165
5122
  outlinedPrimary: {
5166
5123
  borderWidth: "2px !important",
5167
- borderColor: import_tokens43.tokens.colors.border,
5168
- color: import_tokens43.tokens.colors.textPrimary,
5124
+ borderColor: import_tokens44.tokens.colors.border,
5125
+ color: import_tokens44.tokens.colors.textPrimary,
5169
5126
  "&:hover": {
5170
- backgroundColor: import_tokens43.tokens.colors.background,
5171
- borderColor: import_tokens43.tokens.colors.green,
5172
- color: import_tokens43.tokens.colors.green
5127
+ backgroundColor: import_tokens44.tokens.colors.background,
5128
+ borderColor: import_tokens44.tokens.colors.green,
5129
+ color: import_tokens44.tokens.colors.green
5173
5130
  }
5174
5131
  },
5175
5132
  textPrimary: {
5176
- color: import_tokens43.tokens.colors.textSecondary,
5133
+ color: import_tokens44.tokens.colors.textSecondary,
5177
5134
  "&:hover": {
5178
- backgroundColor: import_tokens43.tokens.colors.background,
5179
- color: import_tokens43.tokens.colors.textPrimary
5135
+ backgroundColor: import_tokens44.tokens.colors.background,
5136
+ color: import_tokens44.tokens.colors.textPrimary
5180
5137
  }
5181
5138
  }
5182
5139
  }
@@ -5184,16 +5141,16 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5184
5141
  MuiCard: {
5185
5142
  styleOverrides: {
5186
5143
  root: {
5187
- borderRadius: `${import_tokens43.tokens.radius.xl}px`,
5188
- backgroundColor: import_tokens43.tokens.colors.surface,
5189
- boxShadow: import_tokens43.tokens.shadows.card,
5144
+ borderRadius: `${import_tokens44.tokens.radius.xl}px`,
5145
+ backgroundColor: import_tokens44.tokens.colors.surface,
5146
+ boxShadow: import_tokens44.tokens.shadows.card,
5190
5147
  transition: transitions.standard,
5191
5148
  border: "1px solid",
5192
- borderColor: import_tokens43.tokens.colors.divider,
5149
+ borderColor: import_tokens44.tokens.colors.divider,
5193
5150
  "&:hover": {
5194
5151
  transform: "translateY(-4px)",
5195
- boxShadow: import_tokens43.tokens.shadows.elevated,
5196
- borderColor: import_tokens43.tokens.colors.border
5152
+ boxShadow: import_tokens44.tokens.shadows.elevated,
5153
+ borderColor: import_tokens44.tokens.colors.border
5197
5154
  }
5198
5155
  }
5199
5156
  }
@@ -5201,36 +5158,36 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5201
5158
  MuiPaper: {
5202
5159
  styleOverrides: {
5203
5160
  rounded: {
5204
- borderRadius: `${import_tokens43.tokens.radius.xl}px`
5161
+ borderRadius: `${import_tokens44.tokens.radius.xl}px`
5205
5162
  },
5206
5163
  elevation1: {
5207
- boxShadow: import_tokens43.tokens.shadows.card
5164
+ boxShadow: import_tokens44.tokens.shadows.card
5208
5165
  }
5209
5166
  }
5210
5167
  },
5211
5168
  MuiOutlinedInput: {
5212
5169
  styleOverrides: {
5213
5170
  root: {
5214
- borderRadius: `${import_tokens43.tokens.radius.md}px`,
5215
- backgroundColor: import_tokens43.tokens.colors.surface,
5171
+ borderRadius: `${import_tokens44.tokens.radius.md}px`,
5172
+ backgroundColor: import_tokens44.tokens.colors.surface,
5216
5173
  transition: transitions.standard,
5217
5174
  "& .MuiOutlinedInput-notchedOutline": {
5218
- borderColor: import_tokens43.tokens.colors.border,
5175
+ borderColor: import_tokens44.tokens.colors.border,
5219
5176
  borderWidth: "1px",
5220
5177
  transition: transitions.standard
5221
5178
  },
5222
5179
  "&:hover .MuiOutlinedInput-notchedOutline": {
5223
- borderColor: import_tokens43.tokens.colors.textDisabled
5180
+ borderColor: import_tokens44.tokens.colors.textDisabled
5224
5181
  },
5225
5182
  "&.Mui-focused .MuiOutlinedInput-notchedOutline": {
5226
- borderColor: import_tokens43.tokens.colors.green,
5183
+ borderColor: import_tokens44.tokens.colors.green,
5227
5184
  borderWidth: "2px"
5228
5185
  },
5229
5186
  "&.Mui-error .MuiOutlinedInput-notchedOutline": {
5230
- borderColor: import_tokens43.tokens.colors.error
5187
+ borderColor: import_tokens44.tokens.colors.error
5231
5188
  },
5232
5189
  "&.Mui-focused": {
5233
- boxShadow: import_tokens43.tokens.shadows.focus
5190
+ boxShadow: import_tokens44.tokens.shadows.focus
5234
5191
  }
5235
5192
  }
5236
5193
  }
@@ -5242,7 +5199,7 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5242
5199
  cursor: "pointer",
5243
5200
  "&:hover": {
5244
5201
  transform: "perspective(1000px) rotateY(15deg) rotateX(-5deg) scale(1.1)",
5245
- boxShadow: import_tokens43.tokens.shadows.elevated
5202
+ boxShadow: import_tokens44.tokens.shadows.elevated
5246
5203
  },
5247
5204
  "&:active": {
5248
5205
  transform: "perspective(1000px) rotateY(0deg) rotateX(0deg) scale(1.05)"
@@ -5253,8 +5210,8 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5253
5210
  MuiDialog: {
5254
5211
  styleOverrides: {
5255
5212
  paper: {
5256
- borderRadius: `${import_tokens43.tokens.radius.xxxl}px`,
5257
- boxShadow: import_tokens43.tokens.shadows.bottomSheet,
5213
+ borderRadius: `${import_tokens44.tokens.radius.xxxl}px`,
5214
+ boxShadow: import_tokens44.tokens.shadows.bottomSheet,
5258
5215
  backgroundImage: "none"
5259
5216
  }
5260
5217
  }
@@ -5262,7 +5219,7 @@ var mitumbaTheme = (0, import_styles2.createTheme)({
5262
5219
  MuiAlert: {
5263
5220
  styleOverrides: {
5264
5221
  root: {
5265
- borderRadius: `${import_tokens43.tokens.radius.lg}px`,
5222
+ borderRadius: `${import_tokens44.tokens.radius.lg}px`,
5266
5223
  alignItems: "center"
5267
5224
  }
5268
5225
  }