+ {/* OTP Inputs */}
+
+
+
+ {otp.map((digit, index) => (
+ {
+ inputRefs.current[index] = el;
+ }}
+ type="text"
+ inputMode="numeric"
+ maxLength={1}
+ value={digit}
+ onChange={(e) => handleChange(index, e.target.value)}
+ onKeyDown={(e) => handleKeyDown(index, e)}
+ disabled={isLoading}
+ className="w-12 h-12 text-center text-2xl font-bold border-2 border-gray-300 rounded-lg focus:border-indigo-500 focus:ring-2 focus:ring-indigo-500 focus:outline-none disabled:bg-gray-100 disabled:cursor-not-allowed transition-colors"
+ />
+ ))}
+
+
+
+ {/* Error Message */}
+ {error && (
+
+ )}
+
+ {/* Verify Button */}
+
+
+
+
+ {/* Resend Code */}
+
+ {canResend ? (
+
+ ) : (
+
+ Resend code in {countdown}s
+
+ )}
+
+