@abstraxn/signer-react 2.1.4 → 2.2.0

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.
Files changed (44) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/dist/src/WalletModal.css +0 -1
  3. package/dist/src/WalletModal.js +10 -4
  4. package/dist/src/WalletModal.js.map +1 -1
  5. package/dist/src/components/AbstraxnProvider/AbstraxnProviderInner.js +557 -81
  6. package/dist/src/components/AbstraxnProvider/AbstraxnProviderInner.js.map +1 -1
  7. package/dist/src/components/AbstraxnProvider/useOAuthCallbacks.d.ts +2 -1
  8. package/dist/src/components/AbstraxnProvider/useOAuthCallbacks.js +72 -8
  9. package/dist/src/components/AbstraxnProvider/useOAuthCallbacks.js.map +1 -1
  10. package/dist/src/components/AbstraxnProvider/useWalletInitialization.js +16 -11
  11. package/dist/src/components/AbstraxnProvider/useWalletInitialization.js.map +1 -1
  12. package/dist/src/components/AbstraxnProvider/utils.d.ts +5 -0
  13. package/dist/src/components/AbstraxnProvider/utils.js +9 -0
  14. package/dist/src/components/AbstraxnProvider/utils.js.map +1 -1
  15. package/dist/src/components/OnboardingUI/OnboardingUI.css +186 -6
  16. package/dist/src/components/OnboardingUI/OnboardingUIReact.js +18 -4
  17. package/dist/src/components/OnboardingUI/OnboardingUIReact.js.map +1 -1
  18. package/dist/src/components/OnboardingUI/OnboardingUIWeb.d.ts +21 -0
  19. package/dist/src/components/OnboardingUI/OnboardingUIWeb.js +528 -20
  20. package/dist/src/components/OnboardingUI/OnboardingUIWeb.js.map +1 -1
  21. package/dist/src/components/OnboardingUI/components/EmailForm.js +2 -1
  22. package/dist/src/components/OnboardingUI/components/EmailForm.js.map +1 -1
  23. package/dist/src/components/OnboardingUI/components/MfaForm.d.ts +17 -0
  24. package/dist/src/components/OnboardingUI/components/MfaForm.js +81 -0
  25. package/dist/src/components/OnboardingUI/components/MfaForm.js.map +1 -0
  26. package/dist/src/components/OnboardingUI/components/index.d.ts +2 -0
  27. package/dist/src/components/OnboardingUI/components/index.js +1 -0
  28. package/dist/src/components/OnboardingUI/components/index.js.map +1 -1
  29. package/dist/src/components/OnboardingUI/hooks/useAuthMethods.js +3 -0
  30. package/dist/src/components/OnboardingUI/hooks/useAuthMethods.js.map +1 -1
  31. package/dist/src/components/OnboardingUI/hooks/useOnboarding.d.ts +4 -1
  32. package/dist/src/components/OnboardingUI/hooks/useOnboarding.js +65 -2
  33. package/dist/src/components/OnboardingUI/hooks/useOnboarding.js.map +1 -1
  34. package/dist/src/components/WalletModal/components/ManageWalletModal.css +1443 -2
  35. package/dist/src/components/WalletModal/components/ManageWalletModal.js +737 -23
  36. package/dist/src/components/WalletModal/components/ManageWalletModal.js.map +1 -1
  37. package/dist/src/components/WalletModal/components/ReceiveModal.css +0 -1
  38. package/dist/src/components/WalletModal/hooks/useSendTransaction.js +67 -12
  39. package/dist/src/components/WalletModal/hooks/useSendTransaction.js.map +1 -1
  40. package/dist/src/types.d.ts +16 -0
  41. package/dist/src/wagmiConfig.js +1 -0
  42. package/dist/src/wagmiConfig.js.map +1 -1
  43. package/dist/tsconfig.tsbuildinfo +1 -1
  44. package/package.json +3 -2
@@ -26,6 +26,8 @@
26
26
  align-items: center;
27
27
  gap: 12px;
28
28
  text-align: left;
29
+ /* Calmer, SDK-style hover/press */
30
+ transition: color 0.18s ease-out, transform 0.12s ease-out;
29
31
  }
30
32
 
31
33
  .wallet-modal-theme-dark .wallet-modal-manage-list-item {
@@ -39,11 +41,16 @@
39
41
  }
40
42
 
41
43
  .wallet-modal-theme-dark .wallet-modal-manage-list-item:hover {
42
- background: rgba(255, 255, 255, 0.04);
44
+ color: #e5e7eb;
43
45
  }
44
46
 
45
47
  .wallet-modal-theme-light .wallet-modal-manage-list-item:hover {
46
- background: rgba(17, 24, 39, 0.04);
48
+ color: #374151;
49
+ }
50
+
51
+ .wallet-modal-manage-list-item:active {
52
+ /* Subtle press instead of shrink/bounce */
53
+ transform: translateY(1px);
47
54
  }
48
55
 
49
56
  .wallet-modal-manage-list-icon {
@@ -56,17 +63,109 @@
56
63
  opacity: 0.85;
57
64
  }
58
65
 
66
+ .wallet-modal-provider-icon {
67
+ color: currentColor;
68
+ }
69
+
70
+ .wallet-modal-provider-icon-google {
71
+ color: inherit;
72
+ }
73
+
74
+ .wallet-modal-provider-icon-discord {
75
+ color: #5865f2;
76
+ }
77
+
78
+ .wallet-modal-provider-icon-x {
79
+ color: inherit;
80
+ }
81
+
82
+ .wallet-modal-theme-dark .wallet-modal-provider-icon-x {
83
+ color: #ffffff;
84
+ }
85
+
86
+ .wallet-modal-theme-light .wallet-modal-provider-icon-x {
87
+ color: #111111;
88
+ }
89
+
90
+ .wallet-modal-theme-dark .wallet-modal-provider-icon-email,
91
+ .wallet-modal-theme-dark .wallet-modal-provider-icon-passkey {
92
+ color: rgba(255, 255, 255, 0.92);
93
+ }
94
+
95
+ .wallet-modal-theme-light .wallet-modal-provider-icon-email,
96
+ .wallet-modal-theme-light .wallet-modal-provider-icon-passkey {
97
+ color: #111827;
98
+ }
99
+
59
100
  .wallet-modal-manage-list-label {
60
101
  flex: 1;
61
102
  font-size: 14px;
62
103
  font-weight: 500;
63
104
  }
64
105
 
106
+ .wallet-modal-mfa-badge {
107
+ display: inline-flex;
108
+ align-items: center;
109
+ padding: 4px 10px;
110
+ margin-right: 4px;
111
+ border-radius: 9999px;
112
+ font-size: 12px;
113
+ font-weight: 600;
114
+ flex-shrink: 0;
115
+ }
116
+
117
+ .wallet-modal-mfa-badge-enabled {
118
+ background-color: #dcfce7;
119
+ color: #166534;
120
+ }
121
+
122
+ .wallet-modal-theme-dark .wallet-modal-mfa-badge-enabled {
123
+ background-color: rgba(34, 197, 94, 0.2);
124
+ color: #86efac;
125
+ }
126
+
127
+ .wallet-modal-mfa-badge-disabled {
128
+ background-color: #fee2e2;
129
+ color: #991b1b;
130
+ }
131
+
132
+ .wallet-modal-theme-dark .wallet-modal-mfa-badge-disabled {
133
+ background-color: rgba(239, 68, 68, 0.2);
134
+ color: #fca5a5;
135
+ }
136
+
65
137
  .wallet-modal-manage-list-arrow {
66
138
  flex-shrink: 0;
67
139
  opacity: 0.5;
68
140
  }
69
141
 
142
+ .wallet-modal-mfa-disable-trigger {
143
+ display: inline-flex;
144
+ align-items: center;
145
+ justify-content: center;
146
+ width: 22px;
147
+ height: 22px;
148
+ margin-right: 8px;
149
+ border-radius: 999px;
150
+ color: #ef4444;
151
+ opacity: 0.95;
152
+ cursor: pointer;
153
+ transition: transform 0.15s ease, opacity 0.15s ease, background-color 0.15s ease;
154
+ }
155
+
156
+ .wallet-modal-mfa-disable-trigger:hover {
157
+ opacity: 1;
158
+ transform: scale(1.05);
159
+ }
160
+
161
+ .wallet-modal-theme-dark .wallet-modal-mfa-disable-trigger:hover {
162
+ background-color: rgba(239, 68, 68, 0.16);
163
+ }
164
+
165
+ .wallet-modal-theme-light .wallet-modal-mfa-disable-trigger:hover {
166
+ background-color: rgba(239, 68, 68, 0.12);
167
+ }
168
+
70
169
  .wallet-modal-manage-toast {
71
170
  position: absolute;
72
171
  left: 50%;
@@ -244,3 +343,1345 @@
244
343
  flex-shrink: 0;
245
344
  opacity: 0.5;
246
345
  }
346
+
347
+ /* Linked Profiles sub-view */
348
+ .wallet-modal-linked-profiles-list {
349
+ display: flex;
350
+ flex-direction: column;
351
+ padding: 0 20px;
352
+ gap: 0;
353
+ }
354
+
355
+ .wallet-modal-linked-profiles-row {
356
+ display: flex;
357
+ align-items: center;
358
+ gap: 12px;
359
+ padding: 16px 0;
360
+ border-bottom: 1px solid;
361
+ min-height: 52px;
362
+ }
363
+
364
+ .wallet-modal-theme-dark .wallet-modal-linked-profiles-row {
365
+ color: #ffffff;
366
+ border-bottom-color: rgba(255, 255, 255, 0.08);
367
+ }
368
+
369
+ .wallet-modal-theme-light .wallet-modal-linked-profiles-row {
370
+ color: #111827;
371
+ border-bottom-color: rgba(17, 24, 39, 0.08);
372
+ }
373
+
374
+ .wallet-modal-linked-profiles-row:last-child {
375
+ border-bottom: none;
376
+ }
377
+
378
+ .wallet-modal-linked-profiles-action {
379
+ flex-shrink: 0;
380
+ display: flex;
381
+ align-items: center;
382
+ gap: 6px;
383
+ }
384
+
385
+ .wallet-modal-linked-connect,
386
+ .wallet-modal-linked-disconnect {
387
+ padding: 6px 12px;
388
+ border-radius: 8px;
389
+ border: none;
390
+ background: transparent;
391
+ cursor: pointer;
392
+ font-size: 13px;
393
+ font-weight: 500;
394
+ /* Consistent, minimal interaction motion */
395
+ transition: color 0.18s ease-out, transform 0.12s ease-out;
396
+ display: inline-flex;
397
+ align-items: center;
398
+ justify-content: center;
399
+ gap: 6px;
400
+ }
401
+
402
+ .wallet-modal-linked-disconnect {
403
+ padding: 8px;
404
+ }
405
+
406
+ .wallet-modal-linked-connect:disabled,
407
+ .wallet-modal-linked-disconnect:disabled {
408
+ opacity: 0.6;
409
+ cursor: not-allowed;
410
+ }
411
+
412
+ .wallet-modal-theme-dark .wallet-modal-linked-connect {
413
+ color: rgba(255, 255, 255, 0.9);
414
+ }
415
+
416
+ .wallet-modal-theme-dark .wallet-modal-linked-connect:hover:not(:disabled) {
417
+ color: #22c55e;
418
+ }
419
+
420
+ .wallet-modal-theme-dark .wallet-modal-linked-connect:active:not(:disabled) {
421
+ transform: translateY(1px);
422
+ }
423
+
424
+ .wallet-modal-theme-light .wallet-modal-linked-connect {
425
+ color: #374151;
426
+ }
427
+
428
+ .wallet-modal-theme-light .wallet-modal-linked-connect:hover:not(:disabled) {
429
+ color: #16a34a;
430
+ }
431
+
432
+ .wallet-modal-theme-light .wallet-modal-linked-connect:active:not(:disabled) {
433
+ transform: translateY(1px);
434
+ }
435
+
436
+ .wallet-modal-theme-dark .wallet-modal-linked-disconnect {
437
+ color: #9ca3af;
438
+ }
439
+
440
+ .wallet-modal-theme-dark .wallet-modal-linked-disconnect:hover:not(:disabled) {
441
+ color: #ef4444;
442
+ }
443
+
444
+ .wallet-modal-theme-dark .wallet-modal-linked-disconnect:active:not(:disabled) {
445
+ transform: translateY(1px);
446
+ }
447
+
448
+ .wallet-modal-theme-light .wallet-modal-linked-disconnect {
449
+ color: #6b7280;
450
+ }
451
+
452
+ .wallet-modal-theme-light .wallet-modal-linked-disconnect:hover:not(:disabled) {
453
+ color: #dc2626;
454
+ }
455
+
456
+ .wallet-modal-theme-light .wallet-modal-linked-disconnect:active:not(:disabled) {
457
+ transform: translateY(1px);
458
+ }
459
+
460
+ .wallet-modal-email-link-flow {
461
+ display: flex;
462
+ flex-direction: column;
463
+ align-items: stretch;
464
+ padding: 16px 20px 20px;
465
+ min-width: 0;
466
+ }
467
+
468
+ .wallet-modal-email-link-form,
469
+ .wallet-modal-email-link-otp {
470
+ width: 100%;
471
+ max-width: 360px;
472
+ margin: 0 auto;
473
+ display: flex;
474
+ flex-direction: column;
475
+ gap: 12px;
476
+ }
477
+
478
+ .wallet-modal-email-link-icon {
479
+ width: 52px;
480
+ height: 52px;
481
+ border-radius: 999px;
482
+ display: flex;
483
+ align-items: center;
484
+ justify-content: center;
485
+ margin: 0 auto 8px;
486
+ }
487
+
488
+ .wallet-modal-theme-dark .wallet-modal-email-link-icon {
489
+ background: rgba(148, 163, 184, 0.16);
490
+ color: #e5e7eb;
491
+ }
492
+
493
+ .wallet-modal-theme-light .wallet-modal-email-link-icon {
494
+ background: rgba(129, 140, 248, 0.16);
495
+ color: #4b5563;
496
+ }
497
+
498
+ .wallet-modal-email-link-title {
499
+ font-size: 18px;
500
+ font-weight: 600;
501
+ text-align: center;
502
+ margin: 4px 0;
503
+ }
504
+
505
+ .wallet-modal-theme-dark .wallet-modal-email-link-title {
506
+ color: #ffffff;
507
+ }
508
+
509
+ .wallet-modal-theme-light .wallet-modal-email-link-title {
510
+ color: #111827;
511
+ }
512
+
513
+ .wallet-modal-email-link-subtitle {
514
+ font-size: 13px;
515
+ text-align: center;
516
+ margin: 0 0 12px;
517
+ }
518
+
519
+ .wallet-modal-theme-dark .wallet-modal-email-link-subtitle {
520
+ color: #9ca3af;
521
+ }
522
+
523
+ .wallet-modal-theme-light .wallet-modal-email-link-subtitle {
524
+ color: #6b7280;
525
+ }
526
+
527
+ .wallet-modal-email-link-label {
528
+ font-size: 13px;
529
+ font-weight: 500;
530
+ margin-bottom: 4px;
531
+ }
532
+
533
+ .wallet-modal-theme-dark .wallet-modal-email-link-label {
534
+ color: #e5e7eb;
535
+ }
536
+
537
+ .wallet-modal-theme-light .wallet-modal-email-link-label {
538
+ color: #374151;
539
+ }
540
+
541
+ .wallet-modal-email-link-input {
542
+ width: 100%;
543
+ border-radius: 10px;
544
+ border: 1.5px solid;
545
+ padding: 10px 12px;
546
+ font-size: 14px;
547
+ outline: none;
548
+ background: transparent;
549
+ box-sizing: border-box;
550
+ }
551
+
552
+ .wallet-modal-theme-dark .wallet-modal-email-link-input {
553
+ border-color: #4b5563;
554
+ background: #111827;
555
+ color: #f9fafb;
556
+ }
557
+
558
+ .wallet-modal-theme-light .wallet-modal-email-link-input {
559
+ border-color: #e5e7eb;
560
+ background: #ffffff;
561
+ color: #111827;
562
+ }
563
+
564
+ .wallet-modal-email-link-input:focus {
565
+ border-color: var(--abstraxn-primary, #3b82f6);
566
+ box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
567
+ }
568
+
569
+ .wallet-modal-email-link-error {
570
+ margin: 4px 0 0;
571
+ font-size: 12px;
572
+ color: #ef4444;
573
+ text-align: left;
574
+ }
575
+
576
+ .wallet-modal-email-link-button {
577
+ margin-top: 8px;
578
+ width: 100%;
579
+ padding: 12px 16px;
580
+ border-radius: 999px;
581
+ border: none;
582
+ font-size: 14px;
583
+ font-weight: 600;
584
+ cursor: pointer;
585
+ transition: all 0.18s ease-out;
586
+ background: var(--abstraxn-primary);
587
+ color: var(--abstraxn-primary-text);
588
+ }
589
+
590
+ .wallet-modal-email-link-button:hover:not(:disabled) {
591
+ transform: translateY(-1px);
592
+ filter: brightness(1.02);
593
+ }
594
+
595
+ .wallet-modal-email-link-button:disabled {
596
+ opacity: 0.6;
597
+ cursor: not-allowed;
598
+ }
599
+
600
+ .wallet-modal-email-link-otp {
601
+ position: relative;
602
+ }
603
+
604
+ .wallet-modal-email-link-otp-back {
605
+ position: absolute;
606
+ top: 0;
607
+ left: 0;
608
+ width: 32px;
609
+ height: 32px;
610
+ display: flex;
611
+ align-items: center;
612
+ justify-content: center;
613
+ border-radius: 999px;
614
+ border: none;
615
+ background: transparent;
616
+ cursor: pointer;
617
+ transition: background 0.15s ease-out, transform 0.1s ease-out;
618
+ }
619
+
620
+ .wallet-modal-theme-dark .wallet-modal-email-link-otp-back {
621
+ color: #9ca3af;
622
+ }
623
+
624
+ .wallet-modal-theme-light .wallet-modal-email-link-otp-back {
625
+ color: #6b7280;
626
+ }
627
+
628
+ .wallet-modal-email-link-otp-back:hover:not(:disabled) {
629
+ transform: translateY(-1px);
630
+ }
631
+
632
+ .wallet-modal-email-link-email {
633
+ font-size: 14px;
634
+ font-weight: 600;
635
+ text-align: center;
636
+ margin: 0 0 16px;
637
+ }
638
+
639
+ .wallet-modal-theme-dark .wallet-modal-email-link-email {
640
+ color: #ffffff;
641
+ }
642
+
643
+ .wallet-modal-theme-light .wallet-modal-email-link-email {
644
+ color: #111827;
645
+ }
646
+
647
+ .wallet-modal-email-link-resend {
648
+ margin-top: 12px;
649
+ font-size: 12px;
650
+ text-align: center;
651
+ }
652
+
653
+ .wallet-modal-theme-dark .wallet-modal-email-link-resend {
654
+ color: #9ca3af;
655
+ }
656
+
657
+ .wallet-modal-theme-light .wallet-modal-email-link-resend {
658
+ color: #6b7280;
659
+ }
660
+
661
+ .wallet-modal-email-link-resend-cooldown {
662
+ font-weight: 500;
663
+ }
664
+
665
+ .wallet-modal-email-link-resend-button {
666
+ border: none;
667
+ background: transparent;
668
+ padding: 0;
669
+ margin: 0;
670
+ font-size: 12px;
671
+ font-weight: 500;
672
+ text-decoration: underline;
673
+ cursor: pointer;
674
+ }
675
+
676
+ .wallet-modal-theme-dark .wallet-modal-email-link-resend-button {
677
+ color: #e5e7eb;
678
+ }
679
+
680
+ .wallet-modal-theme-light .wallet-modal-email-link-resend-button {
681
+ color: #4b21a8;
682
+ }
683
+
684
+ .wallet-modal-linked-profiles-loading,
685
+ .wallet-modal-linked-profiles-error,
686
+ .wallet-modal-linked-profiles-empty {
687
+ padding: 20px 0;
688
+ font-size: 14px;
689
+ text-align: center;
690
+ }
691
+
692
+ .wallet-modal-theme-dark .wallet-modal-linked-profiles-loading,
693
+ .wallet-modal-theme-dark .wallet-modal-linked-profiles-empty {
694
+ color: rgba(255, 255, 255, 0.7);
695
+ }
696
+
697
+ .wallet-modal-theme-light .wallet-modal-linked-profiles-loading,
698
+ .wallet-modal-theme-light .wallet-modal-linked-profiles-empty {
699
+ color: #6b7280;
700
+ }
701
+
702
+ .wallet-modal-theme-dark .wallet-modal-linked-profiles-error {
703
+ color: #f87171;
704
+ }
705
+
706
+ .wallet-modal-theme-light .wallet-modal-linked-profiles-error {
707
+ color: #dc2626;
708
+ }
709
+
710
+ /* Second-layer overlay (separate modals on top of manage modal) */
711
+ .wallet-modal-overlay-layer2 {
712
+ z-index: 110000 !important;
713
+ position: fixed;
714
+ inset: 0;
715
+ display: flex;
716
+ align-items: center;
717
+ justify-content: center;
718
+ padding: 20px;
719
+ background: rgba(0, 0, 0, 0.4);
720
+ border-radius: 0;
721
+ transform: none !important;
722
+ -webkit-transform: none !important;
723
+ }
724
+
725
+ .wallet-modal-overlay-layer2 .wallet-modal-content {
726
+ position: relative;
727
+ z-index: 110001;
728
+ /* Reuse core modal motion for nested dialogs */
729
+ animation: slideUp 0.18s ease-out;
730
+ }
731
+
732
+ /* Unlink confirmation modal - standalone */
733
+ .wallet-modal-unlink-confirm-modal {
734
+ position: relative;
735
+ max-width: 360px;
736
+ width: 100%;
737
+ padding: 24px 20px 20px;
738
+ padding-top: 48px;
739
+ text-align: center;
740
+ box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
741
+ }
742
+
743
+ .wallet-modal-unlink-confirm-close {
744
+ position: absolute;
745
+ top: 16px;
746
+ right: 16px;
747
+ padding: 6px;
748
+ border: none;
749
+ background: transparent;
750
+ cursor: pointer;
751
+ border-radius: 8px;
752
+ color: inherit;
753
+ opacity: 0.7;
754
+ display: flex;
755
+ align-items: center;
756
+ justify-content: center;
757
+ transition: opacity 0.15s ease;
758
+ }
759
+
760
+ .wallet-modal-unlink-confirm-close:hover {
761
+ opacity: 1;
762
+ }
763
+
764
+ .wallet-modal-theme-dark .wallet-modal-unlink-confirm-close {
765
+ color: #e5e7eb;
766
+ }
767
+
768
+ .wallet-modal-theme-light .wallet-modal-unlink-confirm-close {
769
+ color: #374151;
770
+ }
771
+
772
+ /* Unlink confirmation content (shared with inline, keep for modal body) */
773
+ .wallet-modal-unlink-confirm {
774
+ max-width: 400px;
775
+ padding: 24px 20px 20px;
776
+ text-align: center;
777
+ }
778
+
779
+ .wallet-modal-unlink-confirm-icon {
780
+ width: 48px;
781
+ height: 48px;
782
+ margin: 0 auto 16px;
783
+ display: flex;
784
+ align-items: center;
785
+ justify-content: center;
786
+ color: #ef4444;
787
+ }
788
+
789
+ .wallet-modal-unlink-confirm-title {
790
+ font-size: 18px;
791
+ font-weight: 600;
792
+ margin: 0 0 6px;
793
+ }
794
+
795
+ .wallet-modal-theme-dark .wallet-modal-unlink-confirm-title {
796
+ color: #ffffff;
797
+ }
798
+
799
+ .wallet-modal-theme-light .wallet-modal-unlink-confirm-title {
800
+ color: #111827;
801
+ }
802
+
803
+ .wallet-modal-unlink-confirm-subtitle {
804
+ font-size: 14px;
805
+ margin: 0 0 20px;
806
+ opacity: 0.8;
807
+ }
808
+
809
+ .wallet-modal-theme-dark .wallet-modal-unlink-confirm-subtitle {
810
+ color: #9ca3af;
811
+ }
812
+
813
+ .wallet-modal-theme-light .wallet-modal-unlink-confirm-subtitle {
814
+ color: #6b7280;
815
+ }
816
+
817
+ .wallet-modal-unlink-confirm-details {
818
+ padding: 12px 16px;
819
+ border-radius: 10px;
820
+ margin-bottom: 20px;
821
+ text-align: left;
822
+ font-size: 13px;
823
+ }
824
+
825
+ .wallet-modal-theme-dark .wallet-modal-unlink-confirm-details {
826
+ background: rgba(255, 255, 255, 0.06);
827
+ border: 1px solid rgba(255, 255, 255, 0.1);
828
+ color: #e5e7eb;
829
+ }
830
+
831
+ .wallet-modal-theme-light .wallet-modal-unlink-confirm-details {
832
+ background: rgba(17, 24, 39, 0.04);
833
+ border: 1px solid rgba(17, 24, 39, 0.08);
834
+ color: #374151;
835
+ }
836
+
837
+ .wallet-modal-unlink-confirm-details-line {
838
+ margin: 0;
839
+ line-height: 1.5;
840
+ }
841
+
842
+ .wallet-modal-unlink-confirm-btn {
843
+ width: 100%;
844
+ padding: 12px 24px;
845
+ border-radius: 10px;
846
+ border: none;
847
+ font-size: 14px;
848
+ font-weight: 600;
849
+ cursor: pointer;
850
+ background: #ef4444;
851
+ color: #ffffff;
852
+ transition: background 0.2s, transform 0.1s;
853
+ }
854
+
855
+ .wallet-modal-unlink-confirm-btn:hover:not(:disabled) {
856
+ background: #dc2626;
857
+ }
858
+
859
+ .wallet-modal-unlink-confirm-btn:active:not(:disabled) {
860
+ transform: scale(0.98);
861
+ }
862
+
863
+ .wallet-modal-unlink-confirm-btn:disabled {
864
+ opacity: 0.6;
865
+ cursor: not-allowed;
866
+ }
867
+
868
+ .wallet-modal-unlink-confirm-footer {
869
+ margin-top: 20px;
870
+ font-size: 12px;
871
+ opacity: 0.7;
872
+ }
873
+
874
+ .wallet-modal-theme-dark .wallet-modal-unlink-confirm-footer {
875
+ color: #9ca3af;
876
+ }
877
+
878
+ .wallet-modal-theme-light .wallet-modal-unlink-confirm-footer {
879
+ color: #6b7280;
880
+ }
881
+
882
+ /* MFA disable confirm modal: two buttons in a row */
883
+ .wallet-modal-mfa-disable-actions {
884
+ display: flex;
885
+ flex-direction: row;
886
+ gap: 12px;
887
+ justify-content: center;
888
+ margin-top: 20px;
889
+ }
890
+
891
+ .wallet-modal-mfa-disable-actions .wallet-modal-unlink-confirm-btn {
892
+ flex: 1;
893
+ min-width: 0;
894
+ }
895
+
896
+ .wallet-modal-mfa-disable-cancel {
897
+ background: #374151 !important;
898
+ }
899
+
900
+ .wallet-modal-mfa-disable-cancel:hover:not(:disabled) {
901
+ background: #4b5563 !important;
902
+ }
903
+
904
+ /* Success popup modal - standalone */
905
+ .wallet-modal-success-popup-modal {
906
+ position: relative;
907
+ max-width: 340px;
908
+ width: 100%;
909
+ padding: 32px 24px 24px;
910
+ padding-top: 48px;
911
+ text-align: center;
912
+ box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
913
+ }
914
+
915
+ .wallet-modal-success-popup-close {
916
+ position: absolute;
917
+ top: 16px;
918
+ right: 16px;
919
+ padding: 6px;
920
+ border: none;
921
+ background: transparent;
922
+ cursor: pointer;
923
+ border-radius: 8px;
924
+ color: inherit;
925
+ opacity: 0.7;
926
+ display: flex;
927
+ align-items: center;
928
+ justify-content: center;
929
+ transition: opacity 0.15s ease;
930
+ }
931
+
932
+ .wallet-modal-success-popup-close:hover {
933
+ opacity: 1;
934
+ }
935
+
936
+ .wallet-modal-theme-dark .wallet-modal-success-popup-close {
937
+ color: #e5e7eb;
938
+ }
939
+
940
+ .wallet-modal-theme-light .wallet-modal-success-popup-close {
941
+ color: #374151;
942
+ }
943
+
944
+ .wallet-modal-success-popup-btn {
945
+ width: 100%;
946
+ margin-top: 20px;
947
+ padding: 12px 24px;
948
+ border-radius: 10px;
949
+ border: 1px solid;
950
+ font-size: 14px;
951
+ font-weight: 600;
952
+ cursor: pointer;
953
+ transition: background 0.2s, transform 0.1s;
954
+ }
955
+
956
+ .wallet-modal-theme-dark .wallet-modal-success-popup-btn {
957
+ background: rgba(255, 255, 255, 0.08);
958
+ border-color: rgba(255, 255, 255, 0.15);
959
+ color: #e5e7eb;
960
+ }
961
+
962
+ .wallet-modal-theme-light .wallet-modal-success-popup-btn {
963
+ background: #f9fafb;
964
+ border-color: rgba(17, 24, 39, 0.12);
965
+ color: #111827;
966
+ }
967
+
968
+ .wallet-modal-success-popup-btn:hover {
969
+ background: rgba(255, 255, 255, 0.12);
970
+ }
971
+
972
+ .wallet-modal-theme-light .wallet-modal-success-popup-btn:hover {
973
+ background: #f3f4f6;
974
+ }
975
+
976
+ .wallet-modal-success-popup-btn:active {
977
+ transform: scale(0.98);
978
+ }
979
+
980
+ /* Error popup modal (link-auth errors from OAuth redirect) */
981
+ .wallet-modal-error-popup-modal {
982
+ position: relative;
983
+ max-width: 380px;
984
+ width: 100%;
985
+ padding: 32px 24px 24px;
986
+ padding-top: 48px;
987
+ text-align: center;
988
+ box-shadow: 0 10px 25px rgba(0, 0, 0, 0.2);
989
+ }
990
+
991
+ .wallet-modal-error-popup-icon {
992
+ width: 64px;
993
+ height: 64px;
994
+ margin: 0 auto 20px;
995
+ display: flex;
996
+ align-items: center;
997
+ justify-content: center;
998
+ border-radius: 50%;
999
+ }
1000
+
1001
+ .wallet-modal-error-popup-title {
1002
+ font-size: 15px;
1003
+ line-height: 1.45;
1004
+ margin: 0 0 24px;
1005
+ font-weight: 500;
1006
+ word-break: break-word;
1007
+ }
1008
+
1009
+ .wallet-modal-theme-dark .wallet-modal-error-popup-title {
1010
+ color: #e5e7eb;
1011
+ }
1012
+
1013
+ .wallet-modal-theme-light .wallet-modal-error-popup-title {
1014
+ color: #111827;
1015
+ }
1016
+
1017
+ .wallet-modal-error-popup-actions {
1018
+ display: flex;
1019
+ justify-content: center;
1020
+ margin-bottom: 20px;
1021
+ }
1022
+
1023
+ .wallet-modal-error-popup-ok {
1024
+ padding: 12px 32px;
1025
+ border-radius: 9999px;
1026
+ border: none;
1027
+ font-size: 14px;
1028
+ font-weight: 700;
1029
+ letter-spacing: 0.02em;
1030
+ text-transform: uppercase;
1031
+ cursor: pointer;
1032
+ transition: background 0.2s, transform 0.1s;
1033
+ color: #ffffff;
1034
+ }
1035
+
1036
+ .wallet-modal-theme-dark .wallet-modal-error-popup-ok {
1037
+ background: #1f2937;
1038
+ }
1039
+
1040
+ .wallet-modal-theme-light .wallet-modal-error-popup-ok {
1041
+ background: #111827;
1042
+ }
1043
+
1044
+ .wallet-modal-theme-dark .wallet-modal-error-popup-ok:hover {
1045
+ background: #374151;
1046
+ }
1047
+
1048
+ .wallet-modal-theme-light .wallet-modal-error-popup-ok:hover {
1049
+ background: #374151;
1050
+ }
1051
+
1052
+ .wallet-modal-error-popup-ok:active {
1053
+ transform: scale(0.98);
1054
+ }
1055
+
1056
+ .wallet-modal-error-popup-footer {
1057
+ padding-top: 8px;
1058
+ text-align: center;
1059
+ }
1060
+
1061
+ .wallet-modal-theme-dark.wallet-modal-error-popup-footer .onboarding-footer-text {
1062
+ color: #9ca3af;
1063
+ }
1064
+
1065
+ .wallet-modal-theme-light.wallet-modal-error-popup-footer .onboarding-footer-text {
1066
+ color: #6b7280;
1067
+ }
1068
+
1069
+ /* Link/Unlink success popup (inline fallback / shared content) */
1070
+ .wallet-modal-success-popup {
1071
+ max-width: 360px;
1072
+ padding: 32px 24px 20px;
1073
+ text-align: center;
1074
+ }
1075
+
1076
+ .wallet-modal-success-popup-icon {
1077
+ width: 64px;
1078
+ height: 64px;
1079
+ margin: 0 auto 20px;
1080
+ display: flex;
1081
+ align-items: center;
1082
+ justify-content: center;
1083
+ border-radius: 50%;
1084
+ background: #10b981;
1085
+ color: #ffffff;
1086
+ }
1087
+
1088
+ .wallet-modal-success-popup-title {
1089
+ font-size: 18px;
1090
+ font-weight: 600;
1091
+ margin: 0 0 8px;
1092
+ }
1093
+
1094
+ .wallet-modal-theme-dark .wallet-modal-success-popup-title {
1095
+ color: #ffffff;
1096
+ }
1097
+
1098
+ .wallet-modal-theme-light .wallet-modal-success-popup-title {
1099
+ color: #111827;
1100
+ }
1101
+
1102
+ .wallet-modal-success-popup-footer {
1103
+ margin-top: 24px;
1104
+ font-size: 12px;
1105
+ opacity: 0.7;
1106
+ }
1107
+
1108
+ .wallet-modal-theme-dark .wallet-modal-success-popup-footer {
1109
+ color: #9ca3af;
1110
+ }
1111
+
1112
+ .wallet-modal-theme-light .wallet-modal-success-popup-footer {
1113
+ color: #6b7280;
1114
+ }
1115
+
1116
+ /* MFA Redesign Styles */
1117
+ .wallet-modal-manage.mfa-redesign-container {
1118
+ /* max-width: 480px; */
1119
+ width: 100%;
1120
+ padding: 0;
1121
+ border-radius: 24px;
1122
+ overflow: hidden;
1123
+ display: flex;
1124
+ flex-direction: column;
1125
+ gap: 0;
1126
+ }
1127
+
1128
+ .wallet-modal-manage.mfa-redesign-container .wallet-modal-receive-header {
1129
+ padding: 20px;
1130
+ margin-bottom: 0;
1131
+ }
1132
+
1133
+ .mfa-redesign-content {
1134
+ padding: 12px 20px 20px;
1135
+ display: flex;
1136
+ flex-direction: column;
1137
+ gap: 16px;
1138
+ }
1139
+
1140
+ .mfa-info-box {
1141
+ display: flex;
1142
+ gap: 12px;
1143
+ padding: 12px;
1144
+ border-radius: 14px;
1145
+ align-items: center;
1146
+ }
1147
+
1148
+ .wallet-modal-theme-dark .mfa-info-box {
1149
+ background: rgba(255, 255, 255, 0.04);
1150
+ }
1151
+
1152
+ .wallet-modal-theme-light .mfa-info-box {
1153
+ background: rgba(0, 0, 0, 0.03);
1154
+ }
1155
+
1156
+ .mfa-info-icon {
1157
+ width: 40px;
1158
+ height: 40px;
1159
+ border-radius: 10px;
1160
+ background: rgba(255, 255, 255, 0.1);
1161
+ display: flex;
1162
+ align-items: center;
1163
+ justify-content: center;
1164
+ flex-shrink: 0;
1165
+ color: var(--abstraxn-primary, #3b82f6);
1166
+ }
1167
+
1168
+ .mfa-info-text {
1169
+ font-size: 14px;
1170
+ line-height: 1.5;
1171
+ margin: 0;
1172
+ opacity: 0.8;
1173
+ }
1174
+
1175
+ .mfa-status-enabled-box {
1176
+ align-items: flex-start;
1177
+ }
1178
+
1179
+ .mfa-status-enabled-icon {
1180
+ color: #22c55e;
1181
+ }
1182
+
1183
+ .wallet-modal-theme-dark .mfa-status-enabled-icon {
1184
+ background: rgba(34, 197, 94, 0.12);
1185
+ }
1186
+
1187
+ .wallet-modal-theme-light .mfa-status-enabled-icon {
1188
+ background: rgba(34, 197, 94, 0.1);
1189
+ }
1190
+
1191
+ .mfa-status-enabled-copy {
1192
+ display: flex;
1193
+ flex-direction: column;
1194
+ gap: 4px;
1195
+ }
1196
+
1197
+ .mfa-status-enabled-title {
1198
+ margin: 0;
1199
+ font-size: 15px;
1200
+ font-weight: 600;
1201
+ }
1202
+
1203
+ .wallet-modal-theme-dark .mfa-status-enabled-title {
1204
+ color: #e5e7eb;
1205
+ }
1206
+
1207
+ .wallet-modal-theme-light .mfa-status-enabled-title {
1208
+ color: #111827;
1209
+ }
1210
+
1211
+ .wallet-modal-theme-dark .mfa-info-text {
1212
+ color: rgba(255, 255, 255, 0.88);
1213
+ }
1214
+
1215
+ .wallet-modal-theme-light .mfa-info-text {
1216
+ color: #374151;
1217
+ }
1218
+
1219
+ .mfa-qr-container {
1220
+ padding: 18px;
1221
+ border-radius: 20px;
1222
+ border: 1px solid;
1223
+ display: flex;
1224
+ flex-direction: column;
1225
+ align-items: center;
1226
+ gap: 16px;
1227
+ }
1228
+
1229
+ .wallet-modal-theme-dark .mfa-qr-container {
1230
+ border-color: rgba(255, 255, 255, 0.08);
1231
+ }
1232
+
1233
+ .wallet-modal-theme-light .mfa-qr-container {
1234
+ border-color: rgba(0, 0, 0, 0.08);
1235
+ }
1236
+
1237
+ .mfa-qr-wrapper {
1238
+ padding: 16px;
1239
+ background: #ffffff;
1240
+ border-radius: 16px;
1241
+ display: flex;
1242
+ align-items: center;
1243
+ justify-content: center;
1244
+ }
1245
+
1246
+ .mfa-qr-placeholder {
1247
+ width: 100%;
1248
+ min-height: 172px;
1249
+ border-radius: 16px;
1250
+ display: flex;
1251
+ align-items: center;
1252
+ justify-content: center;
1253
+ font-size: 13px;
1254
+ font-weight: 500;
1255
+ padding: 16px;
1256
+ }
1257
+
1258
+ .wallet-modal-theme-dark .mfa-qr-placeholder {
1259
+ background: rgba(255, 255, 255, 0.04);
1260
+ color: rgba(255, 255, 255, 0.7);
1261
+ }
1262
+
1263
+ .wallet-modal-theme-light .mfa-qr-placeholder {
1264
+ background: rgba(0, 0, 0, 0.03);
1265
+ color: #6b7280;
1266
+ }
1267
+
1268
+ .mfa-secret-display {
1269
+ display: flex;
1270
+ align-items: center;
1271
+ gap: 12px;
1272
+ padding: 10px 16px;
1273
+ border-radius: 14px;
1274
+ width: 100%;
1275
+ }
1276
+
1277
+ .wallet-modal-theme-dark .mfa-secret-display {
1278
+ background: rgba(0, 0, 0, 0.3);
1279
+ }
1280
+
1281
+ .wallet-modal-theme-light .mfa-secret-display {
1282
+ background: rgba(0, 0, 0, 0.05);
1283
+ }
1284
+
1285
+ .mfa-secret-key-icon {
1286
+ opacity: 0.5;
1287
+ }
1288
+
1289
+ .wallet-modal-theme-dark .mfa-secret-key-icon {
1290
+ color: rgba(255, 255, 255, 0.78);
1291
+ opacity: 1;
1292
+ }
1293
+
1294
+ .wallet-modal-theme-light .mfa-secret-key-icon {
1295
+ color: #6b7280;
1296
+ opacity: 1;
1297
+ }
1298
+
1299
+ .mfa-secret-code {
1300
+ flex: 1;
1301
+ font-family: "GeistMono", monospace;
1302
+ font-size: 14px;
1303
+ overflow: hidden;
1304
+ text-overflow: ellipsis;
1305
+ white-space: nowrap;
1306
+ letter-spacing: 0.5px;
1307
+ }
1308
+
1309
+ .wallet-modal-theme-dark .mfa-secret-code {
1310
+ color: #f3f4f6;
1311
+ }
1312
+
1313
+ .wallet-modal-theme-light .mfa-secret-code {
1314
+ color: #1f2937;
1315
+ }
1316
+
1317
+ .mfa-secret-copy {
1318
+ background: transparent;
1319
+ border: none;
1320
+ cursor: pointer;
1321
+ padding: 6px;
1322
+ border-radius: 6px;
1323
+ color: inherit;
1324
+ opacity: 0.6;
1325
+ transition: all 0.2s;
1326
+ }
1327
+
1328
+ .wallet-modal-theme-dark .mfa-secret-copy {
1329
+ color: rgba(255, 255, 255, 0.78);
1330
+ opacity: 1;
1331
+ }
1332
+
1333
+ .wallet-modal-theme-light .mfa-secret-copy {
1334
+ color: #4b5563;
1335
+ }
1336
+
1337
+ .mfa-secret-copy:hover {
1338
+ opacity: 1;
1339
+ background: rgba(255, 255, 255, 0.1);
1340
+ }
1341
+
1342
+ .mfa-secret-copy.copied {
1343
+ color: #22c55e;
1344
+ opacity: 1;
1345
+ }
1346
+
1347
+ .mfa-verification-section {
1348
+ display: flex;
1349
+ flex-direction: column;
1350
+ gap: 16px;
1351
+ margin-top: 0;
1352
+ }
1353
+
1354
+ .mfa-divider {
1355
+ display: block;
1356
+ font-size: 14px;
1357
+ font-weight: 500;
1358
+ /* opacity: 0.5; */
1359
+ margin: 0;
1360
+ text-align: left;
1361
+ }
1362
+
1363
+ .wallet-modal-theme-dark .mfa-divider {
1364
+ color: rgba(255, 255, 255, 0.75);
1365
+ }
1366
+
1367
+ .wallet-modal-theme-light .mfa-divider {
1368
+ color: #4b5563;
1369
+ }
1370
+
1371
+ .mfa-otp-grid {
1372
+ display: flex;
1373
+ justify-content: center;
1374
+ gap: 6px;
1375
+ }
1376
+
1377
+ .mfa-otp-slot {
1378
+ display: flex;
1379
+ align-items: center;
1380
+ gap: 0;
1381
+ }
1382
+
1383
+ .mfa-otp-input {
1384
+ width: 50px;
1385
+ height: 55px;
1386
+ border-radius: 14px;
1387
+ border: 1.5px solid;
1388
+ background: transparent;
1389
+ text-align: center;
1390
+ font-size: 24px;
1391
+ font-weight: 700;
1392
+ font-family: "GeistMono", monospace;
1393
+ outline: none;
1394
+ transition: all 0.2s;
1395
+ }
1396
+
1397
+ .wallet-modal-theme-dark .mfa-otp-input {
1398
+ border-color: rgba(255, 255, 255, 0.3);
1399
+ color: #ffffff;
1400
+ }
1401
+
1402
+ .wallet-modal-theme-light .mfa-otp-input {
1403
+ border-color: rgba(0, 0, 0, 0.3);
1404
+ color: #111827;
1405
+ }
1406
+
1407
+ .mfa-otp-input:focus {
1408
+ border-color: var(--abstraxn-primary, #3b82f6);
1409
+ background: rgba(59, 130, 246, 0.05);
1410
+ box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.1);
1411
+ }
1412
+
1413
+ .mfa-otp-dash {
1414
+ font-size: 24px;
1415
+ opacity: 0.3;
1416
+ }
1417
+
1418
+ .mfa-refresh-text {
1419
+ text-align: center;
1420
+ font-size: 13px;
1421
+ opacity: 0.5;
1422
+ margin: 0;
1423
+ }
1424
+
1425
+ .wallet-modal-theme-dark .mfa-refresh-text {
1426
+ color: rgba(255, 255, 255, 0.72);
1427
+ }
1428
+
1429
+ .wallet-modal-theme-light .mfa-refresh-text {
1430
+ color: #6b7280;
1431
+ }
1432
+
1433
+ .mfa-setup-error {
1434
+ font-size: 14px;
1435
+ color: #ef4444;
1436
+ margin: 0;
1437
+ text-align: center;
1438
+ }
1439
+
1440
+ .mfa-verify-button {
1441
+ width: 100%;
1442
+ padding: 18px;
1443
+ border-radius: 18px;
1444
+ border: none;
1445
+ background: var(--abstraxn-primary, #111827);
1446
+ color: var(--abstraxn-primary-text, #ffffff);
1447
+ font-size: 16px;
1448
+ font-weight: 600;
1449
+ cursor: pointer;
1450
+ transition: all 0.2s;
1451
+ }
1452
+
1453
+ .mfa-verify-button:hover:not(:disabled) {
1454
+ transform: translateY(-1px);
1455
+ background: var(--abstraxn-primary-hover, #1f2937);
1456
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
1457
+ }
1458
+
1459
+ .mfa-verify-button:disabled {
1460
+ opacity: 0.5;
1461
+ cursor: not-allowed;
1462
+ }
1463
+
1464
+ .mfa-verify-button.mfa-disable-primary-button {
1465
+ background: #ef4444;
1466
+ color: #ffffff;
1467
+ }
1468
+
1469
+ .mfa-verify-button.mfa-disable-primary-button:hover:not(:disabled) {
1470
+ background: #dc2626;
1471
+ }
1472
+
1473
+ .mfa-trouble-text {
1474
+ text-align: center;
1475
+ font-size: 14px;
1476
+ margin: 0;
1477
+ opacity: 0.7;
1478
+ }
1479
+
1480
+ .wallet-modal-theme-dark .mfa-trouble-text {
1481
+ color: rgba(255, 255, 255, 0.82);
1482
+ }
1483
+
1484
+ .wallet-modal-theme-light .mfa-trouble-text {
1485
+ color: #374151;
1486
+ }
1487
+
1488
+ .mfa-link-button {
1489
+ background: transparent;
1490
+ border: none;
1491
+ color: inherit;
1492
+ font-weight: 600;
1493
+ cursor: pointer;
1494
+ padding: 0;
1495
+ text-decoration: underline;
1496
+ text-underline-offset: 2px;
1497
+ }
1498
+
1499
+ .wallet-modal-theme-dark .mfa-link-button {
1500
+ color: #cbd5e1;
1501
+ }
1502
+
1503
+ .wallet-modal-theme-light .mfa-link-button {
1504
+ color: #080808;
1505
+ }
1506
+
1507
+ .wallet-modal-theme-dark .mfa-link-button:hover {
1508
+ color: #e2e8f0;
1509
+ }
1510
+
1511
+ .wallet-modal-theme-light .mfa-link-button:hover {
1512
+ color: #080808;
1513
+ }
1514
+
1515
+ .mfa-recovery-section {
1516
+ display: flex;
1517
+ flex-direction: column;
1518
+ gap: 14px;
1519
+ margin-top: 8px;
1520
+ }
1521
+
1522
+ .mfa-recovery-grid {
1523
+ display: flex;
1524
+ justify-content: center;
1525
+ flex-wrap: wrap;
1526
+ gap: 6px;
1527
+ }
1528
+
1529
+ .mfa-recovery-input {
1530
+ text-transform: uppercase;
1531
+ }
1532
+
1533
+ .mfa-recovery-field {
1534
+ width: 100%;
1535
+ height: 55px;
1536
+ border-radius: 14px;
1537
+ border: 1.5px solid;
1538
+ background: transparent;
1539
+ text-align: center;
1540
+ font-size: 20px;
1541
+ font-weight: 700;
1542
+ font-family: "GeistMono", monospace;
1543
+ text-transform: uppercase;
1544
+ letter-spacing: 0.16em;
1545
+ outline: none;
1546
+ transition: all 0.2s;
1547
+ box-sizing: border-box;
1548
+ padding: 0 14px;
1549
+ }
1550
+
1551
+ .wallet-modal-theme-dark .mfa-recovery-field {
1552
+ border-color: rgba(255, 255, 255, 0.1);
1553
+ color: #ffffff;
1554
+ }
1555
+
1556
+ .wallet-modal-theme-light .mfa-recovery-field {
1557
+ border-color: rgba(0, 0, 0, 0.1);
1558
+ color: #111827;
1559
+ }
1560
+
1561
+ .mfa-recovery-field:focus {
1562
+ border-color: var(--abstraxn-primary, #3b82f6);
1563
+ background: rgba(59, 130, 246, 0.05);
1564
+ box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.1);
1565
+ }
1566
+
1567
+ .mfa-recovery-field::placeholder {
1568
+ letter-spacing: 0;
1569
+ font-size: 14px;
1570
+ font-weight: 500;
1571
+ font-family: "GeistSans", -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", sans-serif;
1572
+ text-transform: none;
1573
+ }
1574
+
1575
+ .wallet-modal-mfa-backup-list {
1576
+ display: grid;
1577
+ grid-template-columns: repeat(2, 1fr);
1578
+ gap: 10px;
1579
+ margin-bottom: 14px;
1580
+ }
1581
+
1582
+ .wallet-modal-mfa-backup-heading {
1583
+ display: flex;
1584
+ align-items: center;
1585
+ justify-content: space-between;
1586
+ margin-top: 2px;
1587
+ margin-bottom: 10px;
1588
+ }
1589
+
1590
+ .wallet-modal-mfa-backup-heading-label {
1591
+ font-size: 12px;
1592
+ font-weight: 700;
1593
+ letter-spacing: 0.08em;
1594
+ text-transform: uppercase;
1595
+ }
1596
+
1597
+ .wallet-modal-theme-dark .wallet-modal-mfa-backup-heading-label {
1598
+ color: rgba(226, 232, 240, 0.7);
1599
+ }
1600
+
1601
+ .wallet-modal-theme-light .wallet-modal-mfa-backup-heading-label {
1602
+ color: rgba(15, 23, 42, 0.65);
1603
+ }
1604
+
1605
+ .wallet-modal-mfa-backup-code-wrapper {
1606
+ display: flex;
1607
+ align-items: center;
1608
+ justify-content: flex-start;
1609
+ padding: 12px 14px;
1610
+ border-radius: 10px;
1611
+ border: 1px solid;
1612
+ transition: all 0.2s ease;
1613
+ }
1614
+
1615
+ .wallet-modal-theme-dark .wallet-modal-mfa-backup-code-wrapper {
1616
+ background: rgba(15, 23, 42, 0.5);
1617
+ border-color: rgba(148, 163, 184, 0.25);
1618
+ }
1619
+
1620
+ .wallet-modal-theme-light .wallet-modal-mfa-backup-code-wrapper {
1621
+ background: rgba(248, 250, 252, 0.9);
1622
+ border-color: rgba(148, 163, 184, 0.35);
1623
+ }
1624
+
1625
+ .wallet-modal-mfa-backup-code {
1626
+ font-family: "GeistMono", monospace;
1627
+ font-size: 15px;
1628
+ font-weight: 700;
1629
+ letter-spacing: 1px;
1630
+ }
1631
+
1632
+ .wallet-modal-theme-dark .wallet-modal-mfa-backup-code {
1633
+ color: #f9fafb;
1634
+ }
1635
+
1636
+ .wallet-modal-theme-light .wallet-modal-mfa-backup-code {
1637
+ color: #111827;
1638
+ }
1639
+
1640
+ .wallet-modal-mfa-backup-actions {
1641
+ display: flex;
1642
+ gap: 12px;
1643
+ margin-bottom: 12px;
1644
+ }
1645
+
1646
+ .wallet-modal-mfa-backup-action-btn {
1647
+ flex: 1;
1648
+ display: flex;
1649
+ align-items: center;
1650
+ justify-content: center;
1651
+ gap: 10px;
1652
+ padding: 12px 14px;
1653
+ border-radius: 10px;
1654
+ border: 1px solid transparent;
1655
+ font-size: 14px;
1656
+ font-weight: 600;
1657
+ cursor: pointer;
1658
+ transition: all 0.2s ease;
1659
+ }
1660
+
1661
+ .wallet-modal-theme-dark .wallet-modal-mfa-backup-action-btn {
1662
+ background: rgba(30, 41, 59, 0.45);
1663
+ color: rgba(226, 232, 240, 0.95);
1664
+ border-color: rgba(148, 163, 184, 0.28);
1665
+ }
1666
+
1667
+ .wallet-modal-theme-light .wallet-modal-mfa-backup-action-btn {
1668
+ background: rgba(241, 245, 249, 0.95);
1669
+ color: #1f2937;
1670
+ border-color: rgba(148, 163, 184, 0.3);
1671
+ }
1672
+
1673
+ .wallet-modal-mfa-backup-action-btn:hover:not(:disabled) {
1674
+ transform: translateY(-1px);
1675
+ filter: brightness(1.05);
1676
+ }
1677
+
1678
+ .wallet-modal-mfa-backup-action-btn.copied {
1679
+ color: #22c55e;
1680
+ background: rgba(34, 197, 94, 0.1);
1681
+ }
1682
+
1683
+ .wallet-modal-mfa-backup-action-btn:disabled {
1684
+ opacity: 0.6;
1685
+ cursor: not-allowed;
1686
+ transform: none;
1687
+ }