
    /* ====== OTP Verification Independent CSS ====== */
    .otp-verify-wrapper {
      font-family: "Segoe UI", Arial, sans-serif;
      max-width: 420px;
      background: #ffffff;
      border-radius: 14px;
      box-shadow: 0 0 12px rgba(0, 0, 0, 0.1);
      padding: 25px;
      color: #222;
      margin: 10px;
      /* aligns top-left */
    }

    @media (max-width: 768px) {
      .otp-verify-wrapper {
        margin: 20px auto;
        /* center for mobile */
      }
    }

    .otp-verify-wrapper h4 {
      text-align: left;
      margin-bottom: 25px;
      font-size: 20px;
      color: #333;
    }

    .otp-section {
      margin-bottom: 25px;
    }

    .otp-section h6 {
      margin-bottom: 8px;
      font-size: 16px;
      color: #444;
    }

    .otp-input-group {
      display: flex;
      gap: 8px;
    }

    .otp-input-group input {
      flex: 1;
      padding: 10px 12px;
      border: 1px solid #ccc;
      border-radius: 8px;
      font-size: 15px;
      outline: none;
    }

    .otp-input-group input:focus {
      border-color: #007bff;
    }

    .otp-input-group button {
      padding: 10px 16px;
      background-color: #007bff;
      color: white;
      border: none;
      border-radius: 8px;
      font-size: 15px;
      cursor: pointer;
      transition: background 0.3s;
    }

    .otp-input-group button:hover {
      background-color: #0069d9;
    }

    .otp-input-group button:disabled {
      background-color: #ccc;
      cursor: not-allowed;
    }

    .otp-resend-btn {
      background: none;
      border: none;
      color: #007bff;
      cursor: pointer;
      font-size: 14px;
      margin-top: 6px;
      padding: 0;
    }

    .otp-resend-btn:hover {
      text-decoration: underline;
    }

    .otp-msg {
      margin-top: 6px;
      font-size: 14px;
      min-height: 18px;
    }

    .otp-success {
      color: #28a745;
    }

    .otp-error {
      color: #dc3545;
    }

    .otp-divider {
      border-top: 1px solid #eee;
      margin: 20px 0;
    }
