@reevit/react 0.4.1 → 0.4.3

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/styles.css CHANGED
@@ -3,54 +3,78 @@
3
3
  * Minimal design system matching Reevit dashboard
4
4
  */
5
5
 
6
- /* Import Geist Mono font */
7
- @import url('https://fonts.googleapis.com/css2?family=Geist+Mono:wght@400;500;600;700&display=swap');
6
+ /* Import Space Grotesk font */
7
+ @import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap');
8
8
 
9
9
  /* CSS Variables for theming - Light mode */
10
10
  :root {
11
- --reevit-primary: oklch(0.922 0 0);
12
- --reevit-primary-hover: oklch(0.85 0 0);
13
- --reevit-primary-foreground: oklch(0.145 0 0);
14
- --reevit-background: oklch(1 0 0);
15
- --reevit-surface: oklch(0.97 0 0);
16
- --reevit-border: oklch(0.922 0 0);
17
- --reevit-text: oklch(0.145 0 0);
18
- --reevit-text-secondary: oklch(0.556 0 0);
19
- --reevit-muted: oklch(0.708 0 0);
20
- --reevit-success: oklch(0.696 0.17 162.48);
21
- --reevit-error: oklch(0.577 0.245 27.325);
22
- --reevit-warning: oklch(0.828 0.189 84.429);
23
- --reevit-radius: 0.625rem;
24
- --reevit-radius-sm: 0.5rem;
25
- --reevit-radius-lg: 0.75rem;
26
- --reevit-font: 'Geist Mono', ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace;
27
- --reevit-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
28
- --reevit-shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
11
+ --reevit-primary: #0ea5e9;
12
+ --reevit-primary-hover: #0284c7;
13
+ --reevit-primary-foreground: #ffffff;
14
+ --reevit-background: #f8fafc;
15
+ --reevit-surface: #ffffff;
16
+ --reevit-border: rgba(15, 23, 42, 0.12);
17
+ --reevit-text: #0f172a;
18
+ --reevit-text-secondary: #475569;
19
+ --reevit-muted: #94a3b8;
20
+ --reevit-success: #16a34a;
21
+ --reevit-error: #dc2626;
22
+ --reevit-warning: #f59e0b;
23
+ --reevit-radius: 0.75rem;
24
+ --reevit-radius-sm: 0.6rem;
25
+ --reevit-radius-lg: 1rem;
26
+ --reevit-font: 'Space Grotesk', 'Avenir Next', 'Segoe UI', sans-serif;
27
+ --reevit-shadow: 0 30px 60px -30px rgba(15, 23, 42, 0.35);
28
+ --reevit-shadow-sm: 0 12px 24px -18px rgba(15, 23, 42, 0.3);
29
29
  }
30
30
 
31
31
  /* Dark mode support */
32
32
  @media (prefers-color-scheme: dark) {
33
33
  :root {
34
- --reevit-primary: oklch(0.922 0 0);
35
- --reevit-primary-hover: oklch(0.85 0 0);
36
- --reevit-primary-foreground: oklch(0.145 0 0);
37
- --reevit-background: oklch(0.145 0 0);
38
- --reevit-surface: oklch(0.205 0 0);
39
- --reevit-border: oklch(1 0 0 / 10%);
40
- --reevit-text: oklch(0.985 0 0);
41
- --reevit-text-secondary: oklch(0.708 0 0);
42
- --reevit-muted: oklch(0.556 0 0);
43
- --reevit-success: oklch(0.696 0.17 162.48);
44
- --reevit-error: oklch(0.704 0.191 22.216);
45
- --reevit-warning: oklch(0.828 0.189 84.429);
34
+ --reevit-primary: #38bdf8;
35
+ --reevit-primary-hover: #0ea5e9;
36
+ --reevit-primary-foreground: #0b1120;
37
+ --reevit-background: #0b1120;
38
+ --reevit-surface: #111827;
39
+ --reevit-border: rgba(148, 163, 184, 0.2);
40
+ --reevit-text: #f8fafc;
41
+ --reevit-text-secondary: #cbd5f5;
42
+ --reevit-muted: #94a3b8;
43
+ --reevit-success: #22c55e;
44
+ --reevit-error: #f87171;
45
+ --reevit-warning: #fbbf24;
46
46
  }
47
47
  }
48
48
 
49
+ .reevit-modal[data-reevit-theme="light"] {
50
+ --reevit-primary: #0ea5e9;
51
+ --reevit-primary-hover: #0284c7;
52
+ --reevit-primary-foreground: #ffffff;
53
+ --reevit-background: #f8fafc;
54
+ --reevit-surface: #ffffff;
55
+ --reevit-border: rgba(15, 23, 42, 0.12);
56
+ --reevit-text: #0f172a;
57
+ --reevit-text-secondary: #475569;
58
+ --reevit-muted: #94a3b8;
59
+ }
60
+
61
+ .reevit-modal[data-reevit-theme="dark"] {
62
+ --reevit-primary: #38bdf8;
63
+ --reevit-primary-hover: #0ea5e9;
64
+ --reevit-primary-foreground: #0b1120;
65
+ --reevit-background: #0b1120;
66
+ --reevit-surface: #111827;
67
+ --reevit-border: rgba(148, 163, 184, 0.2);
68
+ --reevit-text: #f8fafc;
69
+ --reevit-text-secondary: #cbd5f5;
70
+ --reevit-muted: #94a3b8;
71
+ }
72
+
49
73
  /* ===== OVERLAY ===== */
50
74
  .reevit-overlay {
51
75
  position: fixed;
52
76
  inset: 0;
53
- background: rgba(0, 0, 0, 0.7);
77
+ background: radial-gradient(120% 120% at 50% 0%, rgba(14, 165, 233, 0.2), transparent 55%), rgba(15, 23, 42, 0.6);
54
78
  backdrop-filter: blur(8px);
55
79
  -webkit-backdrop-filter: blur(8px);
56
80
  display: flex;
@@ -73,13 +97,15 @@
73
97
  border: 1px solid var(--reevit-border);
74
98
  box-shadow: var(--reevit-shadow);
75
99
  width: 100%;
76
- max-width: 400px;
100
+ max-width: 440px;
101
+ min-height: 380px;
77
102
  max-height: 90vh;
78
103
  overflow: hidden;
79
104
  display: flex;
80
105
  flex-direction: column;
81
106
  font-family: var(--reevit-font);
82
- animation: reevit-slide-up 0.25s cubic-bezier(0.22, 1, 0.36, 1);
107
+ animation: reevit-slide-up 0.3s cubic-bezier(0.22, 1, 0.36, 1);
108
+ transition: min-height 0.4s cubic-bezier(0.16, 1, 0.3, 1);
83
109
  }
84
110
 
85
111
  @keyframes reevit-slide-up {
@@ -102,8 +128,9 @@
102
128
  display: flex;
103
129
  align-items: center;
104
130
  justify-content: space-between;
105
- padding: 16px 20px;
131
+ padding: 18px 22px;
106
132
  border-bottom: 1px solid var(--reevit-border);
133
+ background: linear-gradient(120deg, rgba(14, 165, 233, 0.08), transparent 55%);
107
134
  }
108
135
 
109
136
  .reevit-modal__branding {
@@ -141,9 +168,9 @@
141
168
 
142
169
  /* Modal Amount */
143
170
  .reevit-modal__amount {
144
- padding: 32px 20px;
171
+ padding: 28px 22px;
145
172
  text-align: center;
146
- background: var(--reevit-surface);
173
+ background: linear-gradient(135deg, rgba(14, 165, 233, 0.12), rgba(14, 165, 233, 0.04));
147
174
  border-bottom: 1px solid var(--reevit-border);
148
175
  }
149
176
 
@@ -187,85 +214,385 @@
187
214
  letter-spacing: 0.02em;
188
215
  }
189
216
 
190
- /* ===== PAYMENT METHOD SELECTOR ===== */
191
- .reevit-method-selector {
217
+ /* ===== PSP SELECTOR ===== */
218
+ .reevit-psp-selector {
192
219
  margin-bottom: 20px;
193
220
  }
194
221
 
195
- .reevit-method-selector__label {
222
+ .reevit-psp-selector__label {
196
223
  font-size: 12px;
197
- font-weight: 500;
224
+ font-weight: 600;
198
225
  color: var(--reevit-text);
199
- margin-bottom: 12px;
226
+ margin-bottom: 10px;
200
227
  letter-spacing: 0.02em;
201
228
  }
202
229
 
203
- .reevit-method-selector__options {
204
- display: flex;
205
- flex-direction: column;
206
- gap: 8px;
230
+ .reevit-psp-selector__options {
231
+ display: grid;
232
+ gap: 10px;
207
233
  }
208
234
 
209
- .reevit-method-option {
235
+ .reevit-psp-option {
210
236
  display: flex;
211
237
  align-items: center;
212
- gap: 12px;
238
+ gap: 14px;
213
239
  padding: 14px 16px;
214
- background: transparent;
215
- border: 1px solid var(--reevit-border);
216
240
  border-radius: var(--reevit-radius);
241
+ border: 1px solid var(--reevit-border);
242
+ background: var(--reevit-surface);
217
243
  cursor: pointer;
218
- transition: all 0.15s ease;
244
+ transition: all 0.2s ease;
219
245
  text-align: left;
220
246
  width: 100%;
247
+ position: relative;
248
+ overflow: hidden;
221
249
  }
222
250
 
223
- .reevit-method-option:hover {
224
- border-color: var(--reevit-text-secondary);
225
- background: var(--reevit-surface);
226
- }
227
-
228
- .reevit-method-option--selected {
229
- border-color: var(--reevit-text);
230
- background: var(--reevit-surface);
251
+ .reevit-psp-option--selected {
252
+ border-color: color-mix(in srgb, var(--reevit-primary) 70%, var(--reevit-border));
253
+ box-shadow: 0 12px 24px -20px color-mix(in srgb, var(--reevit-primary) 60%, transparent);
231
254
  }
232
255
 
233
- .reevit-method-option--disabled {
234
- opacity: 0.5;
256
+ .reevit-psp-option--disabled {
257
+ opacity: 0.6;
235
258
  cursor: not-allowed;
236
259
  }
237
260
 
238
- .reevit-method-option__icon {
239
- font-size: 20px;
261
+ .reevit-psp-option__logo {
262
+ width: 36px;
263
+ height: 36px;
264
+ border-radius: 12px;
265
+ background: transparent;
266
+ display: inline-flex;
267
+ align-items: center;
268
+ justify-content: center;
240
269
  flex-shrink: 0;
241
- opacity: 0.8;
270
+ position: relative;
271
+ z-index: 1;
272
+ }
273
+
274
+ .reevit-psp-option__logo-img {
275
+ width: 100%;
276
+ height: 100%;
277
+ object-fit: contain;
278
+ }
279
+
280
+ .reevit-psp-option__logo-fallback {
281
+ font-weight: 700;
282
+ color: var(--reevit-text-secondary);
242
283
  }
243
284
 
244
- .reevit-method-option__content {
285
+ .reevit-psp-option__content {
245
286
  flex: 1;
246
287
  min-width: 0;
288
+ position: relative;
289
+ z-index: 1;
247
290
  }
248
291
 
249
- .reevit-method-option__label {
292
+ .reevit-psp-option__name {
250
293
  display: block;
251
- font-size: 13px;
294
+ font-size: 14px;
252
295
  font-weight: 600;
253
296
  color: var(--reevit-text);
254
- letter-spacing: -0.01em;
255
297
  }
256
298
 
257
- .reevit-method-option__description {
299
+ .reevit-psp-option__methods {
258
300
  display: block;
259
301
  font-size: 11px;
260
302
  color: var(--reevit-text-secondary);
261
303
  margin-top: 2px;
262
- letter-spacing: 0.01em;
263
304
  }
264
305
 
265
- .reevit-method-option__check {
306
+ .reevit-psp-option__check {
307
+ font-size: 10px;
308
+ font-weight: 600;
309
+ color: var(--reevit-text-secondary);
310
+ background: rgba(148, 163, 184, 0.2);
311
+ padding: 4px 8px;
312
+ border-radius: 999px;
313
+ position: relative;
314
+ z-index: 1;
315
+ }
316
+
317
+ .reevit-psp-option--selected .reevit-psp-option__check {
318
+ background: color-mix(in srgb, var(--reevit-primary) 18%, transparent);
319
+ color: var(--reevit-primary);
320
+ }
321
+
322
+
323
+ /* ===== ANIMATIONS ===== */
324
+ @keyframes reevit-fade-in {
325
+ from { opacity: 0; }
326
+ to { opacity: 1; }
327
+ }
328
+
329
+ @keyframes reevit-slide-up {
330
+ from {
331
+ opacity: 0;
332
+ transform: translateY(12px);
333
+ }
334
+ to {
335
+ opacity: 1;
336
+ transform: translateY(0);
337
+ }
338
+ }
339
+
340
+ @keyframes reevit-accordion-expand {
341
+ from {
342
+ opacity: 0;
343
+ max-height: 0;
344
+ transform: scale(0.98) translateY(-8px);
345
+ }
346
+ to {
347
+ opacity: 1;
348
+ max-height: 1000px;
349
+ transform: scale(1) translateY(0);
350
+ }
351
+ }
352
+
353
+ .reevit-animate-slide-up {
354
+ animation: reevit-slide-up 0.5s cubic-bezier(0.16, 1, 0.3, 1);
355
+ }
356
+
357
+ .reevit-animate-fade-in {
358
+ animation: reevit-fade-in 0.4s ease-out;
359
+ }
360
+
361
+ /* ===== PSP ACCORDION ===== */
362
+ .reevit-psp-accordion {
363
+ display: flex;
364
+ flex-direction: column;
365
+ gap: 0;
366
+ margin-bottom: 12px;
367
+ }
368
+
369
+ .reevit-psp-accordion:last-child {
370
+ margin-bottom: 0;
371
+ }
372
+
373
+ .reevit-psp-option {
374
+ display: flex;
375
+ align-items: center;
376
+ gap: 14px;
377
+ padding: 18px 20px;
378
+ border-radius: 8px;
379
+ border: 1px solid var(--reevit-border);
380
+ background: var(--reevit-surface);
381
+ cursor: pointer;
382
+ transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
383
+ text-align: left;
384
+ width: 100%;
385
+ position: relative;
386
+ }
387
+
388
+ .reevit-psp-option:hover:not(.reevit-psp-option--disabled) {
389
+ border-color: var(--reevit-primary);
390
+ background: color-mix(in srgb, var(--reevit-primary) 3%, var(--reevit-surface));
391
+ transform: translateY(-1px);
392
+ }
393
+
394
+ .reevit-psp-option--selected {
395
+ border-radius: 8px 8px 0 0 !important;
396
+ box-shadow: 0 4px 20px -10px rgba(0, 0, 0, 0.1);
397
+ border-color: var(--reevit-primary);
398
+ background: color-mix(in srgb, var(--reevit-primary) 5%, var(--reevit-surface));
399
+ }
400
+
401
+ .reevit-psp-accordion__content {
402
+ padding: 24px 20px;
403
+ background: transparent;
404
+ border: 1px solid var(--reevit-border);
405
+ border-top: none;
406
+ border-radius: 0 0 8px 8px;
407
+ margin-top: -1px;
408
+ overflow: hidden;
409
+ animation: reevit-accordion-expand 0.6s cubic-bezier(0.16, 1, 0.3, 1);
410
+ transform-origin: top;
411
+ }
412
+
413
+ /* ===== PAYMENT METHOD SELECTOR ===== */
414
+ .reevit-method-selector {
415
+ margin-bottom: 24px;
416
+ width: 100%;
417
+ }
418
+
419
+ .reevit-method-selector__label {
420
+ font-size: 13px;
421
+ font-weight: 600;
422
+ color: var(--reevit-text);
423
+ margin-bottom: 16px;
424
+ letter-spacing: -0.01em;
425
+ opacity: 0.8;
426
+ }
427
+
428
+ .reevit-method-selector__options--grid {
429
+ display: grid;
430
+ grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
431
+ gap: 12px;
432
+ width: 100%;
433
+ }
434
+
435
+ .reevit-method-selector__options--list {
436
+ display: flex;
437
+ flex-direction: column;
438
+ gap: 12px;
439
+ width: 100%;
440
+ }
441
+
442
+ /* Grid layout styles */
443
+ .reevit-method-option--grid {
444
+ display: flex;
445
+ flex-direction: column;
446
+ align-items: center;
447
+ justify-content: center;
448
+ gap: 14px;
449
+ padding: 24px 16px;
450
+ min-height: 120px;
451
+ background: var(--reevit-surface);
452
+ border: 1px solid var(--reevit-border);
453
+ border-radius: var(--reevit-radius);
454
+ cursor: pointer;
455
+ transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
456
+ text-align: center;
457
+ width: 100%;
458
+ }
459
+
460
+ .reevit-method-option--grid:hover:not(.reevit-method-option--disabled) {
461
+ border-color: var(--reevit-primary);
462
+ transform: translateY(-3px);
463
+ box-shadow: 0 12px 24px -10px color-mix(in srgb, var(--reevit-primary) 30%, transparent);
464
+ }
465
+
466
+ .reevit-method-option--grid.reevit-method-option--selected {
467
+ border-color: var(--reevit-primary);
468
+ background: color-mix(in srgb, var(--reevit-primary) 8%, var(--reevit-surface));
469
+ border-width: 2px;
470
+ box-shadow: 0 8px 20px -6px color-mix(in srgb, var(--reevit-primary) 35%, transparent);
471
+ }
472
+
473
+ .reevit-method-option--grid .reevit-method-option__icon-wrapper {
474
+ display: flex;
475
+ align-items: center;
476
+ justify-content: center;
477
+ width: 56px;
478
+ height: 56px;
479
+ background: color-mix(in srgb, var(--reevit-text) 5%, transparent);
480
+ border-radius: 18px;
481
+ transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
482
+ }
483
+
484
+ .reevit-method-option--grid:hover .reevit-method-option__icon-wrapper {
485
+ transform: scale(1.15) rotate(5deg);
486
+ background: color-mix(in srgb, var(--reevit-primary) 15%, transparent);
487
+ }
488
+
489
+ .reevit-method-option--grid.reevit-method-option--selected .reevit-method-option__icon-wrapper {
490
+ background: color-mix(in srgb, var(--reevit-primary) 25%, transparent);
491
+ color: var(--reevit-primary);
492
+ transform: scale(1.1);
493
+ }
494
+
495
+ .reevit-method-option--grid .reevit-method-option__icon {
496
+ font-size: 36px;
497
+ }
498
+
499
+ .reevit-method-option--grid .reevit-method-option__label {
500
+ font-size: 13px;
501
+ font-weight: 800;
266
502
  color: var(--reevit-text);
503
+ text-transform: uppercase;
504
+ letter-spacing: 0.12em;
505
+ }
506
+
507
+ /* List layout styles */
508
+ .reevit-method-option--list {
509
+ display: flex;
510
+ flex-direction: row;
511
+ align-items: center;
512
+ gap: 16px;
513
+ padding: 18px 20px;
514
+ background: color-mix(in srgb, var(--reevit-surface) 92%, #ffffff);
515
+ border: 1px solid color-mix(in srgb, var(--reevit-border) 80%, transparent);
516
+ border-radius: 18px;
517
+ box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
518
+ cursor: pointer;
519
+ transition: all 0.2s ease;
520
+ text-align: left;
521
+ width: 100%;
522
+ position: relative;
523
+ overflow: hidden;
524
+ }
525
+
526
+ .reevit-method-option--list:hover:not(.reevit-method-option--disabled) {
527
+ border-color: var(--reevit-primary);
528
+ background: var(--reevit-surface);
529
+ transform: translateY(-1px);
530
+ box-shadow: 0 10px 24px -18px rgba(15, 23, 42, 0.35);
531
+ }
532
+
533
+ .reevit-method-option--list.reevit-method-option--selected {
534
+ border-color: var(--reevit-primary);
535
+ background: color-mix(in srgb, var(--reevit-primary) 6%, var(--reevit-surface));
536
+ box-shadow: 0 12px 26px -20px rgba(15, 23, 42, 0.4);
537
+ }
538
+
539
+ .reevit-method-option--list .reevit-method-option__icon-wrapper {
540
+ display: flex;
541
+ align-items: center;
542
+ justify-content: center;
543
+ width: 50px;
544
+ height: 50px;
545
+ background: color-mix(in srgb, var(--reevit-text) 5%, transparent);
546
+ border-radius: 14px;
267
547
  flex-shrink: 0;
548
+ transition: all 0.2s ease;
549
+ font-size: 24px;
550
+ }
551
+
552
+ .reevit-method-option--list:hover .reevit-method-option__icon-wrapper {
553
+ background: color-mix(in srgb, var(--reevit-primary) 12%, transparent);
554
+ transform: scale(1.03);
555
+ }
556
+
557
+ .reevit-method-option--list.reevit-method-option--selected .reevit-method-option__icon-wrapper {
558
+ background: color-mix(in srgb, var(--reevit-primary) 16%, transparent);
559
+ transform: scale(1.05);
560
+ }
561
+
562
+ .reevit-method-option--list .reevit-method-option__content {
563
+ flex: 1;
564
+ min-width: 0;
565
+ }
566
+
567
+ .reevit-method-option--list .reevit-method-option__label {
568
+ display: block;
569
+ font-size: 16px;
570
+ font-weight: 700;
571
+ color: var(--reevit-text);
572
+ margin-bottom: 4px;
573
+ letter-spacing: -0.01em;
574
+ }
575
+
576
+ .reevit-method-option--list .reevit-method-option__description {
577
+ display: block;
268
578
  font-size: 14px;
579
+ color: var(--reevit-text);
580
+ opacity: 0.6;
581
+ line-height: 1.4;
582
+ }
583
+
584
+ .reevit-method-option--list .reevit-method-option__chevron {
585
+ color: var(--reevit-primary);
586
+ opacity: 0;
587
+ transform: translateX(-10px);
588
+ transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
589
+ flex-shrink: 0;
590
+ }
591
+
592
+ .reevit-method-option--list:hover .reevit-method-option__chevron,
593
+ .reevit-method-option--list.reevit-method-option--selected .reevit-method-option__chevron {
594
+ opacity: 1;
595
+ transform: translateX(0);
269
596
  }
270
597
 
271
598
  /* ===== MOBILE MONEY FORM ===== */
@@ -273,95 +600,93 @@
273
600
  display: flex;
274
601
  flex-direction: column;
275
602
  gap: 16px;
603
+ width: 100%;
276
604
  }
277
605
 
278
606
  .reevit-momo-form__field {
279
607
  display: flex;
280
608
  flex-direction: column;
281
- gap: 6px;
609
+ gap: 8px;
282
610
  }
283
611
 
284
612
  .reevit-momo-form__label {
285
- font-size: 12px;
286
- font-weight: 500;
613
+ font-size: 13px;
614
+ font-weight: 600;
287
615
  color: var(--reevit-text);
288
- letter-spacing: 0.02em;
616
+ letter-spacing: -0.01em;
289
617
  }
290
618
 
291
619
  .reevit-momo-form__input {
292
- padding: 10px 14px;
293
- font-size: 14px;
620
+ padding: 14px 16px;
621
+ font-size: 15px;
294
622
  border: 1px solid var(--reevit-border);
295
623
  border-radius: var(--reevit-radius);
296
- background: transparent;
624
+ background: var(--reevit-surface);
297
625
  color: var(--reevit-text);
298
- transition: all 0.15s ease;
626
+ transition: all 0.2s ease;
299
627
  font-family: var(--reevit-font);
628
+ width: 100%;
300
629
  }
301
630
 
302
631
  .reevit-momo-form__input:focus {
303
632
  outline: none;
304
- border-color: var(--reevit-text-secondary);
305
- background: var(--reevit-surface);
633
+ border-color: var(--reevit-primary);
634
+ border-width: 1.5px;
635
+ box-shadow: 0 0 0 4px color-mix(in srgb, var(--reevit-primary) 10%, transparent);
306
636
  }
307
637
 
308
638
  .reevit-momo-form__input--error {
309
639
  border-color: var(--reevit-error);
310
640
  }
311
641
 
312
- .reevit-momo-form__input--error:focus {
313
- border-color: var(--reevit-error);
314
- }
315
-
316
642
  .reevit-momo-form__formatted {
317
- font-size: 11px;
643
+ font-size: 12px;
318
644
  color: var(--reevit-text-secondary);
645
+ font-family: var(--reevit-font-mono, monospace);
646
+ margin-top: 2px;
319
647
  }
320
648
 
321
649
  .reevit-momo-form__error {
322
- font-size: 11px;
650
+ font-size: 12px;
323
651
  color: var(--reevit-error);
652
+ margin-top: 4px;
324
653
  }
325
654
 
326
655
  .reevit-momo-form__networks {
327
656
  display: flex;
328
- gap: 8px;
657
+ gap: 10px;
329
658
  }
330
659
 
331
660
  .reevit-network-btn {
332
661
  flex: 1;
333
- padding: 10px 14px;
662
+ padding: 12px;
334
663
  font-size: 12px;
335
- font-weight: 600;
664
+ font-weight: 700;
336
665
  border: 1px solid var(--reevit-border);
337
- border-radius: var(--reevit-radius);
666
+ border-radius: var(--reevit-radius-sm);
338
667
  background: transparent;
339
668
  color: var(--reevit-text);
340
669
  cursor: pointer;
341
- transition: all 0.15s ease;
342
- font-family: var(--reevit-font);
343
- }
344
-
345
- .reevit-network-btn:hover {
346
- border-color: var(--reevit-text);
347
- background: transparent;
670
+ transition: all 0.2s ease;
671
+ text-transform: uppercase;
672
+ letter-spacing: 0.5px;
348
673
  }
349
674
 
350
- .reevit-network-btn:focus {
351
- outline: none;
352
- border-color: var(--reevit-text);
353
- box-shadow: 0 0 0 2px var(--reevit-border);
675
+ .reevit-network-btn:hover:not(:disabled) {
676
+ border-color: var(--reevit-text-secondary);
677
+ background: rgba(255, 255, 255, 0.02);
354
678
  }
355
679
 
356
680
  .reevit-network-btn--selected {
357
- border-color: var(--reevit-text);
358
- background: var(--reevit-text);
359
- color: var(--reevit-background);
681
+ border-color: var(--network-color, var(--reevit-primary));
682
+ background: color-mix(in srgb, var(--network-color, var(--reevit-primary)) 10%, transparent);
683
+ color: var(--reevit-text);
684
+ color: #ffffff;
360
685
  }
361
686
 
362
687
  .reevit-network-btn--selected:hover {
363
- background: var(--reevit-text-secondary);
364
- border-color: var(--reevit-text-secondary);
688
+ background: var(--network-color, var(--reevit-primary-hover));
689
+ border-color: var(--network-color, var(--reevit-primary-hover));
365
690
  }
366
691
 
367
692
  .reevit-momo-form__actions {
@@ -397,24 +722,24 @@
397
722
 
398
723
  .reevit-btn--primary {
399
724
  flex: 1;
400
- background: oklch(1 0 0);
401
- color: oklch(0.145 0 0);
402
- border: 1px solid var(--reevit-border);
725
+ background: var(--reevit-primary);
726
+ color: var(--reevit-primary-foreground);
727
+ border: 1px solid color-mix(in srgb, var(--reevit-primary) 60%, var(--reevit-border));
403
728
  }
404
729
 
405
730
  .reevit-btn--primary:hover:not(:disabled) {
406
- background: oklch(0.97 0 0);
407
- border-color: var(--reevit-text-secondary);
731
+ background: var(--reevit-primary-hover);
732
+ border-color: var(--reevit-primary-hover);
408
733
  }
409
734
 
410
735
  .reevit-btn--primary:focus:not(:disabled) {
411
736
  outline: none;
412
- border-color: var(--reevit-text);
413
- box-shadow: 0 0 0 2px var(--reevit-border);
737
+ border-color: var(--reevit-primary);
738
+ box-shadow: 0 0 0 3px color-mix(in srgb, var(--reevit-primary) 25%, transparent);
414
739
  }
415
740
 
416
741
  .reevit-btn--primary:active:not(:disabled) {
417
- background: oklch(0.95 0 0);
742
+ background: var(--reevit-primary-hover);
418
743
  transform: scale(0.98);
419
744
  }
420
745
 
@@ -444,9 +769,9 @@
444
769
  padding: 10px 18px;
445
770
  font-size: 13px;
446
771
  font-weight: 600;
447
- background: oklch(1 0 0);
448
- color: oklch(0.145 0 0);
449
- border: 1px solid var(--reevit-border);
772
+ background: var(--reevit-primary);
773
+ color: var(--reevit-primary-foreground);
774
+ border: 1px solid color-mix(in srgb, var(--reevit-primary) 70%, var(--reevit-border));
450
775
  border-radius: var(--reevit-radius);
451
776
  cursor: pointer;
452
777
  font-family: var(--reevit-font);
@@ -455,38 +780,38 @@
455
780
  }
456
781
 
457
782
  .reevit-trigger-btn:hover {
458
- background: oklch(0.97 0 0);
459
- border-color: var(--reevit-text-secondary);
783
+ background: var(--reevit-primary-hover);
784
+ border-color: var(--reevit-primary-hover);
460
785
  }
461
786
 
462
787
  .reevit-trigger-btn:focus {
463
788
  outline: none;
464
- border-color: var(--reevit-text);
465
- box-shadow: 0 0 0 2px var(--reevit-border);
789
+ border-color: var(--reevit-primary);
790
+ box-shadow: 0 0 0 3px color-mix(in srgb, var(--reevit-primary) 25%, transparent);
466
791
  }
467
792
 
468
793
  /* Dark mode button overrides */
469
794
  @media (prefers-color-scheme: dark) {
470
795
  .reevit-btn--primary {
471
- background: oklch(0.985 0 0);
472
- color: oklch(0.145 0 0);
796
+ background: var(--reevit-primary);
797
+ color: var(--reevit-primary-foreground);
473
798
  }
474
799
 
475
800
  .reevit-btn--primary:hover:not(:disabled) {
476
- background: oklch(0.9 0 0);
801
+ background: var(--reevit-primary-hover);
477
802
  }
478
803
 
479
804
  .reevit-btn--primary:active:not(:disabled) {
480
- background: oklch(0.85 0 0);
805
+ background: var(--reevit-primary-hover);
481
806
  }
482
807
 
483
808
  .reevit-trigger-btn {
484
- background: oklch(0.985 0 0);
485
- color: oklch(0.145 0 0);
809
+ background: var(--reevit-primary);
810
+ color: var(--reevit-primary-foreground);
486
811
  }
487
812
 
488
813
  .reevit-trigger-btn:hover {
489
- background: oklch(0.9 0 0);
814
+ background: var(--reevit-primary-hover);
490
815
  }
491
816
  }
492
817
 
@@ -669,24 +994,24 @@
669
994
  font-family: var(--reevit-font);
670
995
  min-height: 44px;
671
996
  letter-spacing: -0.01em;
672
- background: oklch(1 0 0);
673
- color: oklch(0.145 0 0);
674
- border: 1px solid var(--reevit-border);
997
+ background: var(--reevit-primary);
998
+ color: var(--reevit-primary-foreground);
999
+ border: 1px solid color-mix(in srgb, var(--reevit-primary) 60%, var(--reevit-border));
675
1000
  }
676
1001
 
677
1002
  .reevit-submit-btn:hover:not(:disabled) {
678
- background: oklch(0.97 0 0);
679
- border-color: var(--reevit-text-secondary);
1003
+ background: var(--reevit-primary-hover);
1004
+ border-color: var(--reevit-primary-hover);
680
1005
  }
681
1006
 
682
1007
  .reevit-submit-btn:focus:not(:disabled) {
683
1008
  outline: none;
684
- border-color: var(--reevit-text);
685
- box-shadow: 0 0 0 2px var(--reevit-border);
1009
+ border-color: var(--reevit-primary);
1010
+ box-shadow: 0 0 0 3px color-mix(in srgb, var(--reevit-primary) 25%, transparent);
686
1011
  }
687
1012
 
688
1013
  .reevit-submit-btn:active:not(:disabled) {
689
- background: oklch(0.95 0 0);
1014
+ background: var(--reevit-primary-hover);
690
1015
  transform: scale(0.98);
691
1016
  }
692
1017
 
@@ -738,16 +1063,16 @@
738
1063
  /* Dark mode button overrides for Stripe */
739
1064
  @media (prefers-color-scheme: dark) {
740
1065
  .reevit-submit-btn {
741
- background: oklch(0.985 0 0);
742
- color: oklch(0.145 0 0);
1066
+ background: var(--reevit-primary);
1067
+ color: var(--reevit-primary-foreground);
743
1068
  }
744
1069
 
745
1070
  .reevit-submit-btn:hover:not(:disabled) {
746
- background: oklch(0.9 0 0);
1071
+ background: var(--reevit-primary-hover);
747
1072
  }
748
1073
 
749
1074
  .reevit-submit-btn:active:not(:disabled) {
750
- background: oklch(0.85 0 0);
1075
+ background: var(--reevit-primary-hover);
751
1076
  }
752
1077
  }
753
1078